En caso de que tenga varios núcleos instalados en el sistema, puede iniciar desde un núcleo específico en caso de una degradación o cualquier otro requisito. Para el propósito de esta publicación de blog, veamos cómo volver a un kernel anterior en CentOS/RHEL 8. Antes de continuar, comprendamos cómo ver el sistema de kernel predeterminado actual desde el que se ha iniciado.
Ver el kernel predeterminado actual
1. Puede ver el nivel de kernel predeterminado establecido actualmente en su sistema usando grubby . grubby es una herramienta de línea de comandos para actualizar y mostrar información sobre los archivos de configuración para varios cargadores de arranque específicos de la arquitectura. Está diseñado principalmente para ser utilizado desde scripts que instalan nuevos núcleos y necesitan encontrar información sobre el entorno de arranque actual.
# grubby --default-kernel /boot/vmlinuz-4.18.0-147.0.3.el8_1.x86_64
2. Cada núcleo instalado en el sistema tiene un índice asociado. Para ver el uso del índice del kernel:
# grubby --default-index 0
3. Enumere los núcleos disponibles usando:
# 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. Para obtener información detallada de una determinada versión del kernel, puede volver a utilizar 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"
Como puede ver en el resultado anterior, puede encontrar fácilmente el índice de kernel de cualquier kernel disponible en su sistema. El kernel más reciente siempre tendrá un índice de 0.
Ahora que sabe desde qué kernel ha arrancado y la lista de kernels disponibles desde los que puede arrancar, podemos continuar y arrancar desde un kernel más antiguo. Hay 2 formas de arrancar desde un núcleo antiguo:
- usando el nombre de archivo del núcleo
- utilizando el índice del núcleo
Método 1:Arrancar desde el kernel antiguo usando el nombre de archivo del kernel
1. Enumere los nombres de archivo del kernel disponibles en su sistema:
# 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. Use el comando grubby una vez que haya decidido desde qué núcleo arrancar:
# grubby --set-default [kernel-filename]
Por ejemplo:
# grubby --set-default boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64
Método 2:Arrancar desde el kernel antiguo usando el índice del kernel
1. Enumere los nombres de archivo del kernel disponibles en su sistema:
# 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. Para ver el índice de cualquiera de los núcleos enumerados anteriormente:
# grubby --info [kernel-filename] | grep index
Por ejemplo:
# grubby --info /boot/vmlinuz-4.18.0-80.11.2.el8_0.x86_64 | grep index index=1
3. Ahora que conoce el índice del kernel desde el que desea iniciar, use el comando:
# grubby --set-default-index=[kernel-entry-index]
Por ejemplo:
# grubby --set-default-index=1