GNU/Linux >> Tutoriales Linux >  >> Linux

Qué hacer en caso de pánico en el kernel de Linux

Linux se usa en todas partes en el mundo de TI. Probablemente hayas usado Linux hoy, incluso si no te diste cuenta. Si ha aprendido algo sobre Linux, entonces sabe que es un núcleo. El núcleo es la unidad principal del sistema operativo (SO) Linux y es responsable de las comunicaciones entre el hardware de una computadora y sus procesos.

En este artículo, aprenderá sobre una situación relacionada con el kernel de Linux:el pánico del kernel . El término en sí mismo puede hacer que usted pánico, pero si tiene el conocimiento adecuado, entonces puede mantener la calma. Todos los administradores de sistemas enfrentan este problema al menos una vez en su carrera, pero reinstalar el sistema no es la primera solución a la que debe recurrir.

¿Qué es un kernel panic?

Un kernel panic es uno de varios problemas de arranque de Linux. En términos básicos, es una situación en la que el kernel no se puede cargar correctamente y, por lo tanto, el sistema no se inicia. Durante el proceso de arranque, el kernel no se carga directamente. En su lugar, initramfs se carga en la RAM, luego apunta al kernel (vmlinuz ), y luego se inicia el sistema operativo. Si initramfs se corrompe o elimina en esta etapa debido a parches, actualizaciones u otras causas recientes del sistema operativo, entonces nos enfrentamos a un kernel panic.

Si profundizamos más en el proceso de arranque, nos encontramos con el "problema del huevo o la gallina" de Linux.

[ A los lectores también les gustó: Terminales, shells, consolas y líneas de comando ]

Cuando se inicia un proceso de arranque del sistema Linux después del paso del registro de arranque maestro (MBR), se carga GRUB. El kernel debe cargarse en la RAM para iniciar el sistema operativo, pero el kernel está ubicado en el disco duro (/boot/vmlinuz ), y el disco duro aún no está montado en / . Sin montaje, no se puede acceder a ningún archivo, ni siquiera al núcleo. Para superar esto, primero initramfs /initrd carga en RAM directamente y monta el /boot partición en modo de sólo lectura. A continuación, monta el disco duro en el / partición, y el proceso continúa.

# ls -lrth /boot/

Este proceso enfatiza la importancia de initramfs /initrd en el proceso de arranque de Linux.

¿Por qué ocurren los pánicos del kernel?

Se producen pánicos del kernel:

  1. Si initramfs el archivo se corrompe.
  2. Si initramfs no se crea correctamente para el kernel especificado. Cada versión del núcleo tiene su propio initramfs correspondiente .
  3. Si el kernel instalado no es compatible o no está instalado correctamente.
  4. Si los parches recientes tienen algunos defectos.
  5. Si un módulo se instaló en línea o de otra fuente, pero el initrd la imagen no se crea con el último módulo instalado.

¿Cómo solucionar problemas?

Lo primero que debe hacer después de ver un error de kernel panic es no entrar en pánico, porque ahora conoce el archivo de imagen relacionado con el error.

Paso 1 :Inicie el sistema normalmente con su versión de kernel dada.

Entonces puede ver este error:

Pulsa Intro o cualquier tecla, y luego verá lo siguiente:

Esta es su situación de pánico del kernel.

Paso 2 :reinicie su máquina nuevamente y seleccione rescatar aviso.

En RHEL 6 o versiones anteriores, no tenemos esta opción, pero en RHEL 7 y posteriores, tenemos una imagen de rescate integrada.

Esta imagen arranca tu sistema operativo normalmente.

Paso 2.1 :Ir a /boot y enumere todos los archivos. Aquí verá que no hay initramfs archivo para su kernel, pero hay un initramfs archivo para rescate por el que has arrancado tu sistema, y ​​otro es por kdump .

El initramfs porque falta el kernel.

Paso 3 :Deberá crear un nuevo initramfs archivo que corresponde a su versión de kernel.

Paso 3.1 :Primero verifique la versión de su kernel:

#uname -r

Paso 3.2 :A continuación, ejecute dracut comando:

#dracut -f <initrd-image> <kernal-version>

3.3) Listar el /boot contenido del directorio de nuevo. El initramfs ahora se crea el archivo para el kernel.

Paso 4 :Ahora, cuando arranca normalmente, su máquina se inicia sin un error de pánico del kernel.

Paso 5 :Puede haber una situación que ocurra cuando inicie su sistema con una imagen de rescate con la creación de un nuevo initramfs archivo donde no podía crear un archivo nuevo porque ya estaba presente.

En este punto, necesitamos crear un initramfs imagen con el mkinitrd comando o dracut comando.

Paso 5.1 :primero verifique la versión de su kernel usando uname -r comando.

Paso 5.2 :Ejecute mkinitrd comando con --force opción y la especificación de su kernel:

#mkinitrd --force <initrd-Image> <Kernel-Version>

Su initramfs El archivo se regenera con estos breves pasos y ahora puede iniciar su sistema operativo sin ningún error.

[ Libro electrónico gratuito:Administre su entorno Linux para lograr el éxito ]

Conclusión

Ahora, cada vez que vea un error de kernel panic, definitivamente no pánico porque sabe por qué ocurrió este error y cómo resolverlo. Este artículo cubre uno de los problemas comunes de arranque de Linux:Kernel Panic. Hay tantos otros posibles problemas de arranque que pueden ocurrir en Linux, pero resolver esos problemas será mucho menos preocupante cuando adquiera un conocimiento avanzado de su sistema.


Linux
  1. ¿Qué es un usuario de Linux?

  2. ¿Qué es Umask en Linux?

  3. ¿Qué significa decir que el kernel de Linux es preventivo?

  4. ¿Qué significa EXPORT_SYMBOL en el código del kernel de Linux?

  5. ¿Qué son la memoria alta y la memoria baja en Linux?

Comando Dmesg en Linux

Comando Sysctl en Linux

¿Qué es umask en Linux?

Linux Kernel 5.9:Novedades y cómo actualizar

¿Qué es el Shell en Linux?

Núcleo de Linux vs. Núcleo de Mac