Comando YUM per gestire i pacchetti su sistemi RHEL / CentOS / OL

I gestori di pacchetti Linux rendono la vita dell’amministratore molto più semplice occupandosi della risoluzione delle dipendenze.

Yum (Yellowdog Updater Modified) è uno dei gestori di pacchetti, che viene utilizzato in sistemi basati su RPM come RHL, CentOS e Oracle Linux.

Ma a partire da RHEL 8/CentOS 8/OL 8 utilizza DNF sul retro di yum.

Che cosa è YUM?

Yum è un’applicazione di gestione dei pacchetti a riga di comando gratuita e open source per sistemi operativi Linux che utilizza il gestore pacchetti RPM.

Yum è uno strumento front-end per rpm che risolve automaticamente le dipendenze per i pacchetti.

Installa pacchetti software RPM da repository ufficiali di distribuzione e altri repository di terze parti.

Yum consente di installare, aggiornare, cercare e rimuovere i pacchetti dal sistema.

Se si desidera mantenere il sistema aggiornato, è possibile abilitare gli aggiornamenti automatici tramite yum-cron.

Inoltre, consente di escludere uno o più pacchetti dall’aggiornamento yum se necessario.

Ogni distribuzione Linux ha il proprio gestore di pacchetti, controlla il seguente link per controllarli tutti.

Yum è installato di default e non è necessario installarlo.

La sintassi generale del comando YUM

La sintassi del comando YUM come segue.

yum 

Posizione dei file di configurazione YUM

2) Come elencare i repository su CentOS/RHEL/Oracle Linux Usando il comando yum

Questo comando stampa un elenco di repository configurati sul tuo sistema.

Per impostazione predefinita elenca tutti i repository abilitati. Aggiungi -v alla modalità dettagliata, che ti fornisce ulteriori informazioni.

Per elencare i repository abilitati, eseguire il comando seguente sul sistema.

In alternativa, è possibile eseguire il seguente comando per elencare i repository abilitati sul sistema.

# yum repolist enabled

Eseguire il seguente comando per elencare i repository disabilitati sul sistema.

# yum repolist disabled

Eseguire il seguente comando per elencare tutti i repository (abilitati e disabilitati) sul sistema.

# yum repolist all

Per visualizzare informazioni dettagliate su ciascuno dei repository, aggiungere l’opzione -v con il comando yum. Visualizza repo-id, repo-name e così via.

# yum repolist -v

3) Come installare uno o più pacchetti su sistemi Linux CentOS / RHEL / Oracle Utilizzando il comando yum

Per installare un pacchetto o un pacchetto su sistemi Linux CentOS/RHEL / Oracle, utilizzare il seguente comando yum.

Nel nostro caso, installeremo i pacchetti nano, MariaDB-server e MariaDB-client. Per impostazione predefinita, ogni volta che yum richiede la conferma per installare un pacchetto e aggiungere l’opzione -y per evitare la conferma.

Per installare un singolo pacchetto

$ sudo yum install nano

Per installare più pacchetti

$ sudo yum install MariaDB-server MariaDB-client

Aggiungi l’opzione -y con yum per installare un pacchetto senza la tua conferma.

$ sudo yum install nano -y

Utilizzare il seguente comando per installare un pacchetto da un repository specifico. In questo caso, stiamo installando il pacchetto “htop” dal repository EPEL.

$ sudo yum --disablerepo="*" --enablerepo=epel install htop

Per installare il file rpm locale, eseguire il comando seguente.

$ sudo yum localinstall /path/to/file.rpm

Per installare un pacchetto rpm direttamente dall’URL, eseguire il comando seguente.

$ sudo yum localinstall https://xyz.com/file.rpm

4) Come rimuovere uno o più pacchetti sui sistemi CentOS / RHEL / Oracle Linux Usando il comando yum

Usa l’opzione” rimuovi “o” cancella ” per rimuovere pacchetti specifici, che rimuove anche le dipendenze dal sistema.

Nel nostro caso, rimuoveremo il pacchetto nano dal sistema.

# yum remove nano -y

In alternativa, è possibile utilizzare il seguente comando.

# yum erase nano -y

5) Come controllare gli aggiornamenti dei pacchetti disponibili sui sistemi CentOS/RHEL/Oracle Linux Usando il comando yum

Questo comando controlla se sono disponibili aggiornamenti dei pacchetti sul sistema.

Questo comando controlla se eventuali aggiornamenti al sistema (è a secco).

# yum check-update

In alternativa, è possibile utilizzare il comando seguente per verificare l’aggiornamento disponibile.

# yum list updates

Il seguente comando controlla gli aggiornamenti del pacchetto specificato.

# yum check-update # yum check-update nano

6) Come aggiornare uno o più pacchetti su sistemi CentOS / RHEL / Oracle Linux Usando il comando yum

Ti permette di installare gli aggiornamenti dei pacchetti disponibili sul tuo sistema. Inoltre, è possibile installare il pacchetto specificato o un gruppo di pacchetti, o un pacchetto per una versione specifica e altro ancora.

Eseguire il comando seguente per aggiornare tutti i pacchetti installati all’ultima versione disponibile.

# yum update

In alternativa, è possibile utilizzare il comando seguente. Ciò esclude i pacchetti “obsoleti” quando si esegue il comando yum.

# yum upgrade

Funziona come sopra, ma in realtà non installa alcun aggiornamento (come se fosse una corsa a secco). Ciò restituirà valori in termini di transazione. Restituisce anche un elenco dei pacchetti da aggiornare in formato elenco.

  • N: Restituisce il valore di uscita di ” N ” (N-numero di pacchetti) se ci sono pacchetti disponibili per un aggiornamento.
  • 0: Restituisce 0 se non sono disponibili pacchetti per l’aggiornamento.
  • 1: Restituisce 1 se si è verificato un errore.

# yum check−update

Eseguire il comando seguente per aggiornare uno o più pacchetti all’ultima versione disponibile.

# yum upgrade # yum upgrade nano

Eseguire il comando seguente per aggiornare uno o più pacchetti alle versioni specificate.

# yum update # yum update nano-2.9.8-1

7) Come controllare e aggiornare gli avvisi di sicurezza sui sistemi CentOS / RHEL / Oracle Linux Utilizzando il comando yum

Il seguente plugin yum estende yum per consentire elenchi e aggiornamenti solo pacchetti relativi alla sicurezza.

I comandi seguenti visualizzeranno informazioni sugli avvisi di aggiornamento. Questo mostra quanti aggiornamenti dei pacchetti sono disponibili per la sicurezza, correzioni di bug e miglioramenti.

Eseguire il comando seguente per visualizzare il numero di tipi di consulenza.

# yum updateinfo summaryUpdates Information Summary: available 1 Bugfix notice(s)

Questo comando visualizza l’elenco degli avvisi.

# yum updateinfo list

Per elencare tutti gli aggiornamenti rilevanti per la sicurezza.

$ sudo yum --security check-update

Per aggiornare i pacchetti con errori di sicurezza (aggiornamenti all’ultimo pacchetto disponibile).

$ sudo yum --security update

Per ottenere un elenco di tutti gli avvisi di sicurezza.

$ sudo yum updateinfo list all securityor$ sudo yum updateinfo list all sec

Per ottenere un elenco di tutti i pacchetti di miglioramento.

$ sudo yum updateinfo list all enhancement

Per ottenere un elenco di tutti i pacchetti bugfix.

$ sudo yum updateinfo list all bugfix

Questo comando fornisce informazioni dettagliate sull’ID consultivo specificato.

# yum updateinfo info FEDORA-EPEL-2020-a062204588

Eseguire il seguente comando per installare l’advisory specificato.

$ sudo yum update --advisory=XYZ-2020-1001

Eseguire il seguente comando per installare il CVE specificato.

$ sudo yum update --cve=CVE-2201-0123

8) Come elencare i pacchetti installati sui sistemi CentOS / RHEL / Oracle Linux Usando il comando yum

Le opzioni elenco vengono utilizzate per elencare varie informazioni sui pacchetti disponibili. È possibile personalizzare l’output in base alle proprie esigenze.

Eseguire il comando seguente per elencare tutti i pacchetti, presenti nell’RPMDB, in un repository o in entrambi.

# yum listor# yum list all

Esegui il comando seguente per elencare solo i pacchetti installati in RPMDB.

# yum list installed

Eseguire il comando seguente per elencare i pacchetti disponibili dai repository, esclusi i pacchetti installati.

# yum list available

Esegui il comando qui sotto per vedere se un determinato pacchetto è installato. Se sì, mostra un output come quello qui sotto. In caso contrario, viene visualizzato il seguente messaggio di errore “Errore: nessun pacchetto corrispondente alla lista”

# yum list installed httpdInstalled Packagesnano.x86_64 2.3.1-10.el7 @anaconda

Per elencare i pacchetti installati sul sistema che sono obsoleti.

# yum list obsoletes

Eseguire il comando seguente per elencare i pacchetti aggiunti di recente nei repository.

# yum list recent

Eseguire il comando seguente per elencare gli aggiornamenti disponibili per i pacchetti installati.

# yum list updates

9) Come cercare un pacchetto sui sistemi CentOS / RHEL / Oracle Linux Usando il comando yum

L’opzione di ricerca consente di trovare un pacchetto quando non si conosce il pacchetto esatto.

Cerca i metadati del pacchetto per determinate parole chiave e riassume l’output basato su di esso.

Nel nostro caso, stiamo andando a cercare la stringa ftpd e vedere cosa succede.

L’output sopra mostra la stringa corrispondente per la parola chiave ftpd.

10) Come visualizzare le informazioni sui pacchetti installati sui sistemi CentOS / RHEL / Oracle Linux Utilizzando il comando yum

Se si desidera trovare brevi informazioni sui pacchetti installati e disponibili, utilizzare il seguente comando.

Questo comando consente di controllare informazioni dettagliate su tutti i pacchetti disponibili nei repository. Esso mostra varia informazioni su un pacchetto come Nome, Arco, versione, Rilascio, Dimensione, nome repo, ecc,.

11) Come usare il comando “provides or whatprovides”

Il comando yum prvoides troverà i pacchetti che forniscono il file specificato. Questo è utile se vuoi scoprire quale pacchetto (installato o meno) fornisce questo file.

Ad esempio, sappiamo tutti del file /etc/passwd e molti di noi non sanno quale pacchetto fornisce questo file. Usa il seguente comando per trovarlo.

12) Come usare il comando “makecache”

Makecache viene utilizzato per scaricare e rendere utilizzabili tutti i metadati per il repository attualmente abilitato sul sistema.

# yum makecache

13) Come elencare i gruppi di pacchetti disponibili sui sistemi CentOS/RHEL/Oracle Linux Usando il comando yum

Un elenco di pacchetti correlati tra loro è raggruppato in un pacchetto di gruppo. Eseguire il seguente comando per elencare i gruppi di pacchetti disponibili sul sistema.

# yum grouplistor# yum group list

14) Come visualizzare il riepilogo dei gruppi disponibili sui sistemi CentOS/RHEL/Oracle Linux Utilizzando il comando yum

Questa panoramica mostra quanti gruppi sono installati e disponibili sul sistema.

# yum group summaryAvailable Environment Groups: 12Available Groups: 21Done

15) Come visualizzare un gruppo specificato Informazioni sui sistemi CentOS / RHEL / Oracle Linux Utilizzando il comando yum

Questo comando visualizza l’elenco dei pacchetti disponibili in questo gruppo.

Ogni gruppo è diviso in tre parti e i dettagli sono i seguenti:

  • Pacchetti Obbligatori
  • Pacchetti di Default
  • Pacchetti Opzionali
# yum group info 'Development Tools'

16) Come Installare un Pacchetto di Gruppo su CentOS/RHEL/Oracle Sistemi Linux Utilizzando il Comando yum

Eseguire il seguente comando per installare un pacchetto di gruppo.

In questo caso installeremo il gruppo di pacchetti “Strumenti di sviluppo”. Il gruppo editors ha in bundle con un sacco di pacchetti che sono legati a editor.

# yum group install 'Development Tools' -yor# yum groupinstall 'Development Tools' -y

17) Come aggiornare un gruppo di pacchetti sui sistemi CentOS/RHEL/Oracle Linux Utilizzando il comando yum

Analogamente, eseguire il seguente comando per aggiornare il gruppo di pacchetti alla versione più recente disponibile.

# yum group update 'Development Tools' -yor# yum groupupdate 'Development Tools' -y

18) Come rimuovere un gruppo di pacchetti sui sistemi CentOS/RHEL/Oracle Linux Utilizzando il comando yum

Utilizzare il comando seguente per rimuovere il gruppo di pacchetti installato specificato.

# yum group remove 'Development Tools'or# yum group erase 'Development Tools'

19) Come cancellare i dati memorizzati nella cache sui sistemi CentOS / RHEL / Oracle Linux Utilizzando il comando yum

Per impostazione predefinita, il comando yum memorizzerà nella directory “/var/cache/yum” i dati come i metadati dei pacchetti e dei repository quando si esegue un’operazione varia yum. Questa cache può occupare molto spazio nel periodo di tempo. Ciò ti consentirà di rimuovere tutti i dati memorizzati nella cache.

Eseguire il comando seguente per rimuovere i file di cache generati dai metadati del repository.

# yum clean dbcache

Eseguire il comando seguente per contrassegnare i metadati del repository scaduti.

# yum clean expire-cache

Eseguire il comando seguente per rimuovere i metadati del repository.

# yum clean metadata

Eseguire il comando seguente per rimuovere tutti i pacchetti memorizzati nella cache dal sistema.

# yum clean packages

Eseguire il comando seguente per rimuovere qualsiasi data memorizzata nella cache dal rpmdb locale.

# yum clean rpmdb

Eseguire il comando seguente per rimuovere eventuali plugin memorizzati nella cache dal sistema.

# yum clean plugins

Questo comando esegue tutte le azioni di cui sopra in una volta sola.

# yum clean all

20) Come scaricare il file RPM del pacchetto sui sistemi CentOS/RHEL/Oracle Linux Usando il comando yum

Invece di installare un pacchetto sul tuo computer usando il comando “Yumdownloader” puoi facilmente scaricare il pacchetto dato .file rpm dal repository.

Per fare ciò, è necessario installare il pacchetto “yum-utils”.

# yum install yum-utils -y

Ora è possibile scaricare il file RPM nel sistema locale.

# yumdownloader nano

21) Come aggiungere un nuovo repository sui sistemi CentOS/RHEL/Oracle Linux Usando il comando yum

Ogni repository fornisce comunemente il proprio”.file repo”. Per aggiungere un repository al sistema, eseguire il seguente comando come utente root.

22) Come escludere pacchetti specifici da Yum Update

Puoi usare --exclude o -x con il comando yum per escludere pacchetti specifici dall’aggiornamento tramite il comando yum.

Il comando seguente aggiornerà tutti i pacchetti tranne il kernel.

# yum update --exclude=kernelor# yum update -x 'kernel'

23) Come configurare gli aggiornamenti automatici con yum-cron sui sistemi RHEL/CentOS / Oracle Linux

Il pacchetto yum-cron consente di abilitare gli aggiornamenti automatici con il comando yum e personalizzarlo in base alle proprie esigenze, ad esempio eseguendo solo un aggiornamento completo del sistema o un aggiornamento della sicurezza.

Fornisce la configurazione richiesta per l’aggiornamento dei metadati del repository, il download e l’aggiornamento utilizzando cronjob.

Per fare ciò, installare il pacchetto yum-cron.

# sudo yum install yum-cron# systemctl enable yum-cron# systemctl start yum-cron

Per RHEL/CentOS 6, eseguire il seguente comando.

$ sudo chkconfig yum-cron on$ sudo service yum-cron start

È possibile personalizzare il comando yum in base alle proprie esigenze modificando il file “/etc/yum/yum-cron.conf”.

# vi /etc/yum/yum-cron.conf

24) Come stampare la cronologia yum su sistemi CentOS / RHEL / Oracle Linux Utilizzando il comando yum

Il comando yum history consente all’utente di visualizzare l’azione avvenuta nelle transazioni passate. Tutte le transazioni mostrate in una tabella.

In alternativa, è possibile ottenere lo stesso risultato utilizzando il seguente comando.

# yum history list

Ti mostra informazioni dettagliate sulle transazioni date. Quando non viene specificata alcuna transazione, descrivere cosa è successo durante l’ultima transazione.

Eseguire il seguente comando per visualizzare le informazioni dettagliate sulle transazioni ID specificate.

Ripetere la stessa azione per l’ID transazione specificato.

# yum history redo 3

Eseguire l’operazione opposta a tutte le operazioni eseguite nella transazione specificata.

# yum history undo 3

Annulla tutte le transazioni eseguite dopo la transazione specificata.

# yum history rollback 7

25) Visita la pagina Man di yum

Abbiamo aggiunto tutte le opzioni possibili in questo articolo, ma se stai cercando qualsiasi altra opzione, che non è elencata in questo articolo, visita la pagina man.

# yum -helpor# man yum

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.