Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1412200

Summary: Upgrade of util-linux breaks dependency of spacewalk-dobby
Product: [Community] Spacewalk Reporter: bernhard.lichtinger
Component: InstallationAssignee: Michael Mráka <mmraka>
Status: CLOSED CURRENTRELEASE QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 2.6CC: matt.heller1, mmraka
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: spacewalk-web-2.10.1-1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-03-19 12:16:29 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:
Bug Depends On:    
Bug Blocks: 1802137    

Description bernhard.lichtinger 2017-01-11 14:11:41 UTC
Description of problem:
With RHEL/CentOS 7.3 util-linux will be upgraded from util-linux-2.23.2-26.el7_2.3.x86_64 to util-linux-2.23.2-33.el7.x86_64. But this breaks the dependency of spacewalk-dobby.

Version-Release number of selected component (if applicable):
util-linux-2.23.2-26.el7_2.3.x86_64
util-linux-2.23.2-33.el7.x86_64
spacewalk-dobby-2.6.6-1.el7.noarch

How reproducible:
Everytime I run "yum upgrade"

Steps to Reproduce:
1. run "yum upgrade" on EL 7.2 to get EL 7.3

Actual results:
--> Processing Dependency: /sbin/runuser for package: spacewalk-dobby-2.6.6-1.el7.noarch
--> Finished Dependency Resolution
Error: Package: spacewalk-dobby-2.6.6-1.el7.noarch (spacewalk)
           Requires: /sbin/runuser
           Removing: util-linux-2.23.2-26.el7_2.3.x86_64 (@updates)
               Not found
           Updated By: util-linux-2.23.2-33.el7.x86_64 (base)
               Not found

Expected results:
yum upgrade without conflicts.

Additional info:
The old version has the binary runuser in  /sbin/runuser and in /usr/sbin/runuser. The new version only in /usr/sbin/runuser.
But spacewalk-dobby wants a /sbin/runuser.

Comment 1 bernhard.lichtinger 2017-01-11 16:20:44 UTC
I made a mistake, /sbin/runuser is there with both versions of util-linux.

And I found a solution for the dependency problem:

First update only spacewalk-dobby:
yum update spacewalk-dobby

Then update the rest:
yum update

Comment 2 Matt Heller 2018-01-29 18:54:18 UTC
I hit this same problem but the solution of first updating spacewalk-dobby by itself did not work for me. 

[packages versions spacewalk-dobby.noarch 2.7.6-1.el7 and util-linux.x86_64 2.23.2-43.el7_4.2 in my case]

It seems that the real fix is to either 
 a) change spacewalk-dobby's rpm .spec file to require /usr/sbin/runuser rather than /sbin/runuser (an aside: it looks like the rpm software in RHEL/CentOS 7 is not new enough to support a boolean OR in the "Requires:" field.)
 b) add /sbin/runuser to the "Provides:" section of until-linux's rpm .spec file to declare that it does in fact provide /sbin/runuser via a symbolic link

The workaround that did work for me is to create and install a compatibility shim package:

[root@ ~]# cat runuser-location-compat-dummy.spec
Name:           runuser-location-compat-dummy
Version:        1.0.0
Release:        1%{?dist}
Summary:        Compatibility shim, provides /sbin/runuser 
Group:          dummy
License:        GPL
Requires:       /usr/sbin/runuser
Provides:       /sbin/runuser

%description
Compatibility shim, the util-linux package provides the runuser
command but at /usr/sbin/runuser and the rpm .spec does not
explicitly say it also provides /sbin/runuser via symlinking.
Some packages (spacewalk-dobby) depend on "/sbin/runuser"

%files
[root@ ~]# rpmbuild -bb runuser-location-compat-dummy.spec    ^C
[root@ ~]# yum localinstall /root/rpmbuild/RPMS/x86_64/runuser-location-compat-dummy-1.0.0-1.el7.centos.x86_64.rpm
[root@ ~]# yum upgrade

Comment 3 Michael Mráka 2019-07-04 13:18:56 UTC
Fixed in spacewalk git by
commit 04bcd01867600415fe75f8e5c87343b81712b664
    1412200 - corrected sbin path on RHEL7

Comment 4 Michael Mráka 2020-03-19 12:16:29 UTC
Spacewalk 2.10 has been released.
https://github.com/spacewalkproject/spacewalk/wiki/ReleaseNotes210