Installing a single file from an RPM into a system running SELinux

inode0 inode0 at gmail.com
Sun May 12 14:14:22 UTC 2013


On Sun, May 12, 2013 at 8:32 AM, Michael Schwendt <mschwendt at gmail.com> wrote:
> On Sat, 11 May 2013 15:07:04 -0700, Jonathan Ryshpan wrote:
>
>> On Sat, 2013-05-11 at 14:16 -0700, Joe Zeff wrote:
>> > On 05/11/2013 01:40 PM, Jonathan Ryshpan wrote:
>> > > I need to install a single file from an RPM, namely
>> > >
>> > >   * RPM gnome-keyring-3.6.3-1.fc18.i686
>> > >   * File: /usr/lib/pkcs11/gnome-keyring-pkcs11.so
>> >
>> > The first thing you need to do is RTFM:
>> >
>> > rpm -i gnome-keyring-3.6.3-1.fc18.i686 -f gnome-keyring-pkcs11.so
>> >
>> > should do the trick.  (Please note that I haven't actually done this,
>> > but man rpm tells me that it will work and I presume that whoever wrote
>> > that knew what they were doing.)
>>
>> If only.  The -f option applies only to queries,
>
> Not true.

Seems to only apply to querying and verifying packages at least
according to the man page for rpm and rpm --help.

>> eg.
>>         $ rpm -qf /usr/lib64/pkcs11/gnome-keyring-pkcs11.so
>>         gnome-keyring-3.6.3-1.fc18.x86_64
>> to discover which rpm provides the specified file.
>>
>> Just to make sure, I tried the following, adding a ".rpm" in case of a
>> typo.
>>         $ rpm -i gnome-keyring-3.6.3-1.fc18.i686 -f gnome-keyring-pkcs11.so
>>         error: gnome-keyring-3.6.3-1.fc18.i686: not an rpm package (or package manifest):
>>         error: open of gnome-keyring-pkcs11.so failed: No such file or directory
>>         $ rpm -i gnome-keyring-3.6.3-1.fc18.i686.rpm -f gnome-keyring-pkcs11.so
>>         error: open of gnome-keyring-pkcs11.so failed: No such file or directory
>>
>
> Well, obviously the RPM package to install must be available as a local
> file. The "No such fule or directory" error message should be clear in this
> regard.
>
> Back to option -f, it's a list of packages when used with e.g. -i,
> so you can do stuff like
>
>   rpm -if /example/list.txt
>
> with "list.txt" containing a list of package file names.

I think the -f is being ignored in this case. The PACKAGE_FILE can be
a manifest as you describe and the command given above works just the
same without the -f.

John


More information about the users mailing list