Bug 2000119

Summary: files /etc/pam.d/password-auth and /etc/pam.d/system-auth conflict when installing pam.i686 and pam.x86_64
Product: [Fedora] Fedora Reporter: Richard W.M. Jones <rjones>
Component: pamAssignee: Iker Pedrosa <ipedrosa>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: besser82, ipedrosa, tm
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-10-01 07:24:46 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Richard W.M. Jones 2021-09-01 12:37:56 UTC
Description of problem:

In order to get 32 bit /usr/lib/libpam.so.0 to run some software
I need to install pam.i686 and pam.x86_64 together.  However that
does not work:

$ sudo dnf install /usr/lib/libpam.so.0
Last metadata expiration check: 2:12:03 ago on Wed 01 Sep 2021 11:21:04 BST.
Dependencies resolved.
================================================================================
 Package           Architecture    Version               Repository        Size
================================================================================
Installing:
 pam               i686            1.5.1-9.fc35          rawhide          562 k
Upgrading:
 libeconf          x86_64          0.4.0-2.fc35          rawhide           27 k
Installing dependencies:
 libeconf          i686            0.4.0-2.fc35          rawhide           29 k

Transaction Summary
================================================================================
Install  2 Packages
Upgrade  1 Package

Total size: 618 k
Is this ok [y/N]: y
Downloading Packages:
[SKIPPED] libeconf-0.4.0-2.fc35.i686.rpm: Already downloaded                   
[SKIPPED] pam-1.5.1-9.fc35.i686.rpm: Already downloaded                        
[SKIPPED] libeconf-0.4.0-2.fc35.x86_64.rpm: Already downloaded                 
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: Transaction test error:
  file /etc/pam.d/password-auth from install of pam-1.5.1-9.fc35.i686 conflicts with file from package pam-1.5.1-5.fc35.x86_64
  file /etc/pam.d/system-auth from install of pam-1.5.1-9.fc35.i686 conflicts with file from package pam-1.5.1-5.fc35.x86_64

Version-Release number of selected component (if applicable):

pam-1.5.1-9.fc35

How reproducible:

100%

Steps to Reproduce:
1. See steps above.


I think you should consider moving the library to a separate
package ("pam-libs") so that it's easier to manage multilib installs.
I believe that even if we fixed the problems above, the binaries
in /usr/sbin would probably conflict too.

Comment 1 Richard W.M. Jones 2021-09-01 12:45:20 UTC
But installing pam-devel.i686 did work, although:

  Upgrading        : pam-1.5.1-9.fc35.x86_64                                2/9 
warning: /etc/pam.d/password-auth created as /etc/pam.d/password-auth.rpmnew
warning: /etc/pam.d/system-auth created as /etc/pam.d/system-auth.rpmnew

That's pretty odd.

Comment 2 Iker Pedrosa 2021-09-01 12:56:09 UTC
This error is very strange indeed. As far as I know all Fedora images contain the pam package and it's very strange that you need to install it, if not, how would you authenticate?

Can you check if pam is already installed before trying to install libpam? A simple "sudo dnf info pam" should be enough.

Comment 3 Richard W.M. Jones 2021-09-01 13:04:54 UTC
Obviously I have PAM installed.  I'm trying to cross-compile some
software that needs the 32 bit (i686) library.

Comment 4 Tomáš Mráz 2021-09-01 14:35:10 UTC
I do not think it would be worth it to split the pam config files. The reason for the conflict is that two different NVRs of pam are being tried to install. I suppose if you do dnf update and only then try to install the i686 packages, it will work fine.

Comment 5 Iker Pedrosa 2021-10-01 07:14:58 UTC
Have you tried Tomas's suggestion?

Comment 6 Richard W.M. Jones 2021-10-01 07:24:46 UTC
As this appears to be another general brokenness with multilib
(that you have to update the x86-64 package first) I will mark
this as working in rawhide.