Questo è un rapido post su come controllare il fornitore degli rpm installati su un sistema. In alcuni scenari, un pacchetto rpm personalizzato potrebbe non essere compatibile o supportato nel sistema o nell'ambiente specifico. Questo post ti aiuterà a identificare il fornitore di rpm che è di terze parti o non nativo del provider del sistema operativo.
Elenca le informazioni sul fornitore degli RPM
Per elencare tutti gli rpm con le informazioni sul fornitore, utilizza il –queryformat(–qf) opzione.
# rpm -qa --queryformat '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH} %{VENDOR}\n'
Esempio di output:
[root@geeklab ~]# rpm -qa --queryformat '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH} %{VENDOR}\n' python3-pyparted-3.11.0-13.el8.x86_64 CentOS python3-gobject-base-3.28.3-1.el8.x86_64 CentOS libvirt-daemon-driver-secret-4.5.0-42.module_el8.2.0+320+13f867d7.x86_64 CentOS gnome-screenshot-3.26.0-3.el8.x86_64 CentOS fontpackages-filesystem-1.44-22.el8.noarch CentOS libevdev-1.8.0-1.el8.x86_64 CentOS cronie-1.5.2-4.el8.x86_64 CentOS lua-json-1.3.2-9.el8.noarch CentOS mesa-libglapi-19.3.4-2.el8.x86_64 CentOS baobab-3.28.0-4.el8.x86_64 CentOS xkeyboard-config-2.28-1.el8.noarch CentOS ...
Elenca pacchetti di terze parti o non nativi
Per elencare tutti i pacchetti che non sono forniti da CentOS, esegui il comando seguente:
# rpm -qa --qf "%{NAME}-%{VERSION}-%{RELEASE}-%{ARCH} %{VENDOR}\n" | awk '{if($2!="CentOS") print$0;}'
Esempio di output da un server CentOS 8:
[root@geeklab ~]# rpm -qa --qf "%{NAME}-%{VERSION}-%{RELEASE}-%{ARCH} %{VENDOR}\n" | awk '{if($2!="CentOS") print$0;}' gpg-pubkey-8483c65d-5ccc5b19-(none) (none) amazon-ssm-agent-2.3.1644.0-1-x86_64 Amazon.com gpg-pubkey-6963f07f-57fad2ec-(none) (none)
Maggiori informazioni
Se vuoi saperne di più sul pacchetto rpm specifico, potrebbe essere d'aiuto controllando le informazioni sul pacchetto:
1. interrogare gli rpm installati
# rpm -qi [rpm_name]
Ad esempio:
# rpm -qi tree Name : tree Version : 1.7.0 Release : 15.el8 Architecture: x86_64 Install Date: Thu 27 Aug 2020 05:24:23 PM UTC Group : Unspecified Size : 111603 License : GPLv2+ Signature : RSA/SHA256, Tue 02 Jul 2019 01:53:45 AM UTC, Key ID 05b555b38483c65d Source RPM : tree-1.7.0-15.el8.src.rpm Build Date : Sat 11 May 2019 03:54:52 PM UTC Build Host : x86-01.mbox.centos.org Relocations : (not relocatable) Packager : CentOS BuildsysVendor : CentOS URL : http://mama.indstate.edu/users/ice/tree/ Summary : File system tree viewer Description : The tree utility recursively displays the contents of directories in a tree-like format. Tree is basically a UNIX port of the DOS tree utility.
2. interrogare un pacchetto che esiste nella posizione specificata:
# rpm -qpi [rpm_with_absolute_path]
Ad esempio:
# rpm -qpi /tmp/telnet-0.17-73.el8_1.1.x86_64.rpm Name : telnet Epoch : 1 Version : 0.17 Release : 73.el8_1.1 Architecture: x86_64 Install Date: (not installed) Group : Applications/Internet Size : 156776 License : BSD Signature : RSA/SHA256, Mon 13 Apr 2020 06:13:23 PM UTC, Key ID 05b555b38483c65d Source RPM : telnet-0.17-73.el8_1.1.src.rpm Build Date : Mon 13 Apr 2020 05:58:20 PM UTC Build Host : x86-01.mbox.centos.org Relocations : (not relocatable) Packager : CentOS BuildsysVendor : CentOS URL : http://web.archive.org/web/20070819111735/www.hcs.harvard.edu/~dholland/computers/old-netkit.html Summary : The client program for the Telnet remote login protocol Description : Telnet is a popular protocol for logging into remote systems over the Internet. The package provides a command line Telnet client