Apt-listbugs: come monitorare i bug: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
(Revisione compatibilità + aggiornamento dati)
Riga 1: Riga 1:
{{Versioni compatibili}}
{{Versioni compatibili|Jessie|Stretch|Sid}}
== Introduzione ==
== Introduzione ==
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 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? <code>apt-listbugs</code> è la risposta!<br/>
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 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? <code>apt-listbugs</code> è la risposta!<br/>
Riga 11: Riga 11:


== Configurazione ==
== Configurazione ==
<code>Apt-listbugs</code> è già configurato per interagire con [[dpkg]] e [[APT]] in quanto aggiunge un file nella directory <code>/etc/apt/apt.conf.d/</code>, che contiene le direttive da eseguire al termine del download dei pacchetti e prima della loro installazione.<br/>
<code>apt-listbugs</code> è già configurato per interagire con [[dpkg]] e [[APT]] in quanto aggiunge un file nella directory <code>/etc/apt/apt.conf.d/</code>, che contiene le direttive da eseguire al termine del download dei pacchetti e prima della loro installazione.<br/>
Inoltre viene creata la directory <code>/etc/apt/listbugs/</code>; essa conterrà dei file di supporto per il normale funzionamento del programma, come ad esempio il file <code>ignore_bugs</code>, contenente la lista dei bug ignorati durante l'installazione dei pacchetti.
Inoltre viene creata la directory <code>/etc/apt/listbugs/</code>; essa conterrà dei file di supporto per il normale funzionamento del programma, come ad esempio il file <code>ignore_bugs</code>, contenente la lista dei bug ignorati durante l'installazione dei pacchetti.


Riga 23: Riga 23:
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>
Retrieving bug reports... Done
Recupero delle segnalazioni di bug... Fatto
critical bugs of login (1:4.0.3-30.7 -> 1:4.0.3-30.8) <done>
Analisi delle informazioni... Fatto
#290803 - login: /var/log/btmp is created with insecure permissions
Bug critical di plymouth (-> 0.9.0-9) <Aperti>
critical bugs of postfix (2.1.4-5 -> 2.1.5-5) <done>
  b1 - #782456 - plymouth: With plymouth installed, starting the DM sometimes fails
#288728 - postfix gives up with warning: no MX host for xxxx.com has a valid A record
Riepilogo:
grave bugs of mysql-server (4.0.23-1 -> 4.0.23-3) <open>
  plymouth (1 bug)
  #291378 - mysql-server: Security fixes pending in experimental version
Installare/aggiornare i precedenti pacchetti? [Y/n/?/...]
grave bugs of postfix (2.1.4-5 -> 2.1.5-5) <open>
#285111 - postfix: newaliases not working due to some library problem
#291031 - postfix: Upgrade from Postfix 2.1.4-5 to 2.1.5-4 fails #3
#292086 - stock installed master.cf file causes postfix to fail to start
Summary:
  mysql-server(1 bug), login(1 bug), postfix(4 bugs)
Are you sure you want to install/upgrade the above packages? [Y/n/?/...]
</pre>
</pre>


 
Come potete vedere, visualizza una lista di bug presenti, divisi per gravità (prima quelli 'Critical', poi quelli 'Grave') e poi per pacchetto. Inoltre i bug sono contraddistinti da 2 [[tag]], '''<done>''' e '''<open>''':<br/>
Come potete vedere, visualizza una lista di bug presenti, divisi per gravità (prima quelli 'Critical', poi quelli 'Grave') e poi per pacchetto. Inoltre i bug sono contraddistinti da 2 [[tag]]: '''<done>''' e '''<open>''':<br/>
'''<done>''' rappresenta un bug corretto<br/>
'''<done>''' rappresenta un bug corretto<br/>
'''<open>''' rappresenta un bug ancora aperto<br/>
'''<open>''' rappresenta un bug ancora aperto<br/>
[[Severità | Qui]] è visibile la descrizione dei livelli di gravità dei bug (severities).
[[Severità | Qui]] è visibile la descrizione dei livelli di gravità dei bug (severities).


Di default <code>apt-listbugs</code> mostrerà i bug appartenenti alle prime tre categorie.
Di default <code>apt-listbugs</code> mostrerà i bug appartenenti alle prime tre categorie. In caso di bug rilevati, viene chiesto cosa fare.
 
Tornando ad <code>apt-listbugs</code>, in caso di bug rilevati, viene chiesto cosa fare.
Le opzioni disponibili sono:<br/>
Le opzioni disponibili sono:<br/>
; <code>y</code>: continua l'installazione ignorando i bug trovati;<br/>
; <code>y</code>: continua l'installazione ignorando i bug trovati;<br/>
Riga 60: Riga 50:


Il funzionamento, quindi, è molto semplice: basta leggere con attenzione la lista dei bug riscontrati ed agire di conseguenza!<br/>
Il funzionamento, quindi, è molto semplice: basta leggere con attenzione la lista dei bug riscontrati ed agire di conseguenza!<br/>
Ricordo che, nel caso di pinning di anche un solo pacchetto, è necessario ricominciare il processo di aggiornamento/installazione.
Nel caso di pinning di anche un solo pacchetto è necessario ricominciare il processo di aggiornamento/installazione.
 
Se si effettua il [[pinning]] di uno o più pacchetti, esso sarà annotato nel file <code>/etc/apt/preferences.d/apt-listbugs</code>. Sarà necessario al prossimo aggiornamento rimuoverlo dal file in questione, altrimenti esso sarà sempre assunto come aggiornato e non più proposto per l'aggiornamento.


In caso di [[pinning]] di uno o più pacchetti, è necessario (al prossimo aggiornamento) rimuoverlo da <code>/etc/apt/preferences</code>.
Installando <code>plymouth</code> è stato segnalato un bug con severità '''critical''' che ne compromette il funzionamento, per cui si è deciso di far eseguire ad <code>apt-listbugs</code> il pinning del pacchetto.
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):
Nel file <code>/etc/apt/preferences.d/apt-listbugs</code> troviamo questo blocco relativo:
<pre>
<pre>
Explanation: Pinned by apt-listbugs at Mon Jan 31 22:17:38 CET 2005
Explanation: Pinned by apt-listbugs at 2015-05-25 15:54:32 +0200
Explanation:  #288728: postfix gives up with warning: no MX host for xxxx.com has a valid
Explanation:  #782456: plymouth: With plymouth installed, starting the DM sometimes fails
A record
Package: plymouth
Explanation:  #285111: postfix: newaliases not working due to some library problem
Pin: version *
Explanation:  #291031: postfix: Upgrade from Postfix 2.1.4-5 to 2.1.5-4 fails #3
Pin-Priority: -30000
Explanation:  #292086: stock installed master.cf file causes postfix to fail to start
Package: postfix
Pin: version 2.1.4-5
Pin-Priority: 1000
</pre>
</pre>


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'.<br/>
al prossimo aggiornamento, per controllare se sono presenti nuove versioni di plymouth, si dovranno rimuovere queste indicazioni, altrimenti il pacchetto in questione verrà assunto sempre come 'aggiornato'.<br/>
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.
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.


{{Box|Nota|Nelle verioni più recenti la directory e il file in cui apt-listbugs scrive i pacchetti bloccati sono stati modificati in <br/> <code>/etc/apt/preferences.d/apt-listbugs</code>}}
{{Box|Nota|Nelle verioni meno recenti il file in cui apt-listbugs scrive i pacchetti bloccati era <br/> <code>/etc/apt/preferences</code>}}


Se si vuol disabilitare la ricerca dei bug da parte di <code>apt-listbugs</code> ad ogni aggiornamento/rimozione dei pacchetti, basta commentare le righe presenti nel file <code>/etc/apt/apt.conf.d/10apt-listbugs</code> .
Se si vuol disabilitare la ricerca dei bug da parte di <code>apt-listbugs</code> ad ogni aggiornamento/rimozione dei pacchetti, basta commentare le righe presenti nel file <code>/etc/apt/apt.conf.d/10apt-listbugs</code> .
Riga 85: Riga 73:
== Conclusioni ==
== Conclusioni ==
<code>apt-listbugs</code> è senza dubbio uno strumento utilissimo, in quanto previene l'installazione di pacchetti che possono rendere inutilizzabile o instabile la nostra Debian Box.<br/>
<code>apt-listbugs</code> è senza dubbio uno strumento utilissimo, in quanto previene l'installazione di pacchetti che possono rendere inutilizzabile o instabile la nostra Debian Box.<br/>
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 si invita a controllare prima di chiedere aiuto per un comportamento strano di una applicazione).


{{Autori
{{Autori
Riga 91: Riga 79:
|Verificata_da=
|Verificata_da=
:[[Utente:S3v|S3v]] 16:32, 26 feb 2014 (CET)
:[[Utente:S3v|S3v]] 16:32, 26 feb 2014 (CET)
|Numero_revisori=1
: [[Utente:Spoon|Spoon]] 16:11, 25 mag 2015 (CEST)
|Numero_revisori=2
}}
}}


[[Categoria:Apt]]
[[Categoria:Apt]]

Versione delle 14:11, 25 mag 2015

Debian-swirl.png Versioni Compatibili

Debian 8 "jessie"
Debian 9 "stretch"
ERRORE: utilizzare "unstable_2024" come parametro al posto di " Sid "! Vedi qui.

Introduzione

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 su 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, 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!

Installazione

Per installare apt-listbugs, è sufficiente un:

# apt-get install apt-listbugs

Configurazione

apt-listbugs è già configurato per interagire con dpkg e APT in quanto aggiunge un file nella directory /etc/apt/apt.conf.d/, che contiene le direttive da eseguire al termine del download dei pacchetti e prima della loro installazione.
Inoltre viene creata la directory /etc/apt/listbugs/; essa conterrà dei file di supporto per il normale funzionamento del programma, come ad esempio il file ignore_bugs, contenente la lista dei bug ignorati durante l'installazione dei pacchetti.

Utilizzo

L'utilizzo base del programma è semplicissimo e può avvenire in due modi distinti

automaticamente
ogni volta che installeremo o aggiorneremo dei pacchetti.
manualmente
eseguendo apt-listbugs da linea di comando. Utile per conoscere tutti bug (e il loro stato) relativi ad un pacchetto.

Utilizzo automatico

Ogni volta che aggiorniamo o installiamo un pacchetto, 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:

Recupero delle segnalazioni di bug... Fatto
Analisi delle informazioni... Fatto
Bug critical di plymouth (-> 0.9.0-9) <Aperti>
 b1 - #782456 - plymouth: With plymouth installed, starting the DM sometimes fails
Riepilogo:
 plymouth (1 bug)
Installare/aggiornare i precedenti pacchetti? [Y/n/?/...]

Come potete vedere, visualizza una lista di bug presenti, divisi per gravità (prima quelli 'Critical', poi quelli 'Grave') e poi per pacchetto. Inoltre i bug sono contraddistinti da 2 tag, <done> e <open>:
<done> rappresenta un bug corretto
<open> rappresenta un bug ancora aperto
Qui è visibile la descrizione dei livelli di gravità dei bug (severities).

Di default apt-listbugs mostrerà i bug appartenenti alle prime tre categorie. In caso di bug rilevati, viene chiesto cosa fare. Le opzioni disponibili sono:

y
continua l'installazione ignorando i bug trovati;
n
interrompe immediatamente l'installazione;
<num>
inserendo il numero del bug (quello preceduto da #) è possibile ottenere maggiori informazioni riguardo al bug;
r
mostra la lista dei bug (comodo dopo la visualizzazione dei dettagli, ad esempio);
p
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;
p <pkg>
esegue il pinning del pacchetto indicato;
i
ignora il bug corrispondente a (per evitare il pinning di pacchetti il cui bug è segnato come "done");
?
mostra un piccolo help con le opzioni utilizzabili;
w
mostra il report bug in html (mai usato).

Il funzionamento, quindi, è molto semplice: basta leggere con attenzione la lista dei bug riscontrati ed agire di conseguenza!
Nel caso di pinning di anche un solo pacchetto è necessario ricominciare il processo di aggiornamento/installazione.

Se si effettua il pinning di uno o più pacchetti, esso sarà annotato nel file /etc/apt/preferences.d/apt-listbugs. Sarà necessario al prossimo aggiornamento rimuoverlo dal file in questione, altrimenti esso sarà sempre assunto come aggiornato e non più proposto per l'aggiornamento.

Installando plymouth è stato segnalato un bug con severità critical che ne compromette il funzionamento, per cui si è deciso di far eseguire ad apt-listbugs il pinning del pacchetto. Nel file /etc/apt/preferences.d/apt-listbugs troviamo questo blocco relativo:

Explanation: Pinned by apt-listbugs at 2015-05-25 15:54:32 +0200
Explanation:   #782456: plymouth: With plymouth installed, starting the DM sometimes fails
Package: plymouth
Pin: version *
Pin-Priority: -30000

al prossimo aggiornamento, per controllare se sono presenti nuove versioni di plymouth, si dovranno rimuovere queste indicazioni, altrimenti il pacchetto in questione verrà assunto sempre come 'aggiornato'.
Se non sono mai state fatte modifiche al file /etc/apt/preferences (soprattutto per quanto riguarda pinning per l'utilizzo di più release insieme) lo si può tranquillamente eliminare prima di ogni aggiornamento.

Info.png Nota
Nelle verioni meno recenti il file in cui apt-listbugs scrive i pacchetti bloccati era
/etc/apt/preferences


Se si vuol disabilitare la ricerca dei bug da parte di apt-listbugs ad ogni aggiornamento/rimozione dei pacchetti, basta commentare le righe presenti nel file /etc/apt/apt.conf.d/10apt-listbugs .

Conclusioni

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 si invita a controllare prima di chiedere aiuto per un comportamento strano di una applicazione).




Guida scritta da: MaXeR Swirl-auth60.png Debianized 60%
Estesa da:
Verificata da:
S3v 16:32, 26 feb 2014 (CET)
Spoon 16:11, 25 mag 2015 (CEST)

Verificare ed estendere la guida | Cos'è una guida Debianized