RPM è un Package Manager open source su sistemi operativi simili a Linux (RHEL, CentOS e Fedora). Il comando RPM viene utilizzato per creare, installare, interrogare, verificare, aggiornare e cancellare singoli pacchetti software. L'utilità RPM funziona solo con i pacchetti basati sul formato .rpm. Un file RPM contiene non solo i file del software, ma anche informazioni approfondite sul software, ad esempio come si chiama, quando è stato rilasciato, quali modifiche sono state apportate e da quali altri pacchetti dipende il funzionamento.
Il database RPM locale è mantenuto in /var/lib/rpm . Il database memorizza informazioni sui pacchetti installati come attributi di file e prerequisiti del pacchetto.
Formato file RPM:
name-version-release.architecture.rpm
Dove versione si riferisce alla versione open source del progetto, mentre il rilascio si riferisce alle patch interne di Red Hat al codice open source. L'architettura mostra le informazioni sull'architettura (32 bit o 64 bit). rpm è un backend per altri programmi come yum o system-config-packages. Questi strumenti offrono vantaggi significativi come la risoluzione automatica delle dipendenze.
Sintassi:
# rpm [options] [rpmfile]
Opzioni RPM primarie:
- Installa :rpm -i, –installa
- Aggiorna :rpm -U, –aggiornamento
- Rinfresca :rpm -F, –freshen
- Cancella :rpm -e, –cancella
- Richiesta :rpm -q, –query
- opzioni di output :-v, -h
Esempio 1 :Installazione del pacchetto RPM.
# rpm -ivh vim-enhanced-7.2.411-1.8.el6.x86_64.rpm Preparing... ########################################### [100%] 1:vim-enhanced ########################################### [100%]
Dove:
-i :installa un pacchetto
-v :output dettagliato
-h :stampa gli hash mark quando l'archivio del pacchetto viene decompresso.
Esempio 2 :Installazione di pacchetti rpm senza dipendenze.
# rpm -ivh --nodeps vim-enhanced-7.2.411-1.8.el6.x86_64.rpm
Esempio 3 :Rimuovi/cancella pacchetto rpm.
# rpm -ev vim-enhanced
Esempio 4 :Aggiorna il pacchetto RPM utilizzando le opzioni -U e -F.
rpm può essere utilizzato per aggiornare il software già installato con -U (–upgrade) opzione della riga di comando, durante l'aggiornamento, il pacchetto originale (ad eccezione dei file di configurazione) sul sistema verrà rimosso e verrà installato un nuovo pacchetto. I file di configurazione dell'installazione originale vengono salvati con estensione ".rpmsave".
L'aggiornamento è quasi identico all'aggiornamento, tranne quando il pacchetto specificato nella riga di comando non è già installato sul sistema. Durante l'aggiornamento con -U, il pacchetto verrà installato indipendentemente dal fatto che sia già installato o meno. Ma in caso di aggiornamento, il pacchetto verrà ignorato se non è già installato.
Sintassi:
# rpm -Uvh [rpm-file]
Esempio:
# rpm -Uvh mozilla-mail-1.7.6-12.i586.rpm
Sintassi:
# rpm -Fvh [rpm-file]
Esempio:
# rpm -Fvh mozilla-mail-1.7.6-12.i586.rpm
Esempio 5 :Visualizza tutti i pacchetti installati.
# rpm -qa # rpm -qa | less
Esempio 6 :Visualizza l'elenco dei file di configurazione per un pacchetto.
Sintassi:
# rpm -qc [package-name]
Esempio 7 :Scopri a quale pacchetto appartiene un file OPPURE trova a quale pacchetto appartiene il file.
# rpm -qf [/path/to/file]
Esempio 8 :Visualizza le informazioni del pacchetto installato:versione e descrizione.
# rpm -qi [package name]
Esempio 9 :Visualizza l'elenco di tutti gli RPM installati di recente.
# rpm -qa --last # rpm -qa --last | less
Esempio 10 :controlla le dipendenze di un file rpm prima dell'installazione.
# rpm -qpR [.rpm-file]
dove:
-q :interroga un pacchetto.
-p :elenca le funzionalità fornite da questo pacchetto.
-R :elenca le funzionalità da cui dipende questo pacchetto.
Esempio 11 :Verifica di un pacchetto RPM.
Verificare un pacchetto significa confrontare le informazioni dei file installati del pacchetto con il database rpm. Il -Vp (verifica pacchetto) viene utilizzato per verificare un pacchetto.
# rpm -Vp vim-enhanced-7.2.411-1.8.el6.x86_64.rpm
Per verificare tutti i pacchetti rpm:
# rpm -Va
Esempio 12 :Importa chiavi GPG RPM.
Per verificare i pacchetti rpm RHEL/CentOS, devi prima importare la chiave GPG, per importare la chiave usa il comando seguente. Importerà la chiave GPG di CentOS 6.
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6