yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

General support questions
binaryflow
Posts: 7
Joined: 2014/09/26 13:55:20

yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by binaryflow » 2021/12/03 15:02:17

For the last few days I have had two servers fail their regular Yum updates with the following error:

Error: Multilib version problems found. This often means that the root
cause is something else and multilib version checking is just
pointing out that there is a problem. Eg.:

1. You have an upgrade for libsss_idmap which is missing some
dependency that another package requires. Yum is trying to
solve this by installing an older version of libsss_idmap of the
different architecture. If you exclude the bad architecture
yum will tell you what the root cause is (which package
requires what). You can try redoing the upgrade with
--exclude libsss_idmap.otherarch ... this should give you an error
message showing the root cause of the problem.

2. You have multiple architectures of libsss_idmap installed, but
yum can only see an upgrade for one of those architectures.
If you don't want/need both architectures anymore then you
can remove the one with the missing update and everything
will work.

3. You have duplicate versions of libsss_idmap installed already.
You can use "yum check" to get yum show these errors.

...you can also use --setopt=protected_multilib=false to remove
this checking, however this is almost never the correct thing to
do as something else is very likely to go wrong (often causing
much more problems).

Protected multilib versions: libsss_idmap-1.16.5-10.el7_9.11.x86_64 != libsss_idmap-1.16.5-10.el7_9.10.i686
Error: Protected multilib versions: libsss_nss_idmap-1.16.5-10.el7_9.11.x86_64 != libsss_nss_idmap-1.16.5-10.el7_9.10.i686

I found a four-day-old bug report (marked as resolved) that is hidden behind subscriber content here: https://access.redhat.com/solutions/2801851. Has anyone resolved this by chance? Should we wait for another update before running Yum again? I appreciate your help with figuring this out!

User avatar
TrevorH
Site Admin
Posts: 33202
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by TrevorH » 2021/12/03 18:48:23

I'd check your yum config files and see if you've, for example, excluded *.i686 since I can see both x86_64 and i686 versions of that package and both are the same version number.

Code: Select all

[root@centos7 ~]# yum list libsss_idmap
Loaded plugins: priorities
186 packages excluded due to repository priority protections
Installed Packages
libsss_idmap.x86_64                             1.16.5-10.el7_9.11                             @updates
Available Packages
libsss_idmap.i686                               1.16.5-10.el7_9.11                             updates 
The future appears to be RHEL or Debian. I think I'm going Debian.
Info for USB installs on http://wiki.centos.org/HowTos/InstallFromUSBkey
CentOS 5 and 6 are deadest, do not use them.
Use the FAQ Luke

binaryflow
Posts: 7
Joined: 2014/09/26 13:55:20

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by binaryflow » 2021/12/03 20:32:15

Thanks for the suggestion! I didn't see any exclusions in any of my repo files or yum.conf. Here's what I see when I run the same code:

Code: Select all

[user@centos7 ~]$ sudo yum list libsss_idmap
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * epel: epel.mirror.constant.com
 * remi-safe: mirror.bebout.net
Installed Packages
libsss_idmap.x86_64                             1.16.5-10.el7_9.10                               @updates
Available Packages
libsss_idmap.i686                                 1.16.5-10.el7_9.11                               updates 
libsss_idmap.x86_64                             1.16.5-10.el7_9.11                               updates 

User avatar
TrevorH
Site Admin
Posts: 33202
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by TrevorH » 2021/12/03 20:45:00

Available Packages
libsss_idmap.i686 1.16.5-10.el7_9.11 updates
libsss_idmap.x86_64 1.16.5-10.el7_9.11 updates
Those are the package versions you need.
The future appears to be RHEL or Debian. I think I'm going Debian.
Info for USB installs on http://wiki.centos.org/HowTos/InstallFromUSBkey
CentOS 5 and 6 are deadest, do not use them.
Use the FAQ Luke

binaryflow
Posts: 7
Joined: 2014/09/26 13:55:20

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by binaryflow » 2021/12/03 21:12:33

Yeah, I figured that, but I don't know how to get around this yum error. Any thoughts on how to install the packages directly? Would that work?

User avatar
TrevorH
Site Admin
Posts: 33202
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by TrevorH » 2021/12/03 22:00:22

Just yum update now that it lists both correct versions.
The future appears to be RHEL or Debian. I think I'm going Debian.
Info for USB installs on http://wiki.centos.org/HowTos/InstallFromUSBkey
CentOS 5 and 6 are deadest, do not use them.
Use the FAQ Luke

binaryflow
Posts: 7
Joined: 2014/09/26 13:55:20

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by binaryflow » 2021/12/06 20:03:04

Yum update still fails.

Code: Select all

[user@centos7 ~]$ sudo yum update
[sudo] password for user: 
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                                                                                                                          |  16 kB  00:00:00     
 * epel: mirror.facebook.net
 * remi-safe: mirror.bebout.net
base                                                                                                                                                          | 3.1 kB  00:00:00     
extras                                                                                                                                                        | 2.5 kB  00:00:00     
openlogic                                                                                                                                                     | 2.9 kB  00:00:00     
packages-microsoft-com-prod                                                                                                                                   | 3.0 kB  00:00:00     
remi-safe                                                                                                                                                     | 3.0 kB  00:00:00     
updates                                                                                                                                                       | 2.6 kB  00:00:00     
remi-safe/primary_db                                                                                                                                          | 2.1 MB  00:00:00     
Resolving Dependencies
--> Running transaction check
---> Package ImageMagick6-libs.x86_64 0:6.9.12.31-1.el7.remi will be updated
---> Package ImageMagick6-libs.x86_64 0:6.9.12.32-1.el7.remi will be an update
---> Package bash.x86_64 0:4.2.46-34.el7 will be updated
---> Package bash.x86_64 0:4.2.46-35.el7_9 will be an update
---> Package bind-export-libs.x86_64 32:9.11.4-26.P2.el7_9.7 will be updated
---> Package bind-export-libs.x86_64 32:9.11.4-26.P2.el7_9.8 will be an update
---> Package bind-libs.x86_64 32:9.11.4-26.P2.el7_9.7 will be updated
---> Package bind-libs.x86_64 32:9.11.4-26.P2.el7_9.8 will be an update
---> Package bind-libs-lite.x86_64 32:9.11.4-26.P2.el7_9.7 will be updated
---> Package bind-libs-lite.x86_64 32:9.11.4-26.P2.el7_9.8 will be an update
---> Package bind-license.noarch 32:9.11.4-26.P2.el7_9.7 will be updated
---> Package bind-license.noarch 32:9.11.4-26.P2.el7_9.8 will be an update
---> Package bind-utils.x86_64 32:9.11.4-26.P2.el7_9.7 will be updated
---> Package bind-utils.x86_64 32:9.11.4-26.P2.el7_9.8 will be an update
---> Package kbd.x86_64 0:1.15.5-15.el7 will be updated
---> Package kbd.x86_64 0:1.15.5-16.el7_9 will be an update
---> Package kbd-legacy.noarch 0:1.15.5-15.el7 will be updated
---> Package kbd-legacy.noarch 0:1.15.5-16.el7_9 will be an update
---> Package kbd-misc.noarch 0:1.15.5-15.el7 will be updated
---> Package kbd-misc.noarch 0:1.15.5-16.el7_9 will be an update
---> Package kernel.x86_64 0:3.10.0-1160.49.1.el7 will be installed
---> Package kernel-tools.x86_64 0:3.10.0-1160.45.1.el7 will be updated
---> Package kernel-tools.x86_64 0:3.10.0-1160.49.1.el7 will be an update
---> Package kernel-tools-libs.x86_64 0:3.10.0-1160.45.1.el7 will be updated
---> Package kernel-tools-libs.x86_64 0:3.10.0-1160.49.1.el7 will be an update
---> Package libsss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
---> Package libsss_idmap.x86_64 0:1.16.5-10.el7_9.11 will be an update
---> Package libsss_nss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_nss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
---> Package libsss_nss_idmap.x86_64 0:1.16.5-10.el7_9.11 will be an update
---> Package mdadm.x86_64 0:4.1-7.el7_9 will be updated
---> Package mdadm.x86_64 0:4.1-8.el7_9 will be an update
--> Running transaction check
---> Package libsss_idmap.i686 0:1.16.5-10.el7_9.10 will be installed
--> Processing Dependency: libdl.so.2 for package: libsss_idmap-1.16.5-10.el7_9.10.i686
--> Processing Dependency: libc.so.6(GLIBC_2.4) for package: libsss_idmap-1.16.5-10.el7_9.10.i686
---> Package libsss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
---> Package libsss_nss_idmap.i686 0:1.16.5-10.el7_9.10 will be installed
---> Package libsss_nss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
--> Running transaction check
---> Package glibc.i686 0:2.17-325.el7_9 will be installed
--> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.17-325.el7_9.i686
--> Processing Dependency: libfreebl3.so for package: glibc-2.17-325.el7_9.i686
--> Running transaction check
---> Package nss-softokn-freebl.i686 0:3.67.0-3.el7_9 will be installed
--> Finished Dependency Resolution
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-1160.31.1.el7 will be erased
--> Finished Dependency Resolution
Error:  Multilib version problems found. This often means that the root
       cause is something else and multilib version checking is just
       pointing out that there is a problem. Eg.:
       
         1. You have an upgrade for libsss_idmap which is missing some
            dependency that another package requires. Yum is trying to
            solve this by installing an older version of libsss_idmap of the
            different architecture. If you exclude the bad architecture
            yum will tell you what the root cause is (which package
            requires what). You can try redoing the upgrade with
            --exclude libsss_idmap.otherarch ... this should give you an error
            message showing the root cause of the problem.
       
         2. You have multiple architectures of libsss_idmap installed, but
            yum can only see an upgrade for one of those architectures.
            If you don't want/need both architectures anymore then you
            can remove the one with the missing update and everything
            will work.
       
         3. You have duplicate versions of libsss_idmap installed already.
            You can use "yum check" to get yum show these errors.
       
       ...you can also use --setopt=protected_multilib=false to remove
       this checking, however this is almost never the correct thing to
       do as something else is very likely to go wrong (often causing
       much more problems).
       
       Protected multilib versions: libsss_idmap-1.16.5-10.el7_9.11.x86_64 != libsss_idmap-1.16.5-10.el7_9.10.i686
Error: Protected multilib versions: libsss_nss_idmap-1.16.5-10.el7_9.11.x86_64 != libsss_nss_idmap-1.16.5-10.el7_9.10.i686

binaryflow
Posts: 7
Joined: 2014/09/26 13:55:20

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by binaryflow » 2021/12/06 20:26:03

Update: I ran yum update with --exclude for both of the packages that were causing the error condition. This allowed me to install the kernel update and most of the rest of the outstanding packages. Then I tried installing the two packages referenced in the error directly: libsss_idmap-1.16.5-10.el7_9.10.i686 & libsss_nss_idmap-1.16.5-10.el7_9.10.i686. Yum update is still failing but with a different error.

Code: Select all

[user@centos7 ~]$ sudo yum update
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * epel: epel.mirror.constant.com
 * remi-safe: mirror.bebout.net
Resolving Dependencies
--> Running transaction check
---> Package libsss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
---> Package libsss_idmap.x86_64 0:1.16.5-10.el7_9.11 will be an update
---> Package libsss_nss_idmap.i686 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_nss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
---> Package libsss_nss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_nss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
---> Package libsss_nss_idmap.i686 0:1.16.5-10.el7_9.11 will be an update
---> Package libsss_nss_idmap.x86_64 0:1.16.5-10.el7_9.11 will be an update
--> Running transaction check
---> Package libsss_idmap.i686 0:1.16.5-10.el7_9.10 will be installed
---> Package libsss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
---> Package libsss_nss_idmap.i686 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_nss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
---> Package libsss_nss_idmap.x86_64 0:1.16.5-10.el7_9.10 will be updated
--> Processing Dependency: libsss_nss_idmap = 1.16.5-10.el7_9.10 for package: sssd-client-1.16.5-10.el7_9.10.x86_64
--> Finished Dependency Resolution
Error: Package: sssd-client-1.16.5-10.el7_9.10.x86_64 (@updates)
           Requires: libsss_nss_idmap = 1.16.5-10.el7_9.10
           Removing: libsss_nss_idmap-1.16.5-10.el7_9.10.i686 (@updates)
               libsss_nss_idmap = 1.16.5-10.el7_9.10
           Updated By: libsss_nss_idmap-1.16.5-10.el7_9.11.i686 (updates)
               libsss_nss_idmap = 1.16.5-10.el7_9.11
           Available: libsss_nss_idmap-1.16.5-10.el7.i686 (base)
               libsss_nss_idmap = 1.16.5-10.el7
           Available: libsss_nss_idmap-1.16.5-10.el7_9.5.i686 (updates)
               libsss_nss_idmap = 1.16.5-10.el7_9.5
           Available: libsss_nss_idmap-1.16.5-10.el7_9.6.i686 (updates)
               libsss_nss_idmap = 1.16.5-10.el7_9.6
           Available: libsss_nss_idmap-1.16.5-10.el7_9.7.i686 (updates)
               libsss_nss_idmap = 1.16.5-10.el7_9.7
           Available: libsss_nss_idmap-1.16.5-10.el7_9.8.i686 (updates)
               libsss_nss_idmap = 1.16.5-10.el7_9.8
 You could try using --skip-broken to work around the problem

 You could try running: rpm -Va --nofiles --nodigest


redmop
Posts: 1
Joined: 2021/12/06 20:50:21

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by redmop » 2021/12/06 20:52:42

I am having the same issue. It appears that sssd-client-1.16.5-10.el7_9.10.x86_64 is asking for 9.10 and not 9.11 of libsss_*, but the update wants to install libsss_* 9.11. I don't know how to fix this, but that seems to be the cause.

User avatar
TrevorH
Site Admin
Posts: 33202
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: yum fails with Error: Protected multilib versions: package.i686 != package.x86_64

Post by TrevorH » 2021/12/06 22:07:50

It appears that sssd-client-1.16.5-10.el7_9.10.x86_64 is asking for 9.10 and not 9.11 of libsss_*
sssd-client.x86_64 should also be 1.16.5-10.el7_9.11 and is when I list it. In fact all packages listed by yum list sssd\* ought to be version 1.16.5-10.el7_9.11 and are when I list them. If they are not then check any exclude= lines you have in yum config files and/or check your local mirror is up to date.
The future appears to be RHEL or Debian. I think I'm going Debian.
Info for USB installs on http://wiki.centos.org/HowTos/InstallFromUSBkey
CentOS 5 and 6 are deadest, do not use them.
Use the FAQ Luke

Post Reply