ricerca di rpms installati dal fornitore


9

Sto cercando di capire la sintassi da utilizzare per cercare rpms installati da un fornitore specifico in Linux. Idealmente stavo solo cercando di utilizzare il rpm -qi grepping per un fornitore specifico, ma non sembra funzionare. Qualcuno ha la sintassi per questa ricerca?


Sto cercando un modo per interrogare rpms installati a cui potrebbero essere associate licenze - ad esempio IBM o Oracle. Quale altro approccio potrei adottare?
lorrie82,

Risposte:


9

È possibile mostrare i pacchetti per fornitore utilizzando un formato di query. Considererei qualcosa del genere, per elencare tutti i pacchetti:

rpm -qa --queryformat '%{vendor}:%{name}\n' | sort > packages.txt

È quindi possibile ispezionare il packages.txtfile, che avrà un aspetto simile a questo, e sarà ordinato dal fornitore:

Codership Oy:galera
Fedora Project:certbot
Fedora Project:clang
Fedora Project:epel-release
...
(none):gpg-pubkey
(none):nginx
...
Red Hat, Inc.:acl
Red Hat, Inc.:aic94xx-firmware
...
Remi Collet:php-cli
Remi Collet:php-common

Oppure puoi solo grepse sai cosa stai cercando.

rpm -qa --queryformat '%{vendor}:%{name}\n' | grep 'Red Hat'

Ma l'interrogazione di rpmdb richiede del tempo, quindi è più veloce scaricare l'intero file in un file e quindi leggere o grepil file.

grep 'Red Hat' packages.txt

Per punti bonus extra, prova il formato di query '%{vendor}:%{name}:%{license}\n'che aggiungerà le informazioni sulla licenza da ciascun RPM.

Red Hat, Inc.:acl:GPLv2+
Red Hat, Inc.:aic94xx-firmware:Redistributable, no modification permitted
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.