[Primipassi] Interruzione dist-upgrade causa "no space left on device"
peterpunk
peterpunk@hackbloc.it
Lun 13 Ago 2012 16:16:56 CEST
On Sun, 12 Aug 2012 14:58:40 +0200 f.n@teletu.it wrote:
> Ciao.
>
> Per prepararmi al ferragosto, ho deciso di procedere a ciò che
> avevo rinviato da più di un anno: dist-upgrade lenny->squeeze.
> Tutto stava procedendo bene, fino all'impiantarsi del processo per
> la causa in oggetto.
>
> A dire il vero apt-get aveva segnalato la necessità di 1400/1500
> MB di spazio; tuttavia, alla prova dei fatti, i 2GB a disposizione
> si sono rivelati non sufficienti.
> Probabilmente un sano autoclean prima di partire avrebbe evitato
> il problema (:/) Il primo segnale di errore è apparso
> all'estrazione del pacchetto libdb4.7-java-gcj (a naso dire non
> molto lontano dalla conclusione: quanto spazio sarebbe servito in
> più?)
>
> La situazione è la seguente:
> - il sistema pare gestibile: si avvia (almeno in
> single-user-mode), collegandosi anche alla rete;
> - tentando un apt-get autoclean/remove (che non so neppure se sia
> a questo punto sano) si ottiene un messaggio di errore essendo
> dpkg stato interrotto;
> - d'altronde il dpkg --configure -a suggerito non può risolvere il
> problema, non avendo spazio;
> - se la cosa potesse tornare utile, avevo avviato lo script per la
> registrazione del output.
>
> Come potrei procedere per evitare la reinstallazione del sistema
> da zero? A me verrebbe da eliminare a mano
> da /var/cache/apt/archives/ i .deb obsoleti; oppure si può forzare
> un apt-get autoclean? E comunque come riprendere il processo di
> installazione?
>
Il motivo per cui il sistema e` rimasto gestibile e` da imputare al
fatto che nelle varie partizioni, almeno con le installazioni
standard, una parte di spazio, di default pari al 5%, viene
riservata all'utente root per eventuali operazioni di manutenzione
straordinaria ;-)
Questo e` bene saperlo, perche` all'occorrenza e` possibile
recuperare anche da qui un po' di memoria con tune2fs, ma trattandosi
di un'operazione potenzialmente rischiosa, tralasciamo per ora di
parlarne qui.
Io proverei dunque a far ripartire il processo di aggiornamento dopo
aver recuperato tutto lo spazio di memoria recuperabile in modo
indolore.
Quanti kernel hai?
Lo puoi vedere, ad esempio, con:
ls /lib/modules/
oppure con
dpkg -l | grep "linux-image"
Se ne hai piu` d'uno, recupererai dai 60 agli 80 MB di spazio per
ogni vecchio kernel rimosso con il flag purge.
Continuerei poi la pulizia con:
aptitude purge `deborphan` (anche piu` volte)
aptitude purge ~c (anche piu` volte)
aptitude purge `deborphan` (di nuovo e anche piu` volte! :-)
localepurge
logrotate -f /etc/logrotate.conf
E darei anche un'occhiata alle dimensioni di /var/tmp che col tempo
puo` crescere a dismisura.
A questo punto proseguirei con:
apt-get autoremove && apt-get clean
aptitude update && aptitude safe-upgrade
aptitude dist-upgrade && aptitude clean
Facci sapere :-)
peterpunk spezzathread
Maggiori informazioni sulla lista
primipassi