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 !

logo de la distribution Linux Ubuntu

 

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 :

Liste des kernels installés

 

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 🙂

 

Retrouver facilement cette manip' sur le Wiki JG

 

Sandstorm

Sandstorm

Ingénieur Systèmes passionné d'informatique et de High-Tech, Sandstorm a créé JusteGeek.fr en 2013. Il aime les geekeries en tout genre.

Vous aimerez aussi...

64 réponses

  1. Guibz dit :

    Nickel, ton tutos tombe à point nommé, j'avais quelque kernel que je n'utilisais plus. Merci pour la marche à suivre ainsi que les explication 😉

  2. Alb1n dit :

    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.

  3. Romain dit :

    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 !

    • Sandstorm Sandstorm dit :

      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 !

      ++

      • Romain dit :

        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 !

  4. Engelbarte dit :

    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.

    • Sandstorm Sandstorm dit :

      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...
      ++

  5. Jérémie dit :

    Excellent article, utile, simple et efficace.

    Merci beaucoup !

  6. memuisier dit :

    Super chrome a peine 6 mois sur linux j'ai failli desesperer mais non !!!!!!
    merci

  7. Claudia dit :

    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. 🙂

  8. Gael dit :

    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 !

    • Sandstorm Sandstorm dit :

      Salut Gael,
      Je n'avais pas vu ton message, désolé :s
      Est-ce que ton problème est réglé ?

      • Gael dit :

        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+

      • Sandstorm Sandstorm dit :

        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 🙂
        ++

        • Gael dit :

          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 !

        • Sandstorm Sandstorm dit :

          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...

          • Gael dit :

            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 😉

  9. Hugo dit :

    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?

    • Sandstorm Sandstorm dit :

      un petit sudo apt-get autoremove ?

      • Hugo dit :

        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:~$

        • Sandstorm Sandstorm dit :

          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

        • Sandstorm Sandstorm dit :

          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

  10. misaki dit :

    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 ?

  11. misaki dit :

    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 [...]")

    • Sandstorm Sandstorm dit :

      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...

  12. misaki dit :

    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 ?

    • Sandstorm Sandstorm dit :

      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) ?

  13. misaki dit :

    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)

    • Sandstorm Sandstorm dit :

      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

  14. misaki dit :

    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 ?

  15. Sandstorm Sandstorm dit :

    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 ?...

  16. Nano Nous dit :

    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

  17. Sandstorm Sandstorm dit :

    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" 🙂
    ++

    • Jérôme dit :

      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.

  18. Sandstorm Sandstorm dit :

    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 ?

  19. JEROME dit :

    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.

  20. Jean dit :

    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 .

    • Sandstorm Sandstorm dit :

      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 !
      ++

  21. Jean dit :

    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

    • Sandstorm Sandstorm dit :

      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

      ++

      • Jean dit :

        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 .
        ++

  22. Dominique dit :

    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

    • Sandstorm Sandstorm dit :

      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'
      ++

  23. Jean dit :

    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 .

  24. Jean dit :

    ... 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 ...

  25. Sandstorm Sandstorm dit :

    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.
    ++

  26. jean dit :

    Effectivement , il me semblait bien que le thème avait changé ... 🙂

  27. Didine dit :

    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

  28. Sandstorm Sandstorm dit :

    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 ?

    • didine dit :

      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!!

  29. didine dit :

    Oups j'ai fais un copier coller dans mail....
    une vraie novice je vais essayer mais me souviens plus trop la manip....

  30. didine dit :

    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"

  31. Didine dit :

    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

  32. Didine dit :

    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

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.