Comment supprimer un noyau non fonctionnel après la mise à jour?

15

J'ai. une question simple. Après avoir mis à jour mon noyau, je ne pouvais pas démarrer (bloqué sur l'écran violet) à moins d'avoir choisi l'ancien noyau. Alors, comment puis-je supprimer le nouveau noyau avec synaptique. Et comment faire cela en toute sécurité? Je suis à Quantal Quetzel. Mon noyau est 3.5.0-40. Le noyau de travail est 3.5.0-39. De plus, comment puis-je empêcher les mises à jour du noyau d'apparaître dans le gestionnaire de mise à jour? Merci.

Dave
la source
quelle est la version du noyau? vous souhaitez supprimer?
mojo706
Mon noyau est 3.5.0-40
Dave
1
Si vous préférez que les réponses incluent des informations sur la prévention de la réinstallation du nouveau noyau avec vos autres mises à jour , vous souhaiterez peut-être l'inclure dans votre question.
Eliah Kagan
Je pense qu'il n'est pas sage de supprimer le noyau ou d'arrêter les mises à jour du noyau, car ce sont généralement des mises à jour de sécurité. Voir cette question sur une meilleure pratique.
jarno

Réponses:

28

Pour supprimer en toute sécurité le noyau indésirable, ouvrez une session de terminal et exécutez la commande:

Trouver le nom du package du noyau

dpkg -l | grep linux-image

Au moment de la rédaction, sur l' amd64/x86_64 architecture, le nom de l'image était:linux-image-$(uname -r)-generic

Pour les images de noyau non signées, comme celles créées par les pilotes nvidia, l'image peut être: linux-image-unsigned-4.20.17-042017-generic

Supprimer (purger - supprimer également tous les fichiers de configuration)

sudo apt-get purge linux-image-3.5.0-40-generic

REMARQUE: Pour Ubuntu 18.04 LTS ou version ultérieure, vous souhaiterez peut-être également supprimer n'importe quel linux-modulesou les linux-headerspackages de la même version pour économiser de l'espace disque / garder votre système au mieux.

Terry Wang
la source
Oh, je n'ai pas besoin de faire sudo update-grub après ça?
Dave
Le script postrm du paquet mettra à jour grub pour vous lorsque vous le supprimerez (le purgerez) ;-)
Terry Wang
Merci Terry qui a résolu mon problème. Maintenant, comment garder les mises à jour du noyau hors du gestionnaire de mise à jour?
Dave
sudo apt-get update && apt-get dist-upgrade -y, je ne sais pas si vous avez linux-current-genericou linux-image-generic-lts-raringsur des versions non LTS.
Terry Wang
2
sudo apt-get remove linux-image-3.5.0-40*.

Je vous suggère de toujours garder au moins un noyau plus ancien disponible, juste au cas où vous auriez besoin de le démarrer pour des raisons auxquelles vous ne vous attendez pas pour le moment.

artisan
la source
Je veux parler de garder les grains. Des trucs très importants. J'en ai un autre à part celui-ci. Ty, je vais l'essayer demain et je reviendrai.
Dave
0

Aucune autre réponse à cette question ne semble correcte. La réponse complète est un mélange des deux avec une correction supplémentaire;

sudo apt-get purge *4.18.0-21*

Quel 4.18.0-21est le numéro de votre noyau, utilisez ls /bootpour le voir.

C'est ce qui m'a fait (bien que j'ai dû exécuter une commande similaire deux fois pour me débarrasser /lib/modules/4.18.0-21-generic).

Utilisez cette commande avec prudence pour vous assurer de ne rien supprimer de nécessaire.

Comme note latérale intéressante, dans mon cas a également linux-headers-generic-hwe-18.04été supprimé, et quand j'ai essayé de le réinstaller, il voulait réinstaller le dernier noyau, donc je n'ai pas fait ça. Et, la recherche a alors prouvé qu'il faisait partie du noyau 4.18.0-21; https://packages.ubuntu.com/bionic-updates/linux-headers-generic-hwe-18.04

Roel Van de Paar
la source