Il mio blog-spazio.

No space left on device

Ciao a tutti, se mi avete trovato vuol dire che avete questo problema.
Vi spiego come risolvere.
Come dice appunto l'errore,
No space left on device, avete finito lo spazio.
Succede spesso su /boot
dopo vari aggiornamenti.
Dando un
df -HT

potreste notare una roba simile:
/dev/sda2 ext3 473M 454M 0 100% /boot

Quel 100% vuol dire: completamente pieno!
Quindi la macchina non riuscirà più ad aggiornare il kernel.

Potreste rilevare anche i seguenti problemi:

dpkg è stato interrotto. È necessario eseguire "sudo dpkg --configure -a" per correggere il problema.


oltre che

Impossibile impostare il blocco /var/lib/dpkg/lock - open (11: Risorsa temporaneamente non disponibile)

e

Impossibile acquisire il blocco sulla directory di amministrazione (/var/lib/dpkg/). Un altro processo potrebbe tenerla occupata.

+
dpkg: errore: un altro processo detiene il blocco su database di stato di dpkg


Non disperate!
Semplicemente il file LOCK che gestice apt-get e dpkg è rimasto nella sua sede, e fa credere al sistema che il processo non può essere eseguito perchè in uso da altri processi, cosa falZa.

Andiamo per gradi:
uname -a
e vedete quale kernel state usando
ad esempio io sono su
4.13.0-32.35~16.04.1 amd64 Linux kernel image for version 4.13.0 on 64 bit x86 SMP

Segniamoci che 4.13.0-32.35 è il nostro (nel vs caso sarà diverso)

Diamo un bel
sudo rm /var/cache/apt/archives/lock
ed anche
sudo rm /var/lib/dpkg/lock

(vi sarà chiesta la pwd di root)

Ora scoprite quanti linux-image e header avete sulla partizione dando

dpkg -l | grep linux-image-
poi
dpkg -l | grep linux-headers-


Ad esempio io sono messo così:

$ dpkg -l | grep linux-headers-
ii linux-headers-4.10.0-38 4.10.0-38.42~16.04.1 all Header files related to Linux kernel version 4.10.0
ii linux-headers-4.10.0-38-generic 4.10.0-38.42~16.04.1 amd64 Linux kernel headers for version 4.10.0 on 64 bit x86 SMP
ii linux-headers-4.13.0-31 4.13.0-31.34~16.04.1 all Header files related to Linux kernel version 4.13.0
ii linux-headers-4.13.0-31-generic 4.13.0-31.34~16.04.1 amd64 Linux kernel headers for version 4.13.0 on 64 bit x86 SMP
ii linux-headers-4.13.0-32 4.13.0-32.35~16.04.1 all Header files related to Linux kernel version 4.13.0
ii linux-headers-4.13.0-32-generic 4.13.0-32.35~16.04.1 amd64 Linux kernel headers for version 4.13.0 on 64 bit x86 SMP
ii linux-headers-4.4.0-112 4.4.0-112.135 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-112-generic 4.4.0-112.135 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii linux-headers-4.4.0-53 4.4.0-53.74 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-53-generic 4.4.0-53.74 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii linux-headers-4.4.0-75 4.4.0-75.96 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-75-generic 4.4.0-75.96 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii linux-headers-4.4.0-77 4.4.0-77.98 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-77-generic 4.4.0-77.98 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii linux-headers-4.4.0-78 4.4.0-78.99 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP


e

$ dpkg -l | grep linux-image-
ii linux-image-4.10.0-38-generic 4.10.0-38.42~16.04.1 amd64 Linux kernel image for version 4.10.0 on 64 bit x86 SMP
ii linux-image-4.13.0-31-generic 4.13.0-31.34~16.04.1 amd64 Linux kernel image for version 4.13.0 on 64 bit x86 SMP
ii linux-image-4.13.0-32-generic 4.13.0-32.35~16.04.1 amd64 Linux kernel image for version 4.13.0 on 64 bit x86 SMP
ii linux-image-4.4.0-112-generic 4.4.0-112.135 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-53-generic 4.4.0-53.74 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-75-generic 4.4.0-75.96 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-77-generic 4.4.0-77.98 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.10.0-38-generic 4.10.0-38.42~16.04.1 amd64 Linux kernel extra modules for version 4.10.0 on 64 bit x86 SMP
ii linux-image-extra-4.13.0-31-generic 4.13.0-31.34~16.04.1 amd64 Linux kernel extra modules for version 4.13.0 on 64 bit x86 SMP
iF linux-image-extra-4.13.0-32-generic 4.13.0-32.35~16.04.1 amd64 Linux kernel extra modules for version 4.13.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-112-generic 4.4.0-112.135 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-53-generic 4.4.0-53.74 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-75-generic 4.4.0-75.96 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-77-generic 4.4.0-77.98 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP


Mi lascio solo le versioni più vicine alla mia, (di backup) oltre che, la mia in uso. (ricordate, l'avete appuntata sopra con uname -a)

Quindi inizio a cancellare, il comando che eseguo riguarda me, voi dovete cancellare quelli che vi trova,



sudo dpkg -P linux-headers-vostraversionevecchia...

esempio:
sudo dpkg -P linux-headers-4.4.0-78-generic
sudo dpkg -P linux-headers-4.4.0-78
sudo dpkg -P linux-headers-4.4.0-77-generic
sudo dpkg -P linux-headers-4.4.0-77
sudo dpkg -P linux-headers-4.4.0-75-generic
sudo dpkg -P linux-headers-4.4.0-75
sudo dpkg -P linux-headers-4.4.0-53-generic
sudo dpkg -P linux-headers-4.4.0-53
sudo dpkg -P linux-headers-4.4.0-112-generic
sudo dpkg -P linux-headers-4.4.0-112
sudo dpkg -P linux-headers-4.10.0-38
sudo dpkg -P linux-headers-4.10.0-38-generic
sudo dpkg -P linux-image-4.4.0-112-generic
sudo dpkg -P linux-image-4.4.0-53-generic
sudo dpkg -P linux-image-4.4.0-75-generic
sudo dpkg -P linux-image-4.4.0-77-generic
sudo dpkg -P linux-image-4.4.0-78-generic
sudo dpkg -P linux-image-4.10.0-38-generic
sudo dpkg -P linux-image-extra-4.4.0-112-generic
sudo dpkg -P linux-image-extra-4.4.0-53-generic
sudo dpkg -P linux-image-extra-4.4.0-75-generic
sudo dpkg -P linux-image-extra-4.4.0-77-generic
sudo dpkg -P linux-image-extra-4.4.0-78-generic

oppure

sudo apt-get purge linux-headers-versionivecchie
sudo apt-get purge linux-image-versionivecchie


L'Output di successo è il seguente

$ sudo dpkg -P linux-headers-4.4.0-77
(Lettura del database... 425256 file e directory attualmente installati.)
Rimozione di linux-headers-4.4.0-77 (4.4.0-77.98)...
$
e così via.


Avete svuotato un bel pò.
Potete tornare a fare aggiornamenti.

apt-get update
apt-get upgrade



Ciao a tutti.