1 508
contributi
S3v (discussione | contributi) Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 2: | Riga 2: | ||
Spesso ci è capitato di installare dei pacchetti contenenti dei bug, conosciuti anche prima del nostro download. | Spesso ci è capitato di installare dei pacchetti contenenti dei bug, conosciuti anche prima del nostro download. | ||
Prima di installare un pacchetto, infatti, sarebbe opportuno fare una visitina | Prima di installare un pacchetto, infatti, sarebbe opportuno fare una visitina su [http://bugs.debian.org questo] sito, dove vengono tracciati i bug segnalati. Questo motore di gestione dei bug è molto potente e funzionale, ma se non volessimo perdere tempo ogni volta? | ||
apt-listbugs è la risposta! | apt-listbugs è la risposta! | ||
apt-listbugs, infatti, ci permette di essere informati sui bug presenti nel nostro sistema e presenti nei pacchetti che stiamo per installare | apt-listbugs, infatti, ci permette di essere informati sui bug presenti nel nostro sistema e presenti nei pacchetti che stiamo per installare; vediamo come utilizzarlo e configurarlo al meglio per le nostre esigenze! | ||
Riga 17: | Riga 17: | ||
==Configurazione== | ==Configurazione== | ||
Apt-listbugs è già configurato per interagire con dpkg e apt in quanto aggiunge uno script nella directory | Apt-listbugs è già configurato per interagire con dpkg e apt in quanto aggiunge uno script nella directory <code>/etc/apt/apt.conf.d/</code>, che contiene gli script da eseguire al termine del download dei pacchetti. Raccomando di non modificare il contenuto di questa directory, a meno di non sapere esattamente cosa fare, pena l'impossibilità di installare pacchetti e/o il cattivo funzionamento di dpkg e apt-get. | ||
Nella directory | Nella directory <code>/etc/apt/</code> verrà aggiunta una nuova folder: "listbugs" che conterrà dei file di supporto per il normale funzionamento del programma (ad esempio il file <code>ignore_bugs</code>, contenente la lista dei bug ignorati durante l'installazione dei pacchetti). | ||
==Utilizzo== | ==Utilizzo== | ||
L'utilizzo base del programma è semplicissimo: | L'utilizzo base del programma è semplicissimo: ogni volta che installeremo o aggiorneremo dei pacchetti, apt-listbugs interrogherà i server Debian per sapere se ci sono dei bug aperti per le applicazioni installate; raccolte le informazioni ci avvertirà in caso di bug (altrimenti lascerà continuare normalmente il processo di installazione). | ||
ogni volta che installeremo o aggiorneremo dei pacchetti, apt-listbugs interrogherà i server Debian per sapere se ci sono dei bug aperti per le applicazioni installate; raccolte le informazioni ci avvertirà in caso di bug (altrimenti lascerà continuare normalmente il processo di installazione). | |||
In caso di presenza di bug, mostrerà a video la lista di quelli presenti (sia aperti che chiusi); ecco un esempio: | In caso di presenza di bug, mostrerà a video la lista di quelli presenti (sia aperti che chiusi); ecco un esempio: | ||
<pre> | <pre> | ||
Riga 49: | Riga 48: | ||
Ecco una tabella riassuntiva delle categorie in cui sono divisi i bug: | Ecco una tabella riassuntiva delle categorie in cui sono divisi i bug: | ||
; critical : si riferisce a problemi che bloccano il pacchetto o l'intero sistema; oppure causano la perdita di dati importanti; oppure introducono dei problemi di sicurezza sui sistemi nei quali installi il pacchetto | ; <code>critical</code>: si riferisce a problemi che bloccano il pacchetto o l'intero sistema; oppure causano la perdita di dati importanti; oppure introducono dei problemi di sicurezza sui sistemi nei quali installi il pacchetto;<br/> | ||
; grave : rende il pacchetto in questione | ; <code>grave</code>: rende il pacchetto in questione inutilizzabile o quasi; oppure causa la perdita di dati; oppure introduce dei problemi di sicurezza legati agli utenti del pacchetto;<br/> | ||
; serious : indica una seria violazione della policy Debian (vale a dire di tutto quello che è identificato come "must" o "required") o che comunque secondo il manutentore del pacchetto rende lo stesso inappropriato per il rilascio | ; <code>serious</code>: indica una seria violazione della policy Debian (vale a dire di tutto quello che è identificato come "must" o "required") o che comunque secondo il manutentore del pacchetto rende lo stesso inappropriato per il rilascio;<br/> | ||
; important : un bug che abbia un effetto pesante sull'usabilità del pacchetto, senza però renderlo | ; <code>important</code>: un bug che abbia un effetto pesante sull'usabilità del pacchetto, senza però renderlo inutilizzabile per tutti;<br/> | ||
; normal : il valore predefinito, utilizzabile per i bug normali | ; <code>normal</code>: il valore predefinito, utilizzabile per i bug normali;<br/> | ||
; minor : un bug che non inficia l'usabilità del pacchetto e che è facile da correggere | ; <code>minor</code>: un bug che non inficia l'usabilità del pacchetto e che è facile da correggere;<br/> | ||
; wishlist : per ogni richiesta di cambiamento del programma non legata a bug | ; <code>wishlist</code>: per ogni richiesta di cambiamento del programma non legata a bug;<br/> | ||
(fonte: http://www.debian.org/Bugs/Developer#severities) | (fonte: http://www.debian.org/Bugs/Developer#severities) | ||
Riga 63: | Riga 62: | ||
Tornando ad apt-listbugs, in caso di bug rilevati, viene chiesto cosa fare. | Tornando ad apt-listbugs, in caso di bug rilevati, viene chiesto cosa fare. | ||
Le opzioni disponibili sono:<br/> | Le opzioni disponibili sono:<br/> | ||
; y : | ; <code>y</code>: continua l'installazione ignorando i bug trovati;<br/> | ||
; n : | ; <code>n</code>: interrompe immediatamente l'installazione;<br/> | ||
; <num> : | ; <code><num></code>: inserendo il numero del bug (quello preceduto da #) è possibile ottenere maggiori informazioni riguardo il bug;<br/> | ||
; r : | ; <code>r</code>: mostra la lista dei bug (comodo dopo la visualizzazione dei dettagli, ad esempio);<br/> | ||
; p : | ; <code>p</code>: esegui il pinning di tutti i pacchetti segnalati nel bug report (cioè lo 'blocca' e non lo installa); questa opzione richiede l'uscita da '''apt-get''' e una riesecuzione del comando di installazione/aggiornamento precedentemente lanciato;<br/> | ||
; p <pkg> : | ; <code>p <pkg></code>: esegue il pinning del pacchetto indicato;<br/> | ||
; i : | ; <code>i</code>: ignora il bug corrispondente a (per evitare il pinning di pacchetti il cui bug è segnato come "done");<br/> | ||
; ? : | ; <code>?</code>: mostra un piccolo help con le opzioni utilizzabili;<br/> | ||
; w : | ; <code>w</code>: mostra il report bug in html (mai usato). | ||
Il funzionamento, quindi, è molto semplice | Il funzionamento, quindi, è molto semplice: basta leggere con attenzione la lista dei bug riscontrati ed agire di conseguenza! | ||
Ricordo che, nel caso di pinning di anche un solo pacchetto, è necessario ricominciare il processo di aggiornamento/installazione. | |||
Ricordo che, nel caso di pinning di anche un solo pacchetto, è necessario ricominciare il processo di aggiornamento/installazione | |||
In caso di pinning di uno o più pacchetti, è necessario (al prossimo aggiornamento) rimuoverlo da | In caso di pinning di uno o più pacchetti, è necessario (al prossimo aggiornamento) rimuoverlo da <code>/etc/apt/preferences</code>. | ||
Nel file | Nel file <code>/etc/apt/preferences</code>, ad esempio, trovo questo blocco relativo a postfix (prima l'ho pinnato, visto che il bug comprometteva gravemente il funzionamento): | ||
<pre> | <pre> | ||
Explanation: Pinned by apt-listbugs at Mon Jan 31 22:17:38 CET 2005 | Explanation: Pinned by apt-listbugs at Mon Jan 31 22:17:38 CET 2005 | ||
Riga 93: | Riga 91: | ||
al prossimo aggiornamento, per controllare se sono presenti nuove versioni di postfix, dovrò rimuovere queste indicazioni, altrimenti il pacchetto in questione verrà assunto sempre come 'aggiornato'. | al prossimo aggiornamento, per controllare se sono presenti nuove versioni di postfix, dovrò rimuovere queste indicazioni, altrimenti il pacchetto in questione verrà assunto sempre come 'aggiornato'. | ||
Se non sono mai state fatte modifiche al file | Se non sono mai state fatte modifiche al file <code>/etc/apt/preferences</code> (soprattutto per quanto riguarda pinning per l'utilizzo di più release insieme) lo si può tranquillamente eliminare prima di ogni aggiornamento. | ||
L'utilizzo di apt-listbugs in modo manuale (richiamandolo direttamente da shell) è inutile, ma può servire | L'utilizzo di apt-listbugs in modo manuale (richiamandolo direttamente da shell) è inutile, ma può servire, seguito dal parametro <code>-h</code> oppure consultando il manuale (man apt-listbugs), per modificare il comportamento del programma (i parametri possono essere modificati nel file <code>/etc/apt/apt.conf.d/10apt-listbugs</code>, anche se raccomando l'utilizzo delle opzioni di default, che fino ad ora si sono rivelate le migliori). | ||
==Conclusione== | ==Conclusione== | ||
apt-listbugs è senza dubbio uno strumento utilissimo, in quanto previene l'installazione di pacchetti che possono rendere | apt-listbugs è senza dubbio uno strumento utilissimo, in quanto previene l'installazione di pacchetti che possono rendere inutilizzabile o instabile la nostra Debian Box. | ||
Ovviamente non viene a sostituire le normali visite al sito http://bugs.debian.org, dove sono elencati tutti i bug di tutti i pacchetti presenti in Debian (che invito a controllare prima di chiedere aiuto per un comportamento strano di una applicazione). | Ovviamente non viene a sostituire le normali visite al sito http://bugs.debian.org, dove sono elencati tutti i bug di tutti i pacchetti presenti in Debian (che invito a controllare prima di chiedere aiuto per un comportamento strano di una applicazione). | ||
contributi