[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Issue with rpm -U



Howdy!

After scouring the web for an rpm developers' list, this is the closest
I've found;  If I'm directing this question to the wrong place, please
let me know.

After writing a couple of bugfix release packages for some software the
company I work for writes, I'm putting together instructions for our
customers to upgrade their packages.  I wanted to have them upgrade by
executing an 'rpm -U <package file name>' command, having hoped this
would do approximately the following (with some dependency-checking
built in):

rpm -e <old package version> ; rpm -i <new package version>

The packages I wrote use pre- and post-(un)install scripts.  I had
assumed, therefore, the approximate order in which the (un)installation
tasks to be performed would be:

Execute pre-uninstall script for old package
Remove old package files
Execute post-uninstall script for old package
Execute pre-install script for new package
Install new package files
Execute post-install script for new package

After doing some investigating, however, I was able to discover that
'rpm -U <package file name>' does its tasks in approximately the
following order (using both rpm 3.0.5 and rpm 4.0):

Execute pre-install script for new package
Install new package files
Execute post-install script for new package
Execute pre-uninstall script for old package
Execute post-uninstall script for old package

I'm not sure when/if obsolete/removed files from the old package are
removed in this process.

My question is this:
Is there a good reason (save for backward compatibility) that 'rpm -U'
performs the (un)installation tasks in this order?  Am I the only one
who thinks the current implementation does things rather bass-ackwards? 
(I realize I can circumvent the issue by asking our customers to first
do an 'rpm -e' on the package before doing an 'rpm -i', but IMO this is
a poor workaround and still leaves the 'experienced' admin open to
foobaring his system by doing an 'rpm -U'.)

Help appreciated,
Stephen


-- 
---------------------------------------------------------
Stephen Balukoff
Systems Administrator                   Cylant Technology
Tel. 541 322 5656 x101                  Fax. 541 322 5655





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []