[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