Bug 2649

Summary: Kickstart post-install locks rpm database
Product: [Retired] Red Hat Linux Reporter: adam
Component: installerAssignee: Matt Wilson <msw>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 6.0CC: pahe+redhat-bugzilla
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 1999-07-15 22:17:36 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description adam 1999-05-08 04:44:50 UTC
When doing a kickstart install in 6.0, if you have other
rpm's to install during the post-install section of the
kickstart, rpm fails stating "Cannot get exclusive lock".

Comment 1 David Lawrence 1999-05-10 20:18:59 UTC
I was unable to replicate this problem on a test lab machine.

Comment 2 adam 1999-05-11 00:55:59 UTC
After further testing, the problem only occurs if you do not install
any part of the X-Windows system.  In the %packages section of the
kickstart, try this:

%packages
@ Base

In the %post section, have it mount an nfs point, and install an RPM
from there.  Something like the following:

%post
echo "Kickstart-installed Red Hat Linux `/bin/date`" > /etc/motd
mkdir /mnt/archive
/bin/mount 162.42.150.60:/home/archive /mnt/archive
cd /mnt/archive/build/qmail/RPMS
rpm -Uvh ucspi-tcp-0.84-1.i386.rpm

Will do nicely.  The error will occur because install2 will try and
open the rpm database so that Xconfigurator can install the X server
RPMS (I assume), but when it cannot run /usr/X11R6/bin/Xconfigurator
it dies, and fails to close the RPM database.  It then runs the
kickstart post install as normal, and leaves the RPM database locked.

You can double check that this is the cause by changing the %packages
section to look like this:

%packages
@ Base
@ X Window System

Leaving the %post section the same.  All will be well with the world.
:)

Adam

Comment 3 adam 1999-05-11 03:08:59 UTC
Problem exists between keyboard and user... try adding skipx yes
instead of a fake xconfig line (5.2) and life will be happy again.

;P

Sorry, I'm a schmoe. (I can admit it, though.  That counts for
something, right?  Right?)

Adam

Comment 4 David Lawrence 1999-05-14 20:30:59 UTC
the line skipx is different for 6.0 than 5.2. Nevertheless when
Xconfigurator fails it should not hold the rpm database open. I am
assigning this to a developer for further review.

Comment 5 Jay Turner 1999-07-07 16:26:59 UTC
*** Bug 3021 has been marked as a duplicate of this bug. ***

In the file misc/src/install/doit.c the function will return
without closing the RPM database if Xconfigurator is not
installed.

This is a problem as the installation process continues, but
it is impossible to install RPMS in a kickstart post script.

WORKAROUND: make sure that Xconfigurator is installed

FIX:  close RPM database before returning from setupXfree()

Comment 6 Bill Nottingham 1999-07-15 22:17:59 UTC
this will be fixed in the next installer release.