Acabo de completar un curso de sistema operativo. Escuché mucho la frase " kernel panic " . Puedes explicar
- ¿Qué es un kernel panic?
- ¿Por qué ocurre?
- ¿Cómo puedo saber que ocurrió un pánico en el núcleo?
- ¿Qué efecto tiene en el sistema?
- ¿Solo ocurre en Linux?
- ¿Cómo puedo prevenirlo?
Respuestas:
1 pregunta a la vez según las preguntas frecuentes
¿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).
¿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)
¿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
¿Qué efecto tiene en el sistema?
Error al iniciar o bloqueo del sistema
¿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
¿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 '.
fuente
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
dmesg
veces 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).
init
proces, 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í .fuente
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.
fuente
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:
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.
lsmod
El 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.
fuente