yum update --security fails with missing dependency errors

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 5.1 and later.
  • Red Hat Network (RHN) Hosted.
  • Red Hat Satellite.
  • yum-security-1.0.4-3.el5-noarch and yum-3.2.22-26.el5 or higher

Issue

  • yum update --security fails with missing dependency errors

below is an example;

Error: Unresolvable requirement /etc/pam.d/system-auth for ppp-2.4.4-1.el5.x86_64 (installed) 
Error: Unresolvable requirement libX11-devel for pango-devel-1.14.9-8.el5.x86_64 (installed) 
Error: Unresolvable requirement pam >= 0.66-12 for coreutils-5.97-12.1.el5.x86_64 (installed) 
Error: Unresolvable requirement pam >= 0.66-5 for SysVinit-2.86-14.x86_64 (installed)

Resolution

  • Confirm that latest yum and yum-security packages are installed on system.
# yum update yum
# yum update yum-security
# rm -rf /var/cache/yum/*

Now try to update security patches on system using

# yum update --security 

Root Cause

  • Older version of yum-security packages were installed on system along with latest yum package.
  • Component
  • yum

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

2 Comments

Hi, I'm trying to update security patching using satellite server, but getting error " .....missing requires of....."

i have updated yum (#yum update yum), but # yum update yum-security -- results in No packages available.

rm -rf /var/cache/yum/* --works

And getting same error on # yum update --security

please suggest.

Dont you use Satellite6 with a content view having some filter? There might be a bug in the filtering logic.

Could you compare content of

  • on the client side, list packages in the repo via zgrep "^<location " /var/cache/yum/x86_64/7Server/rhel-7-server-rpms/*-primary.xml.gz (customize this per your problematic repository label)

  • check in /etc/yum.repos.d/redhat.repo the line like below for that repository:

baseurl = https://pmoravec-caps65-rhev.gsslab.brq2.redhat.com/pulp/repos/RedHat/Library/content/dist/rhel/server/7/7Server/$basearch/satellite/6.5/os

  • on Satellite, go to directory /var/lib/pulp/published/yum/https/repos and then to subdirectory taken from the baseurl (subdir below "repos", i.e. here RedHat/Library/content/dist/rhel/......) and list packages there:
zgrep "^<location " repodata/*-primary.xml.gz

If the package is missing on Satellite, then the repository was wrongly published or set up with insufficient content (i.e. due to the CV filters).

If the package is present on Satellite but not on client, then yum failed to fecth repodata (this shall not happen as you cleared repodata and downloaded again).

If the package is present also on the client machine but yum fails to locate it, that would report a different error message (i.e. failed to dowload a package).

So quite probably the Satellite repo lacks the content (anyway it is still worth to confirm it via above procedure). As that can have multiple causes that require investigation beyond this comment, please open a new support case, attach there sosreport and above outputs (together with paths and repo label).