yum update on Red Hat Satellite 5 fails if epel repository is enabled

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 5
  • Red Hat Satellite v5.x

Issue

  • yum update fails with conflicts on different packages.
==========================================================================================================
 Package                     Arch   Version                Repository                                Size
==========================================================================================================
Updating:
 PyPAM                       x86_64 0.5.0-7.el5.1          epel                                      23 k
 bea-stax                    x86_64 1.2.0-0.4.rc1.el5      epel                                     430 k
 bea-stax-api                x86_64 1.2.0-0.4.rc1.el5      epel                                      61 k
 bind                        x86_64 30:9.3.6-4.P1.el5_5.3  rhel-x86_64-server-5                     986 k
 bind-libs                   x86_64 30:9.3.6-4.P1.el5_5.3  rhel-x86_64-server-5                     891 k
 bind-utils                  x86_64 30:9.3.6-4.P1.el5_5.3  rhel-x86_64-server-5                     176 k
 cobbler                     noarch 2.0.9-1.el5            epel                                     546 k
 jabberd                     x86_64 2.2.11-2.el5           epel                                     634 k
 jabberpy                    noarch 0.5-0.17.el5           epel                                      96 k
 jakarta-commons-cli         x86_64 1.0-6jpp_10.el5        epel                                      76 k
 jakarta-commons-io          noarch 1.4-3.el5              epel                                     105 k
 jcommon                     x86_64 1.0.12-4.el5           epel                                     690 k
 jfreechart                  noarch 1.0.10-1.el5           epel                                     1.3 M
 m2crypto                    x86_64 0.16-6.1.el5_5.1       rhel-x86_64-server-5     
...
...
Transaction Check Error:
  file /etc/jabberd/server.pem from install of jabberd-2.2.11-2.el5.x86_64 conflicts with file from package rhn-org-httpd-ssl-key-pair-satellite-1.0-2.noarch
  file /usr/share/man/man3/DateTime::Locale.3pm.gz from install of perl-DateTime-0.41-1.el5.x86_64 conflicts with file from package perl-DateTime-Locale-0.09-10.el5sat.noarch
  file /usr/share/man/man3/DateTime::Locale::Base.3pm.gz from install of perl-DateTime-0.41-1.el5.x86_64 conflicts with file from package perl-DateTime-Locale-0.09-10.el5sat.noarch
  file /usr/share/man/man3/DateTime::LocaleCatalog.3pm.gz from install of perl-DateTime-0.41-1.el5.x86_64 conflicts with file from package perl-DateTime-Locale-0.09-10.el5sat.noarch
  file /usr/share/man/man3/DateTime::TimeZone.3pm.gz from install of perl-DateTime-0.41-1.el5.x86_64 conflicts with file from package perl-DateTime-TimeZone-0.59-8.el5sat.noarch
  file /usr/share/man/man3/DateTime::TimeZone::Floating.3pm.gz from install of perl-DateTime-0.41-1.el5.x86_64 conflicts with file from package perl-DateTime-TimeZone-0.59-8.el5sat.noarch
  file /usr/share/man/man3/DateTime::TimeZone::Local.3pm.gz from install of perl-DateTime-0.41-1.el5.x86_64 conflicts with file from package perl-DateTime-TimeZone-0.59-8.el5sat.noarch
  • yum update fails on dependency issues.
--> Running transaction check---> Package cobbler.noarch 0:2.0.7-23.el6sat will be updated
--> Processing Dependency: cobbler < 2.1 for package: satellite-branding-5.5.0.7-1.el6sat.noarch
---> Package perl-Authen-PAM.x86_64 0:0.16-8.el6 will be installed
--> Finished Dependency Resolution
--> Running transaction check
---> Package cobbler.noarch 0:2.0.7-23.el6sat will be updated
--> Processing Dependency: cobbler < 2.1 for package: satellite-branding-5.5.0.7-1.el6sat.noarch
---> Package kernel.x86_64 0:2.6.32-279.14.1.el6 will be erased
---> Package kernel-devel.x86_64 0:2.6.32-279.14.1.el6 will be erased
--> Finished Dependency Resolution
Error: Package: satellite-branding-5.5.0.7-1.el6sat.noarch (@redhat-rhn-satellite-5.5-server-x86_64-6)
           Requires: cobbler < 2.1
           Removing: cobbler-2.0.7-23.el6sat.noarch (@redhat-rhn-satellite-5.5-server-x86_64-6)
               cobbler = 2.0.7-23.el6sat
           Updated By: cobbler-2.4.0-1.el6.noarch (epel)
               cobbler = 2.4.0-1.el6
           Available: cobbler-2.0.7-21.el6sat.noarch (redhat-rhn-satellite-5.5-server-x86_64-6)
               cobbler = 2.0.7-21.el6sat
  • Cobbler issue
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
cobbler is needed by (installed) satellite-branding-5.5.0.7-1.el5sat.noarch
Complete!
(1, [u'Please report this error in https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%20Linux%205&compon
ent=yum'])

Resolution

  • Remove the conflicting packages and EPEL repository from the system and update it.

  • Disable epel repository from /etc/yum.repos.d/epel.repo

Root Cause

  • Packages are from EPEL repository which is not officially supported by Red Hat.

Diagnostic Steps

  • epel repository is visible in yum update output.
...
Updating:
 PyPAM                       x86_64 0.5.0-7.el5.1          epel                                      23 k
 bea-stax                    x86_64 1.2.0-0.4.rc1.el5      epel                                     430 k
 bea-stax-api                x86_64 1.2.0-0.4.rc1.el5      epel                                      61 k
...
  • epel repository is enabled.
grep epel /etc/yum.repos.d/*.repo
epel.repo:[epel]
epel.repo-name=Extra Packages for Enterprise Linux 6 - $basearch
epel.repo:#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
epel.repo:mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
epel.repo-failovermethod=priority
epel.repo-enabled=1
epel.repo-gpgcheck=1

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

From katello-installer --help:

--foreman-configure-epel-repo If disabled the EPEL repo will not be configured on RedHat family systems. (default: false)

When I enable the rpel-repo in this way, it seems that in this context the Satellite-server itself also belongs to the RedHat family systems, as the epel-repo is also enable for this system and updating doesn't work anymore (as described above).

yum repolist

Loaded plugins: langpacks, product-id, subscription-manager
epel/x86_64/metalink | 25 kB 00:00:00
epel | 4.3 kB 00:00:00
(1/2): epel/x86_64/updateinfo | 349 kB 00:00:00
(2/2): epel/x86_64/primary_db | 3.5 MB 00:00:00
repo id repo name status
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 8,477
...

Better solution is to add yum priorities plugin and set EPEL to a lower priority (higher number) than redhat's repositories, or disable epel (enabled=0) and then enable at the time you want to run a manual update. I find priorities much easier to use, and RH's repositories will be priority over others.