Après une récente mise à jour, je reçois une alerte disant:
The volume boot has only 0 bytes disk space remaining
Mais mon ordinateur dispose de beaucoup d’espace HD libre. Est-ce que quelqu'un sait comment je résous ceci? (Si cela est pertinent, j'utilise toute la fonctionnalité de chiffrement de disque de l'image d'installation alternative pour Ubuntu 12.04).
Pour lister tout le noyau:dpkg --get-selections | grep "linux-image-[[:digit:]].*" | tr "\t" ";" | cut -d ";" -f1
Le résultat ressemble un peu à ceci:
linux-image-3.19.0-7-generic
linux-image-3.18.0-13-generic
linux-image-3.16.0-23-generic
Ensuite, retirons le noyau 3.16,Sudo apt-get purge linux-image-3.16.0-23-generic
puis tous les paquets inutilisés du système:Sudo apt-get autoclean && Sudo apt-get autoremove
La cause était en effet de vieilles images du noyau.
Pour nettoyer tout ce que je devais faire était de lancer une ligne:
Sudo apt-get autoclean && Sudo apt-get autoremove
Cela reconnaissait automatiquement les anciens noyaux et les supprimait.
Il se peut que votre partition /boot
ait accumulé trop de versions du noyau lors de la mise à niveau au fil du temps. Cette partition est susceptible d'être séparée de votre grande partition de disque (montée en tant que /
). Vous pouvez vérifier l'espace de partition /boot
comme ceci (recherchez la ligne avec/boot):
df -h
Il y a une belle page sur comment enlever les vieux noyaux .
En bref, vérifiez votre version actuelle du noyau, obtenez la liste de ce qui est installé, puis apt-get supprimez les anciennes versions. Il existe également une commande "magique" sur une page sur la page qui fera tout cela pour vous. Mais utilisez-le à vos risques et périls.
Instructions plus en détail:
Obtenez la version actuelle du noyau, celle que vous voulez conserver :
uname -r
Obtenez la liste de tous les noyaux installés:
dpkg -l | grep linux-image-
Exécutez apt-get remove sur les noyaux que vous souhaitez supprimer. Pas sur le dernier ! Par exemple:
Sudo apt-get remove linux-image-2.6.32-22-generic
Plus de notes:
dpkg -l
vous indiquera le statut du paquet (noyau) avant le nom du paquet. Par exemple:
rc linux-image-3.13.0-39-generic ...
ii linux-image-3.13.0-40-generic ...
Sur cette base, vous pouvez répertorier uniquement les packages du noyau installés:
dpkg -l | grep "ii.*linux-image-"
Solution alternative , à l'aide de l'outil graphique buntu Tweak .
Installez et accédez à Computer Janitor, vérifiez les paquets Système-> Ancien noyau et Système-> Unneeded, puis appuyez sur Nettoyer.
Utilisez ce script pour supprimer tous les anciens noyaux de la version actuelle et précédente (la dernière version du noyau)
KERNELMAGES=`ls -lRt /boot/vmlinuz-*| awk -F/ '{print $3}' | grep -v $(uname -r) | sed 1d | sed -e 's/vmlinuz/linux-image/g'`
KERNELHEADERS=`ls -lRt /boot/vmlinuz-*| awk -F/ '{print $3}' | grep -v $(uname -r) | sed 1d | sed -e 's/vmlinuz/linux-headers/g'`
for PURGEKERNEL in `echo $KERNELMAGES $KERNELHEADERS`; do
apt-get autoremove -y && apt-get purge $PURGEKERNEL -y
done