martedì 12 marzo 2013

Somma hash non corrispondente

Il gestore dei pacchetti di Ubuntu (apt) risulta molto comodo per cercare, installare e aggiornare pacchetti senza dover ricorrere alla ricerca delle nuove versioni e senza dover ricorrere all'installazione manuale.
Le informazioni sui pacchetti disponibili, con la loro versione, sono contenute in appositi file di sistema che, al momento della verifica della presenza di aggiornamenti (ad esempio mediante update-manager o apt-get update), vengono confrontati con file simili presenti sul server (noto con il nome di repository).

Può succedere che, durante l'aggiornamento delle informazioni sui pacchetti disponibili, uno dei file contenente tali informazioni si danneggi (ad esempio per un download incompleto dovuto a qualche sorta di errore). Questo causerà un successivo problema nei tentativi di aggiornamento in quanto il sistema non sarà più in grado di confrontare le versioni dei pacchetti installati (ovvero quella locale) con quella dei pacchetti disponibili (quella presente sul server), pertanto tutti i pacchetti che fanno riferimento al server con la lista dei pacchetti danneggiata non potranno essere aggiornati.

Il messaggio di errore che verrà visualizzato (sia utilizzando apt-get, che update-manager) sarà di questo tipo:

W: Impossibile recuperare bzip2:/var/lib/apt/lists/partial/[nome_file]  
 Somma hash non corrispondente

Come si risolve?
La risoluzione di questo problema è decisamente più semplice di quello che sembra: basta cancellare i file contenenti la lista delle informazioni dei pacchetti installati. Per farlo basta aprire il terminale e digitare:

$sudo rm -r /var/lib/apt/lists/* -vf

Proviamo ora a scaricare la lista dei pacchetti aggiornata e vediamo che succede, dando sempre da terminale il comando

$sudo apt-get update
 
il messaggio di errore non dovrebbe essere più visualizzato e dovrebbe essere possibile scaricare ed aggiornare tutti i pacchetti!

Nessun commento:

Posta un commento