2004-01-14, 07:04 PM
Do you want to extract a file from an rpm package, but don't want to install the whole rpm to get it? Well here is how you do it. I am going to grab htpasswd from the httpd rpm
To find out where the file will get installed if you install the whole package run this command
Code:
rpm -qlp httpd-2.0.40-21.i386.rpm | grep htpasswd
Now that i have /usr/bin/htpasswd as the location I can use rpm2cpio to grab just that file.
Code:
rpm2cpio httpd-2.0.40-21.i386.rpm | cpio -ivd ./usr/bin/htpasswd
That should place a file in ./usr/bin/htpasswd Notice I have a . (period) in front. It will create the usr/bin and then place htpasswd in that dir in whatever dir you are in. So in my example i was in /tmp so all the full path to htpasswd is
/tmp/usr/bin/htpasswd
From there i could move it to /usr/bin and delete /tmp/usr and also the rpm.
another one from J to the Y