Comment supprimer les anciens noyaux inutilisés dans CentOS, RHEL et Fedora
Dans cet article, nous montrerons comment supprimer les images de noyau anciennes/inutilisées sur les systèmes RHEL/CentOS/Fedora. Cependant, avant de supprimer un ancien noyau, il est important de maintenir votre noyau à jour ; installez la dernière version afin d'exploiter les nouvelles fonctions du noyau et de protéger votre système contre les vulnérabilités découvertes dans les anciennes versions.
Pour installer ou mettre à niveau vers la dernière version du noyau sur les systèmes RHEL/CentOS/Fedora, lisez ce guide :
- Comment installer ou mettre à niveau vers la dernière version du noyau dans CentOS 7
Attention : Il est au contraire recommandé de conserver au moins un ou deux anciens noyaux sur lesquels se rabattre en cas de problème avec une mise à jour.
Pour afficher la version actuelle de Linux (noyau) exécutée sur votre système, exécutez cette commande.
uname -sr
Linux 3.10.0-327.10.1.el7.x86_64
Répertorier tous les noyaux installés sur le système
Vous pouvez lister toutes les images du noyau installées sur votre système comme ceci.
rpm -q kernel
kernel-3.10.0-229.el7.x86_64
kernel-3.10.0-229.14.1.el7.x86_64
kernel-3.10.0-327.3.1.el7.x86_64
kernel-3.10.0-327.10.1.el7.x86_64
Suppression des noyaux anciens/inutilisés sur CentOS/RHEL
Vous devez installer yum-utils, qui est un assortiment d'utilitaires qui s'intègrent à yum pour le rendre plus puissant et plus facile à utiliser, en étendant ses fonctionnalités d'origine dans plusieurs versions différentes. façons.
yum install yum-utils
L'un de ces utilitaires est package-cleanup que vous pouvez utiliser pour supprimer l'ancien noyau comme indiqué ci-dessous. L'indicateur de comptage est utilisé pour spécifier le nombre de noyaux que vous souhaitez laisser sur le système.
package-cleanup --oldkernels --count=2
Loaded plugins: fastestmirror, langpacks, product-id, versionlock
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-229.el7 will be erased
---> Package kernel.x86_64 0:3.10.0-229.14.1.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.1.2.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.14.1.el7 will be erased
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================================================================================================================================
Package Arch Version Repository Size
===============================================================================================================================================================================================
Removing:
kernel x86_64 3.10.0-229.el7 @anaconda 131 M
kernel x86_64 3.10.0-229.14.1.el7 @updates 131 M
kernel-devel x86_64 3.10.0-229.1.2.el7 @updates 32 M
kernel-devel x86_64 3.10.0-229.14.1.el7 @updates 32 M
Transaction Summary
===============================================================================================================================================================================================
Remove 4 Packages
Installed size: 326 M
Is this ok [y/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Erasing : kernel-devel.x86_64 1/4
Erasing : kernel.x86_64 2/4
Erasing : kernel-devel.x86_64 3/4
Erasing : kernel.x86_64 4/4
Loading mirror speeds from cached hostfile
* base: centos.mirror.snu.edu.in
* epel: repo.ugm.ac.id
* extras: centos.mirror.snu.edu.in
* rpmforge: kartolo.sby.datautama.net.id
* updates: centos.mirror.snu.edu.in
Verifying : kernel-3.10.0-229.el7.x86_64 1/4
Verifying : kernel-devel-3.10.0-229.14.1.el7.x86_64 2/4
Verifying : kernel-3.10.0-229.14.1.el7.x86_64 3/4
Verifying : kernel-devel-3.10.0-229.1.2.el7.x86_64 4/4
Removed:
kernel.x86_64 0:3.10.0-229.el7 kernel.x86_64 0:3.10.0-229.14.1.el7 kernel-devel.x86_64 0:3.10.0-229.1.2.el7 kernel-devel.x86_64 0:3.10.0-229.14.1.el7
Complete!
Important : après avoir exécuté la commande ci-dessus, elle supprimera tous les noyaux anciens/inutilisés et conservera le noyau actuel en cours d'exécution et l'ancien noyau le plus récent en tant que sauvegarde.
Suppression des noyaux anciens/inutilisés sur Fedora
Fedora utilise désormais le gestionnaire de packages dnf, une nouvelle version du gestionnaire de packages yum, vous devez donc utiliser cette commande ci-dessous pour supprimer les anciens noyaux sur Fedora.
dnf remove $(dnf repoquery --installonly --latest-limit 2 -q)
Une autre façon alternative de supprimer automatiquement les anciens noyaux consiste à définir la limite du noyau dans le fichier yum.conf comme indiqué.
installonly_limit=2 #set kernel count
Enregistrez et fermez le fichier. La prochaine fois que vous exécuterez une mise à jour, il ne restera que deux noyaux sur le système.
Vous aimerez peut-être également lire les articles suivants sur le noyau Linux.
- Comment charger et décharger des modules de noyau sous Linux
- Comment mettre à niveau le noyau vers la dernière version dans Ubuntu
- Comment modifier les paramètres d'exécution du noyau de manière persistante et non persistante
Dans cet article, nous avons décrit comment supprimer les images de noyau anciennes/inutilisées sur les systèmes RHEL/CentOS/Fedora. Vous pouvez partager vos réflexions via les commentaires ci-dessous.