Archivio

Posts Tagged ‘yum history package-list’

Yum – Prendiamo il controllo degli aggiornamenti

Gestire l’installazione e l’aggiornamento dei software insatallati su distribuzioni basate su pacchetti RPM è diventato col tempo molto semplice ; in questo articolo vedremo come tenere sotto controllo i pacchetti che vengono aggiornati o installati nel nostro sistema.

YUM HISTORY

Il comando che ci permette di controllare le transazioni eseguite da YUM è “yum history” al quale possiamo dare diversi parametri :

#yum history list

questo primo comando ci dà una lista delle prime 20 transazioni eseguite da yum , l’output è suddiviso in colonne che riportano : l’ID delle transazioni(ID), l’utente che ha eseguito la transazione (Login user), la data (Date and time), il tipo di operazioni eseguite (Action) e infine il numero di pacchetti modificati (Altered).

Prima di continuare analizziamo i valori che possono assumere le colonne Action e Altered

Action

Downgrade D Uno o più pacchetti sono riportati ad una versione più vecchia
Erase E Uno o più pacchetti sono stati rimossi
Install I Uno o più pacchetti sono stati installati
Obsoletin O Uno o più pacchetti sono stati marcati come obsoleti
Reinstall R Uno o più pacchetti sono stati reinstallati
Update U Uno o più pacchetti sono stati aggiornati

Altered

<; Prima della fine della transazione , il database rpmdb è cambiato
>; Dopo la transazione , il database rpmdb è cambiato
* La transazione è fallita
# La transazione è finita correttamente , ma yum è terminato con un errore
E La transazione è finita correttamente, ma è stato riportato un errore o un avviso
P La transazione è finita correttamente, ma un problema è presente nel database rpmdb
s La transazione è finita correttamente, ma è stata utilizzata l’opzione –skip-borken e alcuni pacchetti sono stati ignorati

Se vogliamo vedere tutte le transazioni eseguite da yum dobbiamo usare il comando :

#yum history list all

Possiamo anche sceglire di visualizzare un range di transazioni utilizzando gli ID :

#yum history list start_id..end_id
#yum hisroty list 2..6

In questo modo vedremo le transazioni dal ID 2 al ID 6.

Se vogliamo analizzare nel dettagio una transazione per vedere i pacchetti che sono stati modificati possiamo usare il comando :

#yum history info id_transazione
#yum history info 4

L’output ci dirà quando è iniziata la transazione (Begin Time) , quando è terminata (End Time), come è terminata (Return-Code) ed i pacchetti modificati.
Se non specifichiamo nessun ID ci verrà visualizzata l’ultima transazione eseguita .

I comandi appena visti sono orientati in generale alle transazioni , ma se volessimo sapere la storia di un determinato pacchetto come quando è stato installato o aggiornato?
per questo ci viene in aiuto l’opzione “package-list” :

#yum history package-list gnome/*

Con questo comando vedremo tutti i cambiamenti (Update,Installazione ecc) apportati ai pacchetti il cui nome inizia con “gnome” .

E’ possibile ottenere anche altre informazioni , come quali opzioni di configurazione yum ha utilizzato per una determinata transazione o da quali repository certi pacchetti sono stati installati .

Per vedere quali informazioni aggiuntive sono disponibili per una transazione si utilizza il comando :

#yum history addon-info id_transazione
#yum history addon-info 2

Come per “yum history info” se non specifichiamo nessuna transazione ci verrà visualizata l’ultima eseguita .

Le voci che possiamo trovare sono :

config-main : Le opzioni globali di yum usate durante la transazione
config-repos : Le opsioni usate per i singoli repository
saved_tx : I dati che possono essere utilizzati con il comando “yum load-transaction” per ripetere la transazione su un’altro computer .

Oltre a poter verificare la storia delle transazioni il comando yum history permette anche di ripetere una transazione o di tornare alla situazione precedente alla transazione .

Vista la delicatezza di queste procedure non tanto per il comando ma per quello che comporta verrà trattato nel prossimo articolo insieme al comando “yum load-transaction” .