Lorsque je lance dpkg --list 'linux-image*'
, le résultat indique que je n'ai que 4.10.0-37
installé:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=========================-=================-=================-=======================================================
un linux-image <none> <none> (no description available)
ii linux-image-4.10.0-37-gen 4.10.0-37.41 AMD64 Linux kernel image for version 4.10.0 on 64 bit x86 SMP
ii linux-image-extra-4.10.0- 4.10.0-37.41 AMD64 Linux kernel extra modules for version 4.10.0 on 64 bit
ii linux-image-generic 4.10.0.37.37 AMD64 Generic Linux kernel image
cependant, lorsque je montre le contenu de /boot
, il existe d'autres anciens noyaux:
[~]$ ls /boot
abi-4.10.0-37-generic config-4.8.0-37-generic memtest86+.bin vmlinuz-4.10.0-37-generic
abi-4.2.0-16-generic efi memtest86+.elf vmlinuz-4.10.0-37-generic.efi.signed
abi-4.2.0-42-generic grub memtest86+_multiboot.bin vmlinuz-4.2.0-16-generic
abi-4.8.0-37-generic initrd.img-4.10.0-37-generic System.map-4.10.0-37-generic vmlinuz-4.2.0-42-generic
config-4.10.0-37-generic initrd.img-4.2.0-16-generic System.map-4.2.0-16-generic vmlinuz-4.2.0-42-generic.efi.signed
config-4.2.0-16-generic initrd.img-4.2.0-42-generic System.map-4.2.0-42-generic vmlinuz-4.8.0-37-generic
config-4.2.0-42-generic initrd.img-4.8.0-37-generic System.map-4.8.0-37-generic vmlinuz-4.8.0-37-generic.efi.signed
J'utilise 4.10.0-37
:
[~]$ uname -r
4.10.0-37-generic
Puis-je supprimer en toute sécurité les anciens noyaux () de /boot
? Utiliser Sudo apt-get remove ...
ne fait rien, car ils ne sont pas "installés" pour le moment.
Vous pouvez supprimer en toute sécurité les noyaux inutilisés de/boot.
Idéalement, vous souhaitez utiliser votre gestionnaire de paquets (apt) pour la suppression. Vous voudrez peut-être voir si vous pouvez les supprimer en utilisant:
Sudo apt-get purge linux-image-4.2.0-16-generic
ou si apt ne fonctionne pas:
Sudo dpkg --purge linux-image-4.2.0-16-generic
ajouter ou répéter ce qui précède pour les noyaux (4.2.0-16, 4.2.0-42, etc.) que vous souhaitez supprimer.
Si ce qui précède ne fonctionne pas, vous pouvez les supprimer manuellement:
Sudo rm /boot/abi-4.2.0-16-generic
Sudo rm /boot/config-4.2.0-16-generic
Sudo rm /boot/initrd.img-4.2.0-16-generic
Sudo rm /boot/System.map-4.2.0-16-generic
Sudo rm /boot/vmlinuz-4.2.0-16-generic
ou si vous aimez vivre dangereusement, quelque chose comme:
Sudo rm /boot/*-4.2.0-16-generic
Un noyau supplémentaire (à celui que vous exécutez) est parfois laissé en tant que sauvegarde. Vous pouvez donc le faire en cas de problème avec le noyau en cours d'exécution.
Après avoir supprimé ces fichiers, vous devez mettre à jour votre chargeur de démarrage. Si vous utilisez GRUB, procédez comme suit:
Sudo update-grub
Je souhaiterais également savoir si un outil "plus propre" qui supprime les paquets d’apt sans supprimer les fichiers vous est utile.
EDIT:
Comme l'a souligné WinEunuuchs2Unix, cela ne supprime pas les fichiers d'en-tête. Normalement, lors de la suppression de vieux noyaux, vous ne supprimeriez pas seulement l'image, mais également les autres fichiers associés. Par exemple:
apt-get purge linux-image-4.2.0-16-generic linux-image-extra-4.2.0-16-generic linux-headers-4.2.0-16-generic linux-headers-4.2.0-16
Voir le lien ci-dessous pour plus de détails.