YUM update dependency not found in RHEL7
I'm an issue when using 'yum update' in RHEL7 where if say the 'rpm' rpm needs to update I receive a Not Found message for an unrelated rpm (custom rpm).
The "conflicting" rpm is one that I have created named ejstestdeps-3.2-1.noarch that doesn't contain any files only that it has a dependency on /usr/bin/rpm (as I have other rpms that have this dep). The problem came to light when I attempted to patch the server; I'm going from rpm-4.11.3-17.el7.x86_64 to rpm-4.11.3-21.el7.x86_64 and the output received is:
Loaded plugins: product-id, rhnplugin, search-disabled-repos, subscription-manager
This system is receiving updates from RHN Classic or Red Hat Satellite.
Resolving Dependencies
--> Running transaction check
---> Package rpm.x86_64 0:4.11.3-17.el7 will be updated
--> Processing Dependency: rpm = 4.11.3-17.el7 for package: rpm-libs-4.11.3-17.el7.x86_64
--> Processing Dependency: rpm = 4.11.3-17.el7 for package: rpm-python-4.11.3-17.el7.x86_64
--> Processing Dependency: rpm = 4.11.3-17.el7 for package: rpm-build-4.11.3-17.el7.x86_64
---> Package rpm.x86_64 0:4.11.3-21.el7 will be an update
--> Running transaction check
---> Package rpm-build.x86_64 0:4.11.3-17.el7 will be updated
---> Package rpm-build.x86_64 0:4.11.3-21.el7 will be an update
---> Package rpm-libs.x86_64 0:4.11.3-17.el7 will be updated
--> Processing Dependency: rpm-libs(x86-64) = 4.11.3-17.el7 for package: rpm-build-libs-4.11.3-17.el7.x86_64
---> Package rpm-libs.x86_64 0:4.11.3-21.el7 will be an update
---> Package rpm-python.x86_64 0:4.11.3-17.el7 will be updated
---> Package rpm-python.x86_64 0:4.11.3-21.el7 will be an update
--> Running transaction check
---> Package rpm-build-libs.x86_64 0:4.11.3-17.el7 will be updated
---> Package rpm-build-libs.x86_64 0:4.11.3-21.el7 will be an update
--> Processing Dependency: /usr/bin/rpm for package: ejstestdeps-3.2-1.noarch
--> Finished Dependency Resolution
Error: Package: ejstestdeps-3.2-1.noarch (installed)
Requires: /usr/bin/rpm
Removing: rpm-4.11.3-17.el7.x86_64 (@ej-dev-rhel7-64-201610)
Not found
Updated By: rpm-4.11.3-21.el7.x86_64 (ej-dev-rhel7-64-201701)
Not found
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
For some reason yum is complaining about my ejstestdeps-3.2-1.noarch and it seems to want to remove the old version of rpm. This doesn't only happen for the 'rpm' rpm either b/c we're seeing for lspci, bash, and other commands. This behavior was never experienced on RHEL5/6.
Also using --skip-broken doesn't work nor does excluding the ejstestdeps (test rpm).
I also created another rpm that only requires /bin/bash and the 'rpm' rpm is updated as expected.
I realize the custom rpm should only require rpm and not be fully pathed unfortunately I have many rpms in this state and they all can't be rebuilt.
I'm looking for a solution or workaround or even understanding if this is a bug in RHEL7 yum.
Thank you.
--Ed
Responses
Looks similar to this issue. yum update on Satellite client fails with "Not found" dependency resolution errors
Try clearing repodata on the channel then yum clean all on the RHEL 7 system.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
