Si no es posible migrar tu servidor aunque hayas instalado el kernel más reciente, es posible que este esté dañado. Esto puede ocurrir, por ejemplo, si la partición de arranque de tu servidor tenía menos de 100 MB de espacio libre antes de la migración. No obstante, también podría haber otras razones según el caso.

Si el kernel de Linux está dañado, se pueden detectar varios síntomas que indiquen que algo va mal en el sistema. Las siguientes señales y estrategias te pueden ayudar a reconocer si el kernel podría estar dañado:

  • Problemas de arranque:  el síntoma más obvio de un kernel dañado son los problemas de arranque. El sistema puede quedarse atascado en un bucle de arranque, bloquearse con mensajes de error o no arrancar en absoluto.

  • Caídas del sistema y mensajes de error:  si tu sistema Linux se bloquea con frecuencia o experimenta «kernel panics» inesperados, esto también puede ser un signo de un kernel dañado. Este fenómeno suele ir acompañado de un mensaje de error en una pantalla azul o negra.

  • Dmesg y registros del sistema:  comprueba los registros (logs), especialmente la salida de dmesg inmediatamente después del arranque. Dmesg proporciona mensajes relacionados con el kernel que pueden ser útiles para identificar errores o problemas específicos.

root@localhost:~# dmesg | less


  • También puedes utilizar journalctl para comprobar los registros del sistema:

root@localhost:~# journalctl -xb

  • Módulos defectuosos:  otro posible síntoma de un kernel dañado son los problemas con los módulos del kernel. Comprueba si se pueden cargar todos los módulos o si aparecen mensajes de error:


root@localhost:~# lsmod 
root@localhost:~# modprobe yourmodulename

  • Inconsistencias en la funcionalidad:  si determinadas funciones relacionadas con el sistema (como las operaciones de red, el acceso al sistema de archivos, las interacciones con el hardware, etc.) dejan de ser fiables o se producen errores inexplicables, esto también podría indicar problemas con el kernel.

Arrancar desde un kernel antiguo y reparar versión más reciente

Si tu servidor tiene instalado un kernel antiguo, puedes arrancarlo con uno de estos kernels para habilitarlo en la red y poder llevar a cabo la búsqueda y resolución de problemas: 

  • Inicia sesión en tu cuenta IONOS.
  • En la barra de menús principal, haz clic en Menú > Servidores & Cloud
    Si dispones de varios contratos, selecciona el deseado.
  • Haz clic en Acciones > Abrir consola remota.
    La consola remota se abrirá en una nueva pestaña.
  • Cambia inmediatamente al Cloud Panel y haz clic en Acciones > Reiniciar
    Durante el reinicio, la conexión con la consola se interrumpirá.

  • Cambia de nuevo a la consola remota.
  • En la esquina superior derecha, haz clic en Options > Reconnect hasta que aparezca el siguiente mensaje:
  • Pulsa inmediatamente la tecla ESC manteniéndola hasta que aparezca la ventana Grub version. Se mostrará una lista de los kernels disponibles, con el kernel más reciente en la parte superior. 
  • Selecciona el segundo kernel más reciente y pulsa INTRO. Si este kernel funciona, tu servidor arrancará de forma normal y te llevará al inicio de sesión (login). 
Nota

¡No selecciones un kernel en modo de recuperación (recovery mode)!

  • Introduce tus datos de acceso.
  • Para comprobar si arrancaste el servidor desde un kernel antiguo, introduce el siguiente comando:

    [root@localhost ~]# uname -r

Hacer una copia de seguridad de los datos de tu servidor

Haz una copia de seguridad de los datos de tu servidor antes de reparar el kernel. Puedes utilizar el servicio de pago Backup Cloud o guardar los datos en tu computadora local con Filezilla.

Para más información sobre Backup Cloud, consulta el siguiente artículo: 

Backup Cloud: primeros pasos

Reparar el Kernel

  • Utiliza el siguiente comando para comprobar qué kernels están instalados actualmente en tu servidor:

    [root@localhost ~]# rpm -q kernel


    Por ejemplo:

    [root@localhost ~]# rpm -q kernel 
    kernel-5.14.0-70.13.1.el9_0.x86_64 
    kernel-5.14.0-427.16.1.el9_4.x86_64


    En este ejemplo, kernel-5.14.0-427.16.1.el9_4.x86_64 es el último kernel instalado y kernel-5.14.0-70.13.1.el9_0.x86_64 es el más antiguo.

  • Para reparar la última versión del kernel, reinstala el kernel correspondiente. Para ello, sustituye el marcador de posición en el siguiente comando e insértalo con la tecla INTRO.

     

    CentOS

    [root@localhost ~]# sudo yum reinstall 
    kernel-PACKAGE_VERSION

    Por ejemplo:

    [root@localhost ~]# sudo yum reinstall 
    kernel-5.14.0-427.16.1.el9_4.x86_64


    AlmaLinux y Rocky Linux

    [root@localhost ~]# sudo dnf reinstall 
    kernel-PACKAGE_VERSION


    Por ejemplo:

    [root@localhost ~]# sudo dnf reinstall 
    kernel-5.14.0-427.16.1.el9_4.x86_64

  • Para comprobar si la reinstalación se realizó correctamente, introduce el siguiente comando:

    [root@localhost ~]# rpm -q kernel

    El kernel 4.18.0-240.el8.x86_64 muestra ahora el código de estado del paquete ii. Esto significa que está instalado y configurado correctamente. Para completar el proceso, reinicia el servidor. El kernel más reciente se cargará automáticamente.

  • Para completar el proceso, reinicia el servidor.

    [root@localhost ~]# reboot

Reparar el kernel si no hay suficiente espacio en la partición de arranque

Si no hay suficiente espacio en la partición de arranque, la reinstalación del kernel mediante el método descrito anteriormente fallará.

Para solucionar este problema, es necesario liberar espacio de almacenamiento. Procede de la siguiente manera:

  • Introduce el siguiente comando para mostrar la información sobre el espacio de almacenamiento utilizado:

    [root@localhost ~]# df -h

  • A continuación, libera el espacio de almacenamiento.
    Encontrarás instrucciones sobre cómo eliminar kernels antiguos y liberar espacio de almacenamiento en el siguiente artículo:
    Liberar espacio de almacenamiento en un Servidor Cloud

Instalación manual del kernel si falla la nueva instalación

Si la reinstalación del kernel falla por una razón distinta a la falta de espacio en la partición de arranque, puedes intentar eliminar y reinstalar manualmente el kernel.

Advertencia

Nunca elimines el kernel que estás utilizando actualmente, ya que esto puede provocar errores graves en tu servidor. Usa siempre el comando uname -r para comprobar qué kernel estás utilizando.

Para eliminar el kernel y luego reinstalarlo, sigue estas instrucciones:

  • Utiliza el siguiente comando para comprobar qué kernels están instalados actualmente en tu servidor:

    [root@localhost ~]# rpm -q kernel

  • Para eliminar el paquete del kernel, introduce el siguiente comando:

     

    CentOS 7

    yum remove kernel-PACKAGE_VERSION


    CentOS Stream 8, CentOS Stream 9, AlmaLinux y Rocky Linux

    sudo dnf remove kernel-PACKAGE_VERSION


    Por ejemplo

    sudo yum remove kernel-5.14.0-427.16.1.el9_4.x86_64

  • Para comprobar si se eliminó el paquete del kernel, introduce el siguiente comando:

    [root@localhost ~]# rpm -q kernel

  • Para reinstalar el kernel, sustituye los marcadores de posición en el siguiente comando e insértalo con la tecla INTRO:

     

    CentOS

    [root@localhost ~]# sudo yum reinstall 
    kernel-PACKAGE_VERSION


    Por ejemplo:

    [root@localhost ~]# sudo yum reinstall 
    kernel-5.14.0-427.16.1.el9_4.x86_64


    AlmaLinux y Rocky Linux

    [root@localhost ~]# sudo dnf reinstall 
    kernel-PACKAGE_VERSION


    Por ejemplo:

    [root@localhost ~]# sudo dnf reinstall 
    kernel-5.14.0-427.16.1.el9_4.x86_64

  • Comprueba que el paquete del kernel se instaló correctamente.

    [root@localhost ~]# rpm -q kernel

  • Para reiniciar el servidor, introduce el siguiente comando:

    [root@localhost ~]# reboot