Quoting Ciaran Mac Lochlainn <ciaran at meritsolutions.ie>:
> Is it possible to extract a single file from an RPM without installing
> the whole package?
>> I'm asking because one of the machines on site here crashed during a
> package upgrade (of glibc) and one of the libraries is giving errors.
> The library in question is librt.so.1 which is used by RPM itself, and
> now every time I try to use RPM it crashes.
>> I am assuming that if I can extract this file from the package (on
> another machine, I suppose) and copy it in, RPM will then work and I
> would then be able to re-install glibc.
>> The alternative, I suppose, is to install another server with the same
> version of Linux and copy the file from there.
>> Any suggestions?
This might be of assistance
http://www.linux.ie/lists/pipermail/ilug/2003-June/003945.html
If you have a rescue cd you should be able to use what's in that mail to solve
the problem without having to resort to extracting the files from rpms. Note
that at the time I had problems getting the option --dbpath to work correctly so
I had to use symlinks to make sure I updated the correct db.
If you need to extract the file you can using the following
rpm2cpio <package> | cpio -id .<full path to file in rpm>
i.e.
in your case
rpm2cpio <glibc rpm> | cpio -id ./lib/i686/librt.so.1
which will extract /lib/i686/librt.so.1 from the rpm to ./lib/i686/librt.so.1
the following will just extracr the entire contents.
rpm2cpio <glibc rpm> | cpio -id
--
Darragh
"Nothing's foolproof to a sufficently talented fool"
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!