Bug 877016

Summary: Error in PREIN scriptlet in rpm package xguest-1.0.9-2.el6.noarch
Product: Red Hat Enterprise Linux 6 Reporter: Milos Malik <mmalik>
Component: xguestAssignee: Miroslav Grepl <mgrepl>
Status: CLOSED ERRATA QA Contact: Stanislav Zidek <szidek>
Severity: high Docs Contact:
Priority: high    
Version: 6.3CC: 18017566925, hannsj_uhl, ksrot, mgrepl, mnavrati, szidek
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: xguest-1.0.9-3.el6 Doc Type: Bug Fix
Doc Text:
Due to a bug in the dependency requirements for the preinstall scriptlet, installing the xguest package failed because of a dependency problem. This update adds the selinux-policy-targeted package to the dependency list, and installing xguest now works as expected.
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-05-26 07:16:55 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 Milos Malik 2012-11-15 14:38:22 UTC
Description of problem:
A lot of beaker jobs aborted because xguest package is installed before selinux-policy-targeted package. Unfortunately preinstall script from xguest package needs targeted policy store. Here are examples:
 * http://beaker-archive.app.eng.bos.redhat.com/beaker-logs/2012/11/3318/331847/703607/install.log
 * http://beaker-archive.app.eng.bos.redhat.com/beaker-logs/2012/11/3318/331834/703585/install.log
 * http://beaker-archive.app.eng.bos.redhat.com/beaker-logs/2012/11/3318/331804/703491/install.log

Version-Release number of selected component (if applicable):
xguest-1.0.9-2.el6.noarch

How reproducible:
always

Steps to Reproduce:
# rpm -qa | grep -e xguest -e selinux-policy
selinux-policy-targeted-3.7.19-179.el6.noarch
selinux-policy-doc-3.7.19-179.el6.noarch
selinux-policy-minimum-3.7.19-179.el6.noarch
selinux-policy-3.7.19-179.el6.noarch
selinux-policy-mls-3.7.19-179.el6.noarch
# rpm -e selinux-policy-targeted
# yum -y install xguest
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package xguest.noarch 0:1.0.9-2.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package       Arch          Version               Repository              Size
================================================================================
Installing:
 xguest        noarch        1.0.9-2.el6           RHEL-6.4-Server         30 k

Transaction Summary
================================================================================
Install       1 Package(s)

Total download size: 30 k
Installed size: 37 k
Downloading Packages:
xguest-1.0.9-2.el6.noarch.rpm                            |  30 kB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Error in PREIN scriptlet in rpm package xguest-1.0.9-2.el6.noarch
error: %pre(xguest-1.0.9-2.el6.noarch) scriptlet failed, exit status 1
error:   install: %pre scriptlet failed (2), skipping xguest-1.0.9-2.el6
  Verifying  : xguest-1.0.9-2.el6.noarch                                    1/1 

Failed:
  xguest.noarch 0:1.0.9-2.el6                                                   

Complete!
#

Comment 1 Milos Malik 2012-11-15 14:44:58 UTC
I have removed selinux-policy-mls, selinux-policy-minimum and selinux-policy-targeted packages from my machine.

# rpm -qa selinux-policy\*
selinux-policy-doc-3.7.19-179.el6.noarch
selinux-policy-3.7.19-179.el6.noarch
#

And I wanted to install xguest package. For unknown reasons yum chose to install selinux-policy-mls package together with xguest. Why selinux-policy-mls ? Why not selinux-policy-targeted ?

# yum install xguest
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package xguest.noarch 0:1.0.9-2.el6 will be installed
--> Processing Dependency: selinux-policy-base for package: xguest-1.0.9-2.el6.noarch
--> Running transaction check
---> Package selinux-policy-mls.noarch 0:3.7.19-179.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package                Arch       Version            Repository           Size
================================================================================
Installing:
 xguest                 noarch     1.0.9-2.el6        RHEL-6.4-Server      30 k
Installing for dependencies:
 selinux-policy-mls     noarch     3.7.19-179.el6     RHEL-6.4-Server     2.3 M

Transaction Summary
================================================================================
Install       2 Package(s)

Total download size: 2.4 M
Installed size: 2.7 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): selinux-policy-mls-3.7.19-179.el6.noarch.rpm      | 2.3 MB     00:00     
(2/2): xguest-1.0.9-2.el6.noarch.rpm                     |  30 kB     00:00     
--------------------------------------------------------------------------------
Total                                            14 MB/s | 2.4 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
  Installing : selinux-policy-mls-3.7.19-179.el6.noarch                     1/2 
Error in PREIN scriptlet in rpm package xguest-1.0.9-2.el6.noarch
error: %pre(xguest-1.0.9-2.el6.noarch) scriptlet failed, exit status 1
error:   install: %pre scriptlet failed (2), skipping xguest-1.0.9-2.el6
  Verifying  : selinux-policy-mls-3.7.19-179.el6.noarch                     1/2 
  Verifying  : xguest-1.0.9-2.el6.noarch                                    2/2 

Dependency Installed:
  selinux-policy-mls.noarch 0:3.7.19-179.el6                                    

Failed:
  xguest.noarch 0:1.0.9-2.el6                                                   

Complete!
#

Comment 2 RHEL Program Management 2012-11-15 14:50:26 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.

Comment 4 Karel Srot 2013-04-24 12:57:10 UTC
I think that the proper fix would require rpm update, fix for bug 760793 in particular.

Comment 8 Miroslav Grepl 2014-02-18 09:19:36 UTC
Ok, I have the following fix

# rpm -Uvh /home/mgrepl/Devel/Build/xguest/noarch/xguest-1.0.9-3.el6.noarch.rpm
error: Failed dependencies:
	selinux-policy-targeted > 3.6.3-12 is needed by xguest-1.0.9-2.el6.noarch

Comment 13 errata-xmlrpc 2014-05-26 07:16:55 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2014-0538.html

Comment 14 Likey 2015-07-30 04:49:47 UTC
I encountered the same problem like:

# rpm -ivh xguest-1.0.9-2.el6.noarch.rpm 
warning: xguest-1.0.9-2.el6.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 1d1e034b: NOKEY
Preparing...                ########################################### [100%]
error: %pre(xguest-1.0.9-5.el6.noarch) scriptlet failed, exit status 1
error:   install: %pre scriptlet failed (2), skipping xguest-1.0.9-2.el6

then I I downloaded the latest package and installed:

# rpm -ivh xguest-1.0.9-5.el6.noarch.rpm 
warning: xguest-1.0.9-5.el6.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 1d1e034b: NOKEY
Preparing...                ########################################### [100%]
error: %pre(xguest-1.0.9-5.el6.noarch) scriptlet failed, exit status 1
error:   install: %pre scriptlet failed (2), skipping xguest-1.0.9-5.el6

I saw these words in the download page:

The xguest package sets up the xguest user which can be used as a temporary account to switch to or as a kiosk user account. These accounts are disabled unless SELinux is in enforcing mode.

I thought if it concerned with the state of selinux,then I checked the state of selinux:

# sestatus
SELinux status:                 disabled

I seted the state of selinux to enforcing and reboot:

# vi /etc/selinux/config 
SELINUX=disabled

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

# init 6

After the operating system started,I reinstalled xguest-1.0.9-2.el6.noarch.rpm:

# yum install xguest
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package xguest.noarch 0:1.0.9-2.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=====================================================================================================================================
 Package                      Arch                         Version                           Repository                         Size
=====================================================================================================================================
Installing:
 xguest                       noarch                       1.0.9-2.el6                       rhel-source                        31 k

Transaction Summary
=====================================================================================================================================
Install       1 Package(s)

Total download size: 31 k
Installed size: 37 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : xguest-1.0.9-2.el6.noarch                                                                                         1/1 
  Verifying  : xguest-1.0.9-2.el6.noarch                                                                                         1/1 

Installed:
  xguest.noarch 0:1.0.9-2.el6                                                                                                        

Complete!

It's OK!