Visualizzazione post con etichetta apt-get. Mostra tutti i post
Visualizzazione post con etichetta apt-get. Mostra tutti i post

martedì 31 maggio 2011

"Hash mismatch" su apt-get update usando proxy server

Chi utilizza una distribuzione Debian o una sua derivata (Ubuntu, Mint, Pinguy, etc.) dietro ad un proxy server,  come ad esempio all'interno di una rete aziendale, ecc. , nel momento in cui esegue il comando apt-get update per aggiornare la cache dei pacchetti dai repository standard, può riscontrare a console degli errori di questo tipo:

Se la localisation del sistema operativo e in lingua inglese:
....
W: Failed to fetch http://ir.archive.ubuntu.com/ubuntu/dists/..../Packages.bz2  Hash Sum mismatch
....
E: Some index files failed to download, they have been ignored, or old ones used instead.

Se la localisation del sistema operativo e in lingua italiana:
.....
Impossibile ottenere http://it.archive.ubuntu.com/ubuntu/dists/..../Packages.bz2 Somma Hash non corrispondente
.....
Impossibile scaricare alcune file di indice, essi verranno ignorati, oppure si useranno quelli precedenti.


Questo problema è dato dal fatto che nel proxy server è rimasta una cache "vecchia" che prende il sopravvento per alcune intestazioni di file rispetto a quelle presente nel repository pubblico e di conseguenza il checksum fallisce.

Di soluzioni ce ne potrebbero essere diverse, e forse la più corretta sarebbe quella di chiedere all'amministratore del proxy di fare regolarmente una pulizia della cache relativa agli url dei repository di aggiornamento ...
Tuttavia, l'operazione più veloce che io conosco ed utilizzo in questi casi, è quella di intervenire sulla macchina locale, ossia quella su cui si presenta il problema (su cui ho il pieno controllo come amministratore - o sono un "sudoer user" -, altrimenti non potrei lanciare 'apt-get update' ;-) )
In pratica elimino le liste e i file parziali sul computer locale con i quali viene fatto il checksum rispetto alle liste scaricate dalla rete (sia che queste provengano dal proxy o direttamente dal web..). In tal modo, "forzo" il server proxy a fare un refresh per ricaricarmi le liste complete dei pacchetti, che in questo caso si deve rivolgere all'URL esterno per avere le copie dei file originali aggiornati...

Ecco i pochi e semplici passi da compiere (testato su una Ubuntu Server 10.04 LTS x86_64):
rm -rf /var/lib/apt/lists/* 
mkdir -p /var/lib/apt/lists/partial
apt-get update

Anteporre il comando 'sudo' a tutti i 3 comandi sopracitati se si sta operando con un utente non-root, ma che può essere delegato a ruoli amministrativi (generalmente gruppo "admin" sui sistemi Ubuntu).

Chiunque è pregato di lasciare commenti e/o suggerimenti nel caso in cui ritiene che abbia omesso o descritto qualcosa in maniera imprecisa. Grazie.



Cordiali saluti,
Gabriele
http://www.gabrielezappi.net
GNU/Linux user #380098

giovedì 19 agosto 2010

Linux Ubuntu - Repository aggiuntivi per codecs e apps "non-free"

In una installazione desktop, dove si prevede di far uso anche di applicativi multimediali e codec, free e non-free, il primo repository un po' più ufficiale da aggiungere sarebbe Medibuntu.
Medibuntu aggiunge una serie di pacchetti dediti alla gestione, conversione, visualizzazione di formati multimediali, oltre a i codec più diffusi per aggiungere la compatibilità a tutti i formati video (divx,xvid, dvdcss, mp4, avi, wmv) e audio (mp3,ogg,flac,wma) più diffusi, e altre applicazioni di terze parti già pronte per la distribuzione (es. googleearth, realplayer, etc.).

Le istruzioni per l'aggiunta dei repository sono al seguente link : https://help.ubuntu.com/community/Medibuntu
Tuttavia, il comando da dare a linea di terminale per l'aggiunta è il seguente:

sudo wget --output-document=/etc/apt/sources.list.d/medibuntu.list  http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list && sudo apt-get --quiet update && sudo apt-get --yes --quiet --allow-unauthenticated install medibuntu-keyring && sudo apt-get --quiet update


La lista dei pacchetti aggiunti dal repository di medibuntu, sarà già disponibile nei gestori di pacchetti grafici synaptic (per chi fa più uso di ambiente Gnome) o KPackageKit (più a portata di mano per chi usa ambiente grafico KDE).
Se si desidera che la lista di pacchetti aggiuntivi sia disponibile anche nel nuovo Ubuntu Software Center (Ubuntu 9.10+), occorre dare il seguente comando:

sudo apt-get install app-install-data-medibuntu


Una delle cose principali che bisognerebbe installare dopo l'aggiunta di questo repository, se si vuole avere la compatibilità di tutti i formati audio e video esistenti (indipendentemente dal software che si usa per la visualizzazione dei video e/o ascolto di musica) è l'aggiunta dei codec, compatibilmente all'architettura del vostro sistema, con il seguente comando:

Se siamo in ambiente 32 bit:

sudo apt-get install w32codecs non-free-codecs

Se invece siamo in un linux Ubuntu a 64 bit:
sudo apt-get install w64codecs non-free-codecs


Alla prossima.
;-)