Product SiteDocumentation Site

6.6. Aggiornare da una distribuzione stabile alla successiva

Una delle caratteristiche più note di Debian è la sua capacità di aggiornare il sistema installato da un rilascio stabile a quello successivo: dist-upgrade, un termine ben noto, ha in gran parte contribuito alla reputazione del progetto. Con alcune precauzioni, l'aggiornamento di un computer può richiedere da un minimo di pochi, fino a qualche decina, di minuti a seconda della velocità di scaricamento dai repository dei pacchetti.

6.6.1. Procedura raccomandata

Dal momento che Debian ha un tempo abbastanza lungo per evolvere fra i rilasci stabili, si consiglia di leggere le note di rilascio prima di fare l'aggiornamento.
In questa sezione, ci soffermeremo sull'aggiornamento di un sistema Wheezy a Jessie. Si tratta di una grande operazione su un sistema; come tale, non è mai al 100% priva di rischi, e non si dovrebbe tentarla prima di aver fatto il backup dei dati più importanti.
Un'altra buona abitudine che permette un aggiornamento più facile (e veloce) è di riordinare i pacchetti installati e mantenere solo quelli che sono realmente necessari. Strumenti utili per fare questo sono aptitude, deborphan e debfoster (vedere la Sezione 6.2.7, «Tenere traccia dei pacchetti installati automaticamente»). Per esempio, è possibile usare il comando seguente e poi usare la modalità interattiva di aptitude per ricontrollare e aggiustare le rimozioni pianificate:
# deborphan | xargs aptitude --schedule-only remove
Passiamo ora all'aggiornamento vero e proprio. Prima di tutto, è necessario cambiare il file /etc/apt/sources.list per indicare ad APT di ottenere i pacchetti da Jessie invece di Wheezy. Se il file contiene solo riferimenti a Stable piuttosto che nomi in codice espliciti, questo cambiamento non è neppure necessario, poiché Stable si riferisce sempre all'ultima versione rilasciata di Debian. In entrambi i casi, il database dei pacchetti disponibili deve essere aggiornato (con il comando apt update o con il pulsante di aggiornamento in synaptic).
Una volta che queste nuove fonti di pacchetti sono registrate, si dovrebbe prima fare un aggiornamento minimale con apt upgrade. Facendo l'aggiornamento in due fasi, si facilita il compito degli strumenti di gestione dei pacchetti e spesso si garantisce la presenza delle loro più recenti versioni che possono aver incorporato risoluzioni di bug e miglioramenti necessari per completare l'aggiornamento completo del sistema.
Una volta fatto questo primo aggiornamento, è il momento di occuparsi dell'aggiornamento stesso, sia con apt full-upgrade, aptitude, o synaptic. Si consiglia di controllare attentamente le azioni suggerite prima di applicarle: si potrebbe desiderare di aggiungere pacchetti suggeriti o deselezionare i pacchetti che sono solo raccomandati e che si sa non saranno utili. In ogni caso, il frontend dovrebbe trovare ciò che serve per avere alla fine un sistema Jessie aggiornato e coerente. In seguito, tutto ciò che si deve fare è aspettare che i pacchetti necessari vengano scaricati, rispondere alle domande di Debconf ed eventualmente a quelle sui file di configurazione modificati localmente, e rilassarsi mentre APT fa la sua magia.

6.6.2. Gestire i problemi dopo un aggiornamento

Nonostante i migliori sforzi dei manutentori Debian, un importante aggiornamento di sistema non va sempre liscio come si spera. Le nuove versioni del software possono essere incompatibili con quelle precedenti (per esempio, il loro comportamento predefinito o il loro formato dei dati potrebbe essere cambiato). Inoltre, alcuni bug possono sfuggire, nonostante la fase di sperimentazione, che precede sempre un rilascio di Debian.
Per anticipare alcuni di questi problemi, è possibile installare il pacchetto apt-listchanges, che visualizza le informazioni sui possibili problemi all'inizio dell'aggiornamento di un pacchetto. Queste informazioni sono compilate dai manutentori dei pacchetti e inserite nel file /usr/share/doc/pacchetto/NEWS.Debian a beneficio degli utenti. Leggere questi file (possibilmente attraverso apt-listchanges) dovrebbe aiutare ad evitare brutte sorprese.
A volte è possibile che la nuova versione di un software non funzioni affatto. Questo in genere accade se l'applicazione non è particolarmente popolare e non è stata testata abbastanza; un aggiornamento dell'ultimo minuto può anche introdurre regressioni che vengono scoperte solo dopo il rilascio stabile. In entrambi i casi, la prima cosa da fare è dare uno sguardo al sistema di tracciamento dei bug in https://bugs.debian.org/pacchetto, e verificare se il problema è già stato segnalato. Se non lo è, si dovrebbe riportarlo con reportbug. Se è già noto, la segnalazione di bug e i messaggi associati sono in genere un'eccellente fonte di informazioni relative al bug:
  • a volte una soluzione esiste già, ed è disponibile nella segnalazione di bug; si può allora ricompilare localmente una versione corretta del pacchetto non funzionante (vedere la Sezione 15.1, «Rigenerare un pacchetto dai suoi sorgenti»);
  • in altri casi, gli utenti potrebbero aver trovato un modo di superare il problema e condiviso le loro conoscenze al riguardo nelle loro risposte alla segnalazione;
  • in altri casi ancora, un pacchetto corretto potrebbe essere già stato preparato e reso pubblico da parte del manutentore.
A seconda della gravità del bug, una nuova versione del pacchetto può essere preparata appositamente per una nuova revisione della versione stabile. Quando succede questo, il pacchetto sistemato è reso disponibile nella sezione proposed-updates dei mirror Debian (vedere la Sezione 6.1.2.3, «Aggiornamenti proposti»). La voce corrispondente può essere temporaneamente aggiunta al file sources.list, e i pacchetti aggiornati possono essere installati con apt o aptitude.
A volte il pacchetto corretto non è ancora disponibile in questa sezione perché è in attesa di una validazione da parte degli Stable Release Manager. Si può verificare se questo è il caso sulla loro pagina web. I pacchetti elencati in quella pagina non sono ancora disponibili, ma almeno si sa che il processo di pubblicazione è in corso.