La comanda rpm a Linux: instal·lar, consultar i verificar paquets RPM
rpm (RPM Package Manager, abans Red Hat Package Manager) és l’eina de baix nivell per instal·lar, actualitzar, esborrar i consultar paquets .rpm a Red Hat Enterprise Linux, Fedora, Rocky Linux, AlmaLinux, CentOS Stream, openSUSE i derivades. Manté la base de dades de tot el que hi ha instal·lat al sistema.
La diferència clau amb dnf (abans yum) és que rpm no resol dependències ni descarrega res: treballa amb fitxers .rpm que ja tens i amb la base de dades local. Per instal·lar i actualitzar programes, el dia a dia es fa amb dnf; rpm és imprescindible per consultar què hi ha instal·lat i d’on surt cada fitxer.
Sintaxi
rpm [mode] [opcions] paquet... Modes principals
| Mode | Què fa |
|---|---|
-i | Instal·la un paquet nou (fitxer .rpm) |
-U | Actualitza un paquet, o l’instal·la si no hi és |
-F | Actualitza només si ja està instal·lat (freshen) |
-e | Esborra (desinstal·la) un paquet |
-q | Consulta la base de dades (amb submodes, vegeu més avall) |
-V | Verifica que els fitxers d’un paquet no hagin canviat |
-K | Comprova les signatures i sumes de verificació d’un fitxer .rpm |
Opcions més útils
| Opció | Què fa |
|---|---|
-v | Mostra més informació |
-h | Mostra una barra de progrés amb # (es fa servir sempre amb -v: -ivh, -Uvh) |
--test | Simula l’operació sense fer-la |
-a | Amb -q o -V: tots els paquets instal·lats |
-p | Amb -q: consulta un fitxer .rpm en lloc d’un paquet instal·lat |
-f fitxer | Amb -q: quin paquet ha instal·lat aquest fitxer |
-i, -l, -c, -d, -R | Amb -q: informació, llista de fitxers, de configuració, de documentació, dependències |
--last | Amb -qa: ordena per data d’instal·lació, els més recents primer |
Consultar paquets instal·lats
Si un paquet és instal·lat, i quina versió:
$ rpm -q bash
bash-5.1.8-9.el9.aarch64
$ rpm -q httpd
package httpd is not installed Informació detallada:
$ rpm -qi bash
Name : bash
Version : 5.1.8
Release : 9.el9
Architecture: aarch64
Install Date: Mon May 25 20:13:49 2026
Size : 7716567
License : GPLv3+
Signature : RSA/SHA256, Tue Apr 30 11:39:20 2024, Key ID 702d426d350d275d
...
Summary : The GNU Bourne Again shell Quins fitxers instal·la un paquet, i només els de configuració:
rpm -ql bash
rpm -qc bash Quin paquet ha instal·lat un fitxer (molt útil per saber d’on surt una comanda):
$ rpm -qf /usr/bin/ls
coreutils-single-8.32-40.el9.aarch64 Els últims paquets instal·lats o actualitzats:
$ rpm -qa --last | head -3
gpg-pubkey-350d275d-6279464b Mon May 25 20:13:59 2026
rootfiles-8.1-35.el9.noarch Mon May 25 20:13:55 2026
less-590-6.el9.aarch64 Mon May 25 20:13:55 2026 Tens més consultes (dependències, mides, format personalitzat…) a la fitxa consultar paquets amb rpm.
Consultar un fitxer .rpm abans d’instal·lar-lo
Amb -p consultes el fitxer en lloc de la base de dades:
$ rpm -qpi tree-1.8.0-10.el9.aarch64.rpm
Name : tree
Version : 1.8.0
...
$ rpm -qpl tree-1.8.0-10.el9.aarch64.rpm
/usr/bin/tree
... I comprovar-ne la signatura i la integritat:
$ rpm -K tree-1.8.0-10.el9.aarch64.rpm
tree-1.8.0-10.el9.aarch64.rpm: digests signatures OK Instal·lar, actualitzar i esborrar
sudo rpm -ivh tree-1.8.0-10.el9.aarch64.rpm
Verifying... ########################################
Preparing... ########################################
Updating / installing...
tree-1.8.0-10.el9 ######################################## Si el paquet necessita altres paquets que no tens, rpm s’atura i t’ho diu:
$ sudo rpm -ivh httpd-2.4.62-13.el9_8.6.aarch64.rpm
error: Failed dependencies:
httpd-core = 0:2.4.62-13.el9_8.6 is needed by httpd-2.4.62-13.el9_8.6.aarch64
libbrotlienc.so.1()(64bit) is needed by httpd-2.4.62-13.el9_8.6.aarch64
system-logos-httpd is needed by httpd-2.4.62-13.el9_8.6.aarch64
systemd is needed by httpd-2.4.62-13.el9_8.6.aarch64 Per això, fins i tot per a un .rpm descarregat, és millor fer servir dnf, que busca les dependències als repositoris:
sudo dnf install ./httpd-2.4.62-13.el9_8.6.aarch64.rpm Actualitzar (o instal·lar si no hi és):
sudo rpm -Uvh paquet-2.0-1.el9.x86_64.rpm Esborrar (pel nom del paquet, no del fitxer):
sudo rpm -e tree Si un altre paquet en depèn, rpm -e es nega i et diu quin. Abans d’esborrar res, pots simular-ho amb --test.
Verificar paquets instal·lats
-V compara els fitxers del disc amb la base de dades i només mostra el que ha canviat:
$ rpm -V setup
missing c /run/motd
missing /run/motd.d Cada lletra indica què és diferent: S mida, 5 contingut (suma), M permisos, U propietari, G grup, T data… La c marca els fitxers de configuració, que és normal que canviïn. rpm -Va revisa tots els paquets: és lent, però útil si sospites que algú ha modificat binaris del sistema.
Claus de signatura
# Importar una clau (en general ho fa dnf en instal·lar el paquet *-release)
sudo rpm --import https://exemple.com/RPM-GPG-KEY
# Veure les claus importades
rpm -qa gpg-pubkey* Compte amb…
--nodepsi--force: et deixen instal·lar o esborrar saltant-te les comprovacions, i és la manera més ràpida de trencar un sistema. Si necessites aquestes opcions, gairebé sempre hi ha una manera millor de fer-ho ambdnf.- Nuclis: no facis
rpm -Uvhd’un paquetkernel, que substituiria el nucli que funciona. Els nuclis s’instal·len en paral·lel (dnfja ho fa bé). - Barrejar
rpmidnfés correcte (comparteixen la base de dades), peròdnfavisa si algú ha tocat la base de dades per fora.
Comandes relacionades
yumidnf: el gestor de paquets d’alt nivell, que resol dependències.- Consultar paquets amb rpm: més consultes i formats de sortida.
rpm -qa | grep httpd: saber si hi ha un paquet instal·lat.rpm -q --whatrequires: qui depèn d’un paquet.rpm2cpio: extreure fitxers d’un.rpmsense instal·lar-lo.rpmbuild --rebuild: recompilar un paquet de codi font.dpkg: l’equivalent a Debian i Ubuntu.- La gestió de paquets a Linux: visió general.
Esta web usa cookies.