Si plusieurs noyaux sont installés sur le système, vous pouvez démarrer à partir d'un noyau spécifique en cas de rétrogradation ou de toute autre exigence. Voyons, dans le cadre de cet article de blog, comment revenir à un noyau plus ancien dans CentOS/RHEL 8. Avant d'aller de l'avant, comprenons comment afficher le système de noyau par défaut actuel à partir duquel il a démarré.
Afficher le noyau par défaut actuel
1. Vous pouvez afficher le niveau de noyau par défaut actuellement défini dans votre système en utilisant grubby . grubby est un outil de ligne de commande permettant de mettre à jour et d'afficher des informations sur les fichiers de configuration pour divers chargeurs de démarrage spécifiques à l'architecture. Il est principalement conçu pour être utilisé à partir de scripts qui installent de nouveaux noyaux et ont besoin de trouver des informations sur l'environnement de démarrage actuel.
# grubby --default-kernel /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64
2. Chaque noyau installé dans le système est associé à un index. Pour afficher l'index du noyau, utilisez :
# grubby --default-index 0
3. Listez les noyaux disponibles en utilisant :
# ls -l /boot/vmlinuz-* -rwxr-xr-x. 1 root root 7872864 Apr 26 2019 /boot/vmlinuz-0-rescue-d026443091424a74948f9f62d2adb9b5 -rwxr-xr-x. 1 root root 7868768 Jun 19 2019 /boot/vmlinuz-0-rescue-ec2b9a54dc859388d7bc348e87df5332 -rwxr-xr-x. 1 root root 8106848 Nov 11 13:07 /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64 -rwxr-xr-x. 1 root root 7876960 Sep 15 2019 /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 -rwxr-xr-x. 1 root root 7881056 Jul 26 2019 /boot/vmlinuz-4.18.0-80.7.2.el8_0.x86_64
4. Pour obtenir des informations détaillées sur une certaine version du noyau, vous pouvez réutiliser grubby :
# grubby --info /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 index=1 kernel="/boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64" args="ro console=ttyS0,115200n8 console=tty0 net.ifnames=0 rd.blacklist=nouveau crashkernel=auto $tuned_params" root="UUID=58013e4a-11c0-4195-8fd8-e4b33e5b17d6" initrd="/boot/initramfs-4.18.0-80.11.2.el8_0.x86_64.img $tuned_initrd" title="Red Hat Enterprise Linux (4.18.0-80.11.2.el8_0.x86_64) 8.0 (Ootpa)" id="ec2b9a54dc859388d7bc348e87df5332-4.18.0-80.11.2.el8_0.x86_64"
Comme vous pouvez le voir dans la sortie ci-dessus, vous pouvez facilement trouver l'index du noyau de n'importe quel noyau disponible sur votre système. Le dernier noyau aura toujours un index de 0.
Maintenant que vous savez à partir de quel noyau vous avez démarré et la liste des noyaux disponibles à partir desquels vous pouvez démarrer, nous pouvons continuer et démarrer à partir d'un noyau plus ancien. Il existe 2 façons de démarrer à partir d'un ancien noyau :
- en utilisant le nom de fichier du noyau
- en utilisant l'index du noyau
Méthode 1 – Démarrer à partir de l'ancien noyau en utilisant le nom de fichier du noyau
1. Répertoriez les noms de fichiers du noyau disponibles sur votre système :
# ls -l /boot/vmlinuz-* -rwxr-xr-x. 1 root root 7872864 Apr 26 2019 /boot/vmlinuz-0-rescue-d026443091424a74948f9f62d2adb9b5 -rwxr-xr-x. 1 root root 7868768 Jun 19 2019 /boot/vmlinuz-0-rescue-ec2b9a54dc859388d7bc348e87df5332 -rwxr-xr-x. 1 root root 8106848 Nov 11 13:07 /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64 -rwxr-xr-x. 1 root root 7876960 Sep 15 2019 /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 -rwxr-xr-x. 1 root root 7881056 Jul 26 2019 /boot/vmlinuz-4.18.0-80.7.2.el8_0.x86_64
2. Utilisez la commande grubby une fois que vous avez décidé sur quel noyau démarrer :
# grubby --set-default [kernel-filename]
Par exemple :
# grubby --set-default boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
Méthode 2 – Démarrer à partir de l'ancien noyau à l'aide de l'index du noyau
1. Répertoriez les noms de fichiers du noyau disponibles sur votre système :
# ls -l /boot/vmlinuz-* -rwxr-xr-x. 1 root root 7872864 Apr 26 2019 /boot/vmlinuz-0-rescue-d026443091424a74948f9f62d2adb9b5 -rwxr-xr-x. 1 root root 7868768 Jun 19 2019 /boot/vmlinuz-0-rescue-ec2b9a54dc859388d7bc348e87df5332 -rwxr-xr-x. 1 root root 8106848 Nov 11 13:07 /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64 -rwxr-xr-x. 1 root root 7876960 Sep 15 2019 /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 -rwxr-xr-x. 1 root root 7881056 Jul 26 2019 /boot/vmlinuz-4.18.0-80.7.2.el8_0.x86_64
2. Pour afficher l'index de l'un des noyaux répertoriés ci-dessus :
# grubby --info [kernel-filename] | grep index
Par exemple :
# grubby --info /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 | grep index index=1
3. Maintenant que vous connaissez l'index du noyau à partir duquel vous souhaitez démarrer, utilisez la commande :
# grubby --set-default-index=[kernel-entry-index]
Par exemple :
# grubby --set-default-index=1