Re: RPM pre/post/pre-un/post-un and behavior of $1

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

 



On Mon, 16 Aug 2010, Amol P wrote:

Hi all,
Please have a look of RPM installation output when carried out for two
diff version one after the another. The Installed version is obtained by
"rpm -qa | grep mypkg" to check the version which got installed after any
rpm -i/-U comand.

--------------------------------------------------------------------------------
----------
#1 rpm -Uvh mypkg-2010.05.1.18.noarch.rpm
-PRE-IN:$1=1
-POST-IN:1=1 
-Installed Version: mypkg-2010.05.1.18.noarch 
--------------------------------------------------------------------------------
----------
#2 rpm -Uvh mypkg-2010.05.2.2.noarch.rpm
- PRE-IN:$1=2  
- POST-IN:$1=2  
- PRE-UN:$1=1  
- POST-UN:$1=1  
- Installed Version: mypkg-2010.05.2.2.noarch
--------------------------------------------------------------------------------
----------
#3 rpm -Uvh mypkg-2010.05.2.2.noarch.rpm --force
- PRE-IN:$1=2  
- POST-IN:$1=2  
- Installed Version: mypkg-2010.05.2.2.noarch
--------------------------------------------------------------------------------
----------
#4 rpm -ivh mypkg-2010.05.1.18.noarch.rpm --force
- PRE-IN:$1=2  
- POST-IN:$1=2  
- Installed Version: mypkg-2010.05.1.18.noarch, mypkg-2010.05.2.2.noarch
--------------------------------------------------------------------------------
----------
#5 rpm -ivh mypkg-2010.05.2.2.noarch.rpm --force
- PRE-IN:$1=3  
- POST-IN:$1=3  
- Installed Version: mypkg-2010.05.1.18.noarch, mypkg-2010.05.2.2.noarch
--------------------------------------------------------------------------------
----------

In observation #4, why both versions are in RPM database. Any other way
by which we can remove the higher version package when we are trying to
install/update the lower version package

Because you're installing, not upgrading. Rpm permits several versions of a single package to be installed simultaneously if you install instead of upgrading (typically used for the kernel package).

In observation #5, a new player comes in $1=3. Is it new feature or
some strange.

It's basically an artifact of using --force.

Also, how to remove the newer package & its installed stuff, when I am
trying to install/update a LOWER version package forcefully. Is it
possible or some tweaking required?

If you're using rpm cli to do the job, you can use --oldpackage to tell rpm to downgrade:

[root@dhcp102 noarch]# rpm -Uvh foo-0.2-1.noarch.rpm
Preparing... ########################################### [100%] 1:foo ########################################### [100%]
[root@dhcp102 noarch]# rpm -q foo
foo-0.2-1.noarch
[root@dhcp102 noarch]# rpm -Uvh --oldpackage foo-0.1-1.noarch.rpm
Preparing... ########################################### [100%] 1:foo ########################################### [100%]
[root@dhcp102 noarch]# rpm -q foo
foo-0.1-1.noarch

The more generic answer though: use an epoch to override the normal version comparsion, making the older package "win" the version comparison, so regular update without special cli-switches will work.

	- Panu -
_______________________________________________
Rpm-list mailing list
Rpm-list@xxxxxxxxxxxxx
http://lists.rpm.org/mailman/listinfo/rpm-list



[Index of Archives]     [RPM Ecosystem]     [Linux Kernel]     [Red Hat Install]     [PAM]     [Red Hat Watch]     [Red Hat Development]     [Red Hat]     [Gimp]     [Yosemite News]     [IETF Discussion]

  Powered by Linux