Reiniciar Linux automáticamente tras un kernel panic

En ocasiones podemos encontrarnos con un servidor que muestra un kernel panic. En lenguaje coloquial, se queda colgado.

¿Qué es un kernel panic?

De una forma muy genérica, el kernel del sistema operativo se encuentra con una situación de un error irrecuperable ante el que la mejor opción es parar el sistema. De no hacerlo, podríamos llegar a una situación peor de pérdida de datos, por ejemplo. En ocasiones, el kernel vuelca una imagen de la memoria a disco para un análisis posterior. En Windows, el equivalente al kernel panic es la famosa pantalla azul denominada BSOD.

¿Como reiniciar tras un kernel panic?

La pantalla de kernel panic puede mostrarnos información útil para determinar la causa del cuelgue, pero puede interesarnos más devolver la máquina a un estado funcional lo antes posible. Para ello, podemos editar el archivo /etc/sysctl.conf y añadir al final la siguiente línea:

kernel.panic=5

Esto reiniciará el equipo 5 segundos después del kernel panic. Puede ser especialmente útil en servidores que no son bases de datos o no acceden a datos en filesystems locales. De esta forma, volverán a estar en servicio rápidamente y casi podemos dar por seguro que no habrá corrupción de datos.

No recomiendo, sin embargo, activarlo en servidores de bases de datos o servidores de archivos, por ejemplo. En este tipo de servicios hay que analizar bien las causas del error y ponerles solución lo antes posible, o estaremos exponiéndonos a una corrupción de datos más pronto que tarde.