¿Qué es el kernel panic?


52

Acabo de completar un curso de sistema operativo. Escuché mucho la frase " kernel panic " . Puedes explicar

  1. ¿Qué es un kernel panic?
  2. ¿Por qué ocurre?
  3. ¿Cómo puedo saber que ocurrió un pánico en el núcleo?
  4. ¿Qué efecto tiene en el sistema?
  5. ¿Solo ocurre en Linux?
  6. ¿Cómo puedo prevenirlo?

Kernel panic es parte de un mensaje de error en Mac. si dice "pánico, estamos colgando aquí" (una suposición es que podría ser parte de Unix.)
Alvar

21
Si estaba haciendo un curso de SO, ¿por qué no le pidió a sus profesores que explicaran la terminología que estaban usando? Tendría mucho más de sus estudios.
TRiG

Respuestas:


56

1 pregunta a la vez según las preguntas frecuentes

  1. ¿Qué es el kernel panic?
    Cuando el kernel no se puede cargar correctamente o "se asusta" y no se inicia correctamente o se bloquea (vea crédito de edición en la parte inferior).

  2. ¿Por qué ocurre?
    Actualizaciones alojadas, hardware defectuoso, hardware no admitido, unidad o partición fallida o faltante (consulte crédito de edición en la parte inferior)

  3. ¿Cómo puedo entender que ocurrió el kernel panic?
    Observe las indicaciones de arranque (apague el parámetro silencioso del kernel) O su máquina no puede arrancar

  4. ¿Qué efecto tiene en el sistema?
    Error al iniciar o bloqueo del sistema

  5. ¿Solo ocurre en Linux?
    No, todos los sistemas operativos tipo Unix pueden tener pánicos en el núcleo. Es el equivalente de una pantalla azul de la muerte de Windows

  6. ¿Cómo puedo prevenirlo?
    Normalmente no sucede. Pruebe las actualizaciones y solucione el problema. Use ramas estables en lugar de desarrollo.

Nota adicional: el pánico del kernel y la falla / apagado del sistema pueden ser directamente responsables de proteger su computadora contra daños físicos. Los ejemplos incluyen detenerse antes del sobrecalentamiento extremo o la corrupción del disco. Vea editar créditos en la parte inferior para una cotización directa.

ediciones

Según B. Roland Los discos o volúmenes perdidos o dañados pueden causar esto también.
(Buen punto y lo pasé por alto)

Por Kees Kernel pánico también puede ocurrir mientras se ejecuta.
nota: puede suceder cuando una función falla con gracia dentro del núcleo, pero con mayor frecuencia ocurre durante la carga del módulo o del núcleo (que generalmente ocurre durante el arranque). Pensé que lo toqué en "durante el arranque o el bloqueo del sistema", pero veo cómo mi respuesta a (1) declaró que solo ocurre durante el arranque.

Según la cita directa de rafalcieslak : 'Hay una cosa muy importante que debe agregarse: el punto principal en todo el kernel panic es proteger su computadora. El kernel se congela no solo porque no pudo hacer algo, sino también para evitar que su computadora se sobrecaliente, se dañe el disco duro y cualquier otro problema de hardware, que puede ocurrir, si se ejecutan algunas órdenes incorrectas, de un módulo (para ejemplo, un módulo responsable de controlar el ventilador) no se pudo cargar, etc. Es por eso que el núcleo prefiere congelarse, en lugar de superar el problema '.


3
Añadir a q # 2: faltan los archivos de arranque ... (por ejemplo, cuando un volumen LVM no se encuentra.)
antivirtel

@SI. Roland agregado y acreditado
RobotHumans

agradable, gracias. Lo escribí, porque una vez ocurrió conmigo ... (accidentalmente formateé un volumen en LVM ...)
antivirtel

8
Esta respuesta no es correcta. Un kernel panic no se limita solo a fallas de arranque. La respuesta de JanC es más correcta ("el núcleo detecta un error del que no se puede recuperar"). La incapacidad para arrancar es solo una de las muchas condiciones.
Kees Cook

2
Hay una cosa muy importante que debe agregarse: el punto principal en todo el kernel panic es proteger su computadora. El kernel se congela no solo porque no pudo hacer algo, sino también para evitar que su computadora se sobrecaliente, se dañe el disco duro y cualquier otro problema de hardware, que puede ocurrir, si se ejecutan algunas órdenes incorrectas, de un módulo (para ejemplo, un módulo responsable de controlar el ventilador) no se pudo cargar, etc. Es por eso que el núcleo prefiere congelarse, en lugar de superar el problema.
Rafał Cieślak

31

Un kernel panic ocurre cuando el kernel detecta un error del cual no puede recuperarse. Una función nombrada panic()para manejar esta situación (a menudo volcando información de depuración y / o reiniciando el sistema) se introdujo por primera vez en una de las primeras versiones de UNIX, de ahí proviene el nombre (y todavía se llama así en la mayoría de UNIX- como sistemas operativos, incluido Mac OS X).

La famosa pantalla azul de la muerte (oficialmente llamada error fatal del sistema , como en VMS / OpenVMS) en el kernel NT de Microsoft también es una forma de "pánico en el kernel".

Un error del kernel de Linux del cual el kernel puede recuperarse (parcial o temporalmente) se denomina kernel oops (puede que a dmesgveces se vean los resultados).

Los motivos del pánico del kernel pueden ser un error en el kernel (por ejemplo, en un controlador que forma parte del kernel) o un problema de hardware o software que causa una condición inesperada / impredecible para el kernel (por ejemplo, cuando es imposible iniciar el kernel). initproces, o se mata).

Para saber qué lo causó, puede ver si se imprimió algo en la pantalla o en una consola serie (si configuró una). Si está configurado para hacerlo, también puede hacer que el sistema realice un volcado por caída del núcleo de Linux , lo que guarda la memoria del núcleo en el disco en caso de pánico, para que un desarrollador del núcleo pueda analizarlo (por supuesto, eso requiere que sea capaz de escribir en un disco). En algunos casos /var/log/messages, también puede tener información útil (por ejemplo, en algunos casos, recuperarse de un error puede conducir a un error irrecuperable más adelante). Hay información más detallada aquí .


1

Tengo un kernel panic en mi sistema ahora, Ubuntu 16.04. Mi computadora se quejaba de que el disco de arranque estaba lleno, así que ejecuté 'apt autoremove'. Eliminó lo que pensé que eran archivos innecesarios, y el resultado es el pánico del kernel.

Así que supongo que cualquier nivel de edición del disco de arranque puede causar un pánico en el núcleo. Así que no pierdas el tiempo si no estás prestando atención a lo que estás haciendo.


Esto no ayuda a abordar la pregunta del OP. :(
Mike Williamson

1

La respuesta de @RobotHumans aborda todas las partes de su pregunta. Sin embargo, me gustaría elaborar las causas de Kernel Panic.

En primer lugar, hay 2 tipos de Kernel Panic: Soft Kernel Panic (también conocido como Oops) y (Hard Kernel Panics, también conocido como Aieee!).

Un sistema se ejecuta en modo de pánico del núcleo duro cuando encuentra una excepción que no se puede manejar. Los pánicos del núcleo blando son relativamente más fáciles de manejar.

Causas del pánico del grano

Hay varias causas, pero las más comunes se enumeran a continuación:

  • La RAM defectuosa o incompatible es la causa más común y frecuente de Kernel Panic.
  • Extensiones de kernel obsoletas, incompatibles o corruptas
  • Controladores de kernel obsoletos, incompatibles o dañados.
  • La corrupción del disco duro o problemas tales como sectores defectuosos o corrupción de directorios también pueden provocar pánico en el núcleo.
  • RAM insuficiente o espacio en el disco duro
  • El hardware defectuoso, los programas mal escritos o las fallas de hardware también pueden provocar kernel Panic.

También es importante tener en cuenta que solo los módulos que se encuentran dentro del espacio del kernel pueden causar pánico en el kernel. lsmodEl comando se puede ejecutar para obtener una lista de módulos cargados dinámicamente.

Para solucionar problemas de kernel panic, verifique / var / log / messages. A veces, toda la información puede registrarse allí, mientras que a veces nada relacionado con el kernel panic puede registrarse allí. Aunque es inevitable encontrarse con kernel panics, no hay mucho de qué preocuparse.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.