Sul nuovo computer, sul mio vecchio disco EIDE da 200GB, ho voluto iniziare installando Debian Etch, col cd netinst, formattando /root, /usr e /var e lasciando buono tutto il resto, ovvero in sostanza la mia home directory.
L’installazione procede bene fino al momento di configurare apt.
L’update della lista dei pacchetti si pianta in connessione. Attivo una console, uccido il processo di apt, tento altri mirror. Stessa storia.
Penso di non essere connesso a internet. Provo da una console a tirare giù con wget qualche pagina web, tipo la home page di google. Funziona.
Provo a tirare giù, sempre con wget, la home page di qualche mirror.
Funziona.
Ok, decido di procedere lo stesso con l’installazione, installo grub, la macchina riparte perfettamente. Con vim edito /etc/apt/sources.list, e procedo all’update. Nulla, le connessioni vanno in timeout. Provo
altri mirror… nulla, stesso esito. In qualche caso il trasferimento comincia e poi va in stallo.
Provo con wget a tirare giù qualche pagina, anche le home page degli stessi mirror. Il comportamento è casuale. A volte va, a volte non va.
Provo google e altri siti: wget tira giù tutto perfettamente.
Allibisco! Immagino sia un problema di apt. Provo a verificare il CD, e mi dice che è ok. Il mistero si infittisce.
Dopo ardua ricerca in rete, richieste sulla mailing list Debian Italian e al mio personal guru, riesco a trovare la soluzione:
» Ubuntu Feisty: problemi di rete (per colpe altrui…)
» Bug #89160 in linux-source-2.6.20 (Ubuntu)
Il problema del malfunzionamento di apt era dovuto al mio router ADSL del menga: il V-box Sagem di parla.it che viene messo in difficoltà dalla TCP window scale option dei kernel più recenti.
La soluzione è disabilitare il TCP window scaling:
echo “net.ipv4.tcp_window_scaling = 0″ >> /etc/sysctl.conf
sysctl -p
e poi tutto funziona come si deve.
In fase di installazione di Debian questo purtroppo non si può fare. Per cui, per ovviare al problema, è necessario:
- Bloccare apt in fase iniziale di installazione, attivando una console e uccidendo il processo apt
- Proseguire con l’installazione con la configurazione di LILO o di GRUB
- Una volta riavviato il sistema, applicare i comandi summenzionati per disabilitare il TCP window scaling