Nettoyer la partition /boot des kernels non utilisés sous Ubuntu
Si vous utilisez Ubuntu, vous avez peut être déjà rencontré ce souci. Au fur et à mesure que les temps passe, vous mettez votre distribution à jour, et parfois les mises à jours contiennent des mises à jour du noyau (kernel). C'est une bonne chose, mais malheureusement, l'installation de nouveaux noyaux ne supprime pas les anciens. Et si l'on ne fait jamais le ménage, un jour on a le droit à un beau message de Ubuntu du type : "Espace insuffisant sur la partition /boot" et là, il est alors impossible d'installer de nouveaux noyaux... Deux solutions : agrandir la partition /boot ou bien faire un peu de ménage dans les kernels installés !
Personnellement j'aime avoir un système propre, je suis donc partisan pour faire le grand ménage. Pour commencer, il est important d'identifier le kernel utilisé actuellement par le système, afin de ne pas lancer une désinstallation de celui-ci. Ouvrez donc un terminal et entrez la commande suivante :
uname -r
Je vais illustrer mon propos avec un exemple. Dans mon cas, le terminal me répond : 3.8.0-27-generic.
Ensuite, il convient d'identifier les kernels installés sur votre machine. Pour cela, on va les identifier à l'aide de l'outil dpkg et d'un petit grep pour filtrer le résultat :
dpkg -l | grep -Ei "linux-headers|linux-image"
La console va alors vous renvoyer les différents kernels installé sur votre machine :
On voit donc ici que je dispose des kernels suivants :
- 3.8.0-19
- 3.8.0-19-generic
- 3.8.0-26
- 3.8.0-26-generic
- 3.8.0-27
- 3.8.0-27-generic
J'ai donc deux anciens kernels et celui que j'utilise actuellement. Je peux donc supprimer ceux qui ne sont plus utilisés, et ce, de la manière suivante :
sudo apt-get remove linux-headers-3.8.0-19 linux-image-3.8.0-19 linux-headers-3.8.0-19-generic linux-image-3.8.0-19-generic
Il suffit en fait pour chaque kernel de supprimer les entêtes (kernel-headers) et l'image (kernel-image).
Petit conseil perso : garder toujours le dernier kernel utilisé. En effet, si jamais un jour vous avez un soucis avec votre kernel "actuel", vous pourrez toujours booter avec l'ancien 😉
Dans mon cas ici, je supprime donc seulement le 3.8.0-19 et le 3.8.0-19-generic.
Et voilà une partition /boot toute propre 🙂
Partager la publication "Nettoyer la partition /boot des kernels non utilisés sous Ubuntu"
Nickel, ton tutos tombe à point nommé, j'avais quelque kernel que je n'utilisais plus. Merci pour la marche à suivre ainsi que les explication 😉
De rien 😉
Merci Sandstorm. Ca fait plusieurs fois que j'utilise ton tuto pour nettoyer mes PC et le résultat et là.
A chaque nettoyage de Kernel j’enlève 270 Mo de fichier inutiles sur ma partition de boot.
Résultat : Mon PC retrouve sa vitesse de boot d'origine.
Pour info, j'ai un dual boot windows et cette manipulation n'altère en rien la fonction de dual boot.
C'est donc parfait.
Merci Alb1n pour ton commentaire. Cela fait toujours plaisir de savoir qu'un article est utile 😉
++
Bonsoir Sandstorm,
J'ai un petit souci avec la 2nde manipulation, en recopiant :
dpkg -l | grep -Ei « linux-headers|linux-image »
Le terminal me réponds :
grep: linux-headers: Aucun fichier ou dossier de ce type
linux-image : commande introuvable
Du coup je ne trouve pas les versions de Kernel !
C'est galèèèère ! (et sûrement parce que je n'y connais rien !)
Par avance, merci de ton aide !
Salut Romain,
Petit soucis de formatage automatique du texte par WordPress... Il faut utiliser des guillemets anglais, de type " "
J'ai modifié mon fichier de formatage automatique pour que les bons guillemets s'affichent à nouveau !
++
Merci Sandstorm,
Impeccable, du coup j'ai gardé les deux dernières versions (pour moi 3.13.0-36 (en cours) et 35 (version précédente). J'espère ne pas avoir fait de boulette ! ^^
Encore merci pour tes conseils !
Bonjour,
Voila je viens de lire cet article pour nettoyer ma /boot.
Quand je fais uname -r il me dit 3.11.0-12-generic
Puis quand je recherche les kernels presents je trouve :
3.11.0-12
3.11.0-12-generic
3.11.0-19
3.11.0-19-generic
3.11.0-26
3.11.0-26-generic
-generic
Ainsi que deux linux-images ...
Je me pose donc des questions ... Est ce que mon kernel est a jour ? Dois-je supprimer ceux qui ne sont pas le mien ?
Merci d'avance.
Salut Engelbarte,
Si la commande uname -r te retourne 3.11.0-12-generic c'est que c'est le kernel qui est utilisé par ton système.
Tu peux supprimer les autres si tu veux, mais les autres semblent plus récents. Pourquoi donc utilises-tu ce kernel plutôt qu'un plus récent, ça je ne sais pas, et je suppose que tu ne le sais pas non plus...
Le mieux serait peut être que tu essaies de démarrer sur un kernel plus récent (le 3.11.0-26-generic par exemple), et si ça se passse bien, tu supprime les autres.
Au pire tu peux déjà supprimer le 19 et le 19-generic...
++
Oui voilà je ne sais pas pourquoi je suis sur un vieux kernel.
D'accord je vais faire ça. Merci de ton aide. 🙂
De rien.
Viens me redire ce que ça donne 😉
++
Excellent article, utile, simple et efficace.
Merci beaucoup !
Merci pour ton commentaire Jérémie ! 🙂
Super chrome a peine 6 mois sur linux j'ai failli desesperer mais non !!!!!!
merci
Merci beaucoup! J'avais ce problème depuis un petit bout et je ne savais comment le régler (je suis nouvelle sur ubuntu). Maintenant, j'ai une partition boot toute propre. 🙂
Content d'avoir pu t'aider Claudia. Amuses toi bien sur Ubuntu !!
A bientôt 😉
Merci infiniment pour ce tuto très très utile car je ne pouvais pas installer les nouvelles mises à jour... ^^
J'ai juste des lignes des anciennes versions kernel avec "-extra" mais rien de bien lourd en espace disque je pense ?
Sinon aurais-tu un tuto pour mettre ubuntu en FR ? Car j'essaye tant bien que mal avec le language setting mais ça ne fonctionne pas ;( et le qwerty c'est difficile par moment ! Surtout pour un non-initié comme moi !
Salut Gael,
Je n'avais pas vu ton message, désolé :s
Est-ce que ton problème est réglé ?
Pas de souci 😉
Au niveau de l'espace dans /boot oui c'est good, merci !
Par contre, je suis toujours embêté avec le système en anglais. Pour être précis, j'ai donc un serveur dédié chez Online.net avec accès en interface graphique, j'y accède via X2go. Dans les paramètres de ce logiciel je peux modifier le clavier, j'ai donc mis :
Keyboard layout : fr
Keyboard model : pc105/fr
Mais rien à faire, c'est toujours en qwerty !
Et idem lorsque je suis sur le serveur, je peux changer le "Language" mais "l'installation a rencontré un problème etc..." quand j'essaye de mettre le système en français !
Peut-être que cette question est hors-sujet par rapport au Kernel !! Si tu as un sujet où je pourrais poser cette question ?
A+
Salut Gael,
Ton environnement de bureau (gnome) est en anglais ?
si oui, essaie :
sudo dpkg-reconfigure locales
Si c'est juste le clavier qui est en qwerty, fais un :
ibus-setup
et dans l'onglet "Methode de saisie" vérifie que tu as bien un clavier azerty 🙂
++
Ok, le clavier azerty c'est OK ! Merci, mais le clavier numérique ne fonctionne pas ! Pas grave ya les touches au dessus du clavier pour remplacer ^^
Pour la langue de l'environnement : La commande que tu m'as donné fonctionne ! Donc ça met à jour les langues (update) dont FR-utf8. Lorsque je vais dans Settings - Language support, que je glisse France en premier et j'applique, j'ai cette erreur : http://img110.xooimage.com/files/b/3/d/d-di-langue-4e7c8cc.png
Si ya pas de solution, tant pis !
Après avoir fais le reconfigure, tu as fais :
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
? Avant de retourner dans le menu de langue, histoire de vérifier que tout est bien à jour.
Pour la pavé numérique, s'il fonctionne pas du tout il faut voir si tu t'es pas gourré dans le type de clavier que tu as choisi...
Oui j'ai bien fait les commandes suivantes mais ça bug quand même ! Au pire c'est rien, du moment que le clavier est en azerty, la langue de l'environnement en anglais ce n'est pas grave ! Toujours la même chose pour le pavé numérique, c'est qu'un détail !
Merci pour toute ton aide,
Continues comme ça 😉
Bonjour, je viens d'essayer ton tuto, j'obtiens tous les kernels vétustes( il y en a beaucoup) mais quand je fais le remove, apres la lecture des informations il renvoie :
Vous pouvez lancer « apt-get -f install » pour corriger ces problèmes :
Les paquets suivants contiennent des dépendances non satisfaites :
linux-image-extra-3.13.0-24-generic : Dépend: linux-image-3.13.0-24-generic mais ne sera pas installé
linux-image-extra-3.13.0-68-generic : Dépend: linux-image-3.13.0-68-generic mais ne sera pas installé
E: Dépendances non satisfaites. Essayez « apt-get -f install » sans paquet
mais le probleme est que je ne peux pas faire sudo apt-get -f install car je n ai pas d'espace dispo sur le /boot
Une idée de solution?
un petit sudo apt-get autoremove ?
voici le résultat de l'autoremove, je n'ai pas assez de mémoire dispo pour supprimer des données...
trachino@track-ubuntu4evr-ProBook:~$ sudo apt-get autoremove
[sudo] password for trachino:
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Vous pouvez lancer « apt-get -f install » pour corriger ces problèmes.
Les paquets suivants contiennent des dépendances non satisfaites :
linux-image-extra-3.13.0-68-generic : Dépend: linux-image-3.13.0-68-generic mais il n'est pas installé
E: Dépendances manquantes. Essayez d'utiliser l'option -f.
trachino@track-ubuntu4evr-ProBook:~$
Test :
sudo apt-get clean
et ensuite de relancer le apt-get -f install
sinon essaie :
sudo apt-get purge linux-image-extra-3.13.0-68-generic
Si cela ne fonctionne pas, à mon avis tu vas devoir faire un peu de nettoyage manuel. Commence par :
uname -r pour voir quel kernel tu utilises.
Puis teste de supprimer à la main le kernel le plus vieux. Par exemple on va dire que c'est le 3.13.0-50 :
cd /boot
rm ./vmlinuz-3.13.0-50-server
rm ./config-3.13.0-50-server
rm ./abi-3.13.0-50-server
rm ./System.map-3.13.0-50-server
rm ./vmcoreinfo-3.13.0-50-server
rm ./initrd.img-3.13.0-50-server
Ensuite mets à jour ton grub :
update-grub
Merci beaucoup, ça a résolu mon problème, je suis ravi! Big up a toi!
Bonjour,
j'ai fait une énorme bêtise, sans faire exprès j'ai aussi supprimé des données liées au kernel que j'utilise. Depuis, je suppose que c'est lié à ça, je ne peux plus me connecter sur ma session (à chaque fois que je me logge, je tombe de nouveau sur la page de loggin).
Pourrais tu m'aider ?
Salut Misaki,
Utilises-tu des drivers propriétaires ? (genre nVidia ou AMD ?)
Salut,
merci pour cette réponse rapide!
Je ne m'y connais pas du tout je ne sais pas ce que j'utilise. Sur internet j'ai vu qu'on pouvait regarder par "lspci" pour avoir des informations dessus et il y a l'air d'avoir des driver nVidia ("audio device: NVIDIA corporation [...]")
Ca risque d'être compliqué si tu ne sais pas.
Fais CTRL+ALT+F1 pour passer en mode console lorsque tu es sur ta page de login.
Ensuite identifie toi et tente un sudo apt-get -f install
Mais j'y crois pas trop. A mon avis c'est plus un problème de divers graphique, suite à une mise à jour du noyau...
en effet le -f install n'a rien changé est ce qu'il faut que je mette à jour les pilotes de la carte graphique ou quelque chose comme ça ?
Comment je peux réinstaller une version du noyau ?
tu peux vérifier les noyaux installés avec : dpkg -l | grep -Ei "linux-headers|linux-image"
Essaie de réinstaller tes drivers graphiques (si tu connais ta carte graphique...)
tu as Ubuntu de base (avec Unity) ?
J'ai pleins de noyaux installés c'est pour ça que je voulais faire le nettoyage, j'ai des 3.13 et 3.16 (avec celui utilisé 3.16.0-77-low-latency) et c'est là qu'au lieu de supprimer un par un les noyaux non utilisé j'ai eu la bêtise de faire :
"sudo apt-get remove linux-headers-3.16.5*
sudo apt-get remove linux-image-3.16.5*"
Et va savoir pourquoi les versions 3.16.7* on commencé à être supprimé (j'ai essayé de stopper mais c'était trop tard).
Il me semble que j'ai unity (14.04.4 LTS, trusty)
Je comprend pas trop. Tu utilisais le 3.16.0-77 ?? et à la fin de ton comm tu me parle de 3.16.7 ... !
As tu tenté : sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
Ah oui désolé, c'est la version 3.16.0-77 !
En parallèle j'essayais d'arranger le problème, j'ai fait "sudo apt-get install linux-lowlatency-lts-utopic" et j'avais aussi fait ce que tu m'as dit de faire (le "sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade")
Maintenant ça marche!
Il y a juste eu un rapport d'erreur au début mais maintenant même en rallumant il n'apparait pas tout parait ok.
Merci beaucoup pour ta vitesse de réponse, c'était vraiment super! 🙂
Si je peux te upvote quelque part, faire de la pub ou autre n'hésite pas!
PS: j'aimerais bien comprendre un peu mieux ubuntu pour être moins dépendante, aurais tu un conseil de bon tuto / livre ?
Salut Misaki,
Il n'y a pas de upvote. Mais tu peux partager sur les réseaux sociaux le site JusteGeek.fr et en parler à tes amis pour me faire connaitre davantage 😉
Tu veux comprendre Ubuntu ou Linux ?...
Salut Sandstorm,
merci pour le tuto je m'en suis servi pour la deuxième fois sur une ubuntu 17.(04je crois). Et ça va super bien.
Maintenant j'ai quand même une question à quoi correspondent les mention "rc" en bout de ligne dans la liste des kernels quand je lance la commande dpkg -l | grep -Ei "linux-headers|linux-image" ? Elle correspondent à des noyaux que j'ai enlevé, mais cela veut-il dire que ces éléments prennent de la place ? Du coup faut-il les enlever? Et comment ?
Merci encore pour ton aide.
Nano
Le statut "rc" signifie que le paquet est désinstallé mais que les fichiers de configuration sont encore présents.
Si tu veux vraiment tout supprimer, même les fichiers de configuration, alors utilise "purge" à la place de "remove" 🙂
++
Salut Sandstorm,
super ton tuto, j'ai effacé tous les fichiers "headers" inutiles qui encombraient mon PC. Par contre, je ne parviens pas à effacer les fichiers de type "image". Il m'affiche le message suivant :
Le paquet « linux-image-4.10.0-33-generic » n'est pas installé, et ne peut donc être supprimé
Help, stp.
Merci pour ton aide, Jérôme.
Salut Jérôme,
S'ils ne sont pas installées alors c'est bon non ?
N'y aurait-il pas indiqué "rc" en début de ligne ?
Salut Sandstorm,
merci pour ton retour. Effectivement, "rc" apparait en début de ligne alors que les images des 2 dernières versions ont le code "ii" en début de ligne.
S'ils ne sont pas installés, ils ne me dérangent pas plus que çà, c'était juste pour faire de la place dans le boot et un coup de ménage visuel. J'ai vu dans un autre de tes commentaires qu'on peut utiliser purge à la place de remove dans ce cas, c'est bien çà ?
Merci de ton aide, Jérôme.
Bonjour et merci pour ce post , j'ai dû effectuer le nettoyage ce matin car suite à 1 mise à jour la partition Boot était pleine ( elle est très petite ... ).
Toutefois , dans le terminal tous les noyaux sont encore visibles , anciens et nouveaux , certains avec "rc" en début de ligne et d'autres avec "ii" ! Que faut-il faire ? Merci .
Salut Jean,
"ii" signifie que c'est installé. Du moment que tu n'en as pas tout un tas en "ii" c'est bon...
Après la liste que tu vois avec les "rc" etc... ce n'est qu'une liste indicative, donc ca ne te prends pas de place, il n'y a donc rien à faire !
++
Merci Sandstorm 🙂
Voilà , mon noyau actuel est le 4.4.0-124 , indiqué " ii " .
Mais il y a aussi : extra 3.16.0-38 generic , indiqué "ii" , 3.16.0-38 generic , indiqué "ii" , 4.4.0-121 all , indiqué "ii" , 4.4.0-121-generic i386 , indiuqé "ii" , et d'autres encore ....
Ma question : est-ce que ça prend de la place , ou pas ?
Merci
Perso, voici ma vision des choses :
Lorsque j'installe un nouveau noyau, je conserve l'ancien pendant quelques jours, histoire de pouvoir revenir dessus en cas de problème impactant. Passé un certain délai (2 à 3 semaines), je désinstalle l'ancienne version si j'ai rencontré aucun problème.
Pour ton cas, ce que je ferai du coup :
- conserver bien évidemment le 4.4.0-124
- je supprimerai les noyaux 3.*
- si aucun problème avec le noyaux actuel je supprimerai aussi 4.4.0-121
++
Ok , merci Sandstorm , voilà c'est fait , il ne me reste plus que le noyau 4.4.0-124 , que je conserve jusqu'à l'arrivée du prochain noyau .
Tout fonctionne bien actuellement .
Merci pour tous ces renseignements .
++
Bonjour,
Je ne réussit pas à lancer la commande de suppression des Kernels. Ubuntu me renvoie un message indiquant des dépendances de paquets non satisfaites. Et me demande de lancer apt-get -f install
La commande est refusé car permission non accordée sur /Var/lib/dpkg/lock.
Je suis pourtant en admin.
Uname -r renvoie 4.13.0-39-generic
Je suis preneur de quelques bon conseil.
Dominique
Bonjour Dominique,
Tu dois avoir un process qui lock dpkg. Tu peux le trouver en faisant un 'ps aux' en tant que root dans ton terminal.
Sinon reboot et refais ton 'apt-get -f install'
++
Bonjour Sandstorm , la commande dpkg ... qui sert à identifier les kernels installés sur la machine ne fonctionne plus . J'ai l'impression que depuis mon dernier passage sur cette page quelque chose a été modifié .
Par contre , cette même commande trouvée sur le Wiki JG fonctionne bien , mais je n'ai pas comparé les deux pour trouver l'erreur .
Bonne soirée , Jean .
... En fait , j'aurais peut-être dû taper cette commande à la main plutôt que de faire un copié-collé . Pourtant , précédemment le copié-collé fonctionnait ...
Bonjour Jean,
Merci de 'info, je vais regarder. Cela provient sans doute des guillemets. En effet, sans doute à cause de mon nouveau thème les guillemets qui étaient des double quotes sont devenus des guillemets à la française... Du coup Linux ne les reconnait pas. En revanche, sur mon Wiki les guillemets n'ont pas changé...
J'essaie de regarder cela dans la journée.
++
Voilà, c'est réglé ! C'était dû à mon changement de thème 🙂
Effectivement , il me semblait bien que le thème avait changé ... 🙂
Bonjour,
Pas très douée j'ai essayé de nettoyer mon systeme avec la formule expliquée et voici la réponse :
Impossible de trouver de paquet correspondant à l'expression rationnelle « linux-headers-4.15.0-29 linux-image-4.15.0-29 linux-headers-4.15.0-29-generic »
Pouvez-vous m'apporter un peu d'aide
Merci par avance
Bonjour Didine,
Lorsque tu entres la commande dpkg -l | grep -Ei "linux-headers|linux-image" as tu bien "ii" d'indiqué en début de ligne ?
Peux tu nous poster un screenshot de cette commande ?
Re bonjour,
Cette fois c'est bon j'ai réussi a nettoyer
Comme quoi en relisant et avec de la persévérance tout est possible, même pour les débutantes!!
Oups j'ai fais un copier coller dans mail....
une vraie novice je vais essayer mais me souviens plus trop la manip....
Je ne parviens pas a mettre une photo dans cet espace commentaire...
pour la question : Lorsque tu entres la commande dpkg -l | grep -Ei "linux-headers|linux-image" as tu bien "ii" d'indiqué en début de ligne ?
effectivement il y a pas toujours ; "ii"
Seuls ceux avec "ii" sont installés 🙂
Bonjour,
Merci beaucoup pour votre aide, effectivement j'ai refait en tenant compte "ii" et ça marche!! seul bemol je sais toujours pas comment ; poster un screenshot
A voir...
Bonne journée
Bonjour encore un petit souci ce matin impossible de démarrer... j’ai fais plusieurs manip plus ou moins hasardeuse!!!et hop c'est reparti. Cependant lorsque je fais: dpkg -l | grep -Ei "linux-headers|linux-image" il y a plus rien.
et voici avec la commande df -h :
xxxxxxxxxxxx-DS3R:~$ df -h
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
udev 2,9G 0 2,9G 0% /dev
tmpfs 597M 8,8M 588M 2% /run
/dev/mapper/ubuntu--vg-root 223G 20G 193G 10% /
tmpfs 3,0G 56M 2,9G 2% /dev/shm
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 3,0G 0 3,0G 0% /sys/fs/cgroup
/dev/loop0 87M 87M 0 100% /snap/core/4830
/dev/loop1 384K 384K 0 100% /snap/timew-spirotot/14
/dev/loop2 87M 87M 0 100% /snap/core/4650
/dev/loop3 87M 87M 0 100% /snap/core/4917
/dev/sda1 472M 131M 317M 30% /boot
tmpfs 597M 64K 597M 1% /run/user/1000
que puis je faire pour liberer de l'espace? car je suppose que : /dev/loop2 87M 87M 0 100% c'est ça qui bloque.
Mille mercis par avance