Se me ocurren un par de cosas:
-
Recuperarse de un kernel panic
Un kernel panic, por definición, no se puede recuperar sin reiniciar el kernel.
-
Recupérese de bloqueos que lo dejan sin acceso a la terminal
Si el sistema no responde y no tiene forma de emitir comandos para recuperarse, lo único que puede hacer es reiniciar. Por lo general, querrá evitar el ciclo de encendido manual. Para este tipo de situaciones, el kernel de Linux es compatible con Magic SysRq, que se puede usar para reiniciar la máquina en caso de emergencia.
Siempre que
CONFIG_MAGIC_SYSRQ
ha sido habilitada en la configuración del kernel, y elkernel.sysrq
sysctl
está habilitada, puede emitir comandos directamente al kernel con combinaciones mágicas de teclas SysRq:Tenga en cuenta que Alt +SysRq debajo significa presionar y mantener presionado Alt , luego presione y mantenga presionado SysRq (típicamente el PrintScrn clave).
- Alt +SysRq +r :recuperar el control del teclado
- Alt +SysRq +e :enviar
SIGTERM
a todos los procesos, exceptoinit
, dándoles la oportunidad de terminar con gracia - Alt +SysRq +yo :enviar
SIGKILL
a todos los procesos, exceptoinit
, obligándolos a terminar - Alt +SysRq +s :intenta sincronizar todos los sistemas de archivos montados
- Alt +SysRq +u :volver a montar todo el sistema de archivos de solo lectura
-
Alt +SysRq +b :reiniciar, o
Alt +SysRq +o :apagar
Una regla mnemotécnica para las combinaciones mágicas de teclas SysRq para intentar un reinicio correcto es:
"R eboot E ven yo f S sistema T muy B roca "
Para servidores sin cabeza, incluso hay un objetivo de iptables que permite secuencias SysRq remotas a través de una red.
-
Recuperación del estado no arrancable
Si el sistema ya se ha llevado a un estado en el que no es posible un arranque regular (por ejemplo, como resultado de una actualización fallida del sistema, un sistema de archivos dañado, etc.), entonces la única forma de acceder a una consola de recuperación en el sistema podría ser reiniciando usando las opciones apropiadas de tiempo de arranque.
-
Cambiar los parámetros del kernel durante el arranque
Algunos parámetros del núcleo (por ejemplo,
audit
para habilitar/deshabilitar la auditoría del kernel) solo se puede configurar cuando el kernel se carga en el momento del arranque.
Hay dos momentos en los que puedo pensar en dónde me gustaría reiniciar:
-
Cuando necesito asegurarme de que el sistema pueda iniciarse en el estado adecuado.
Una vez trabajé en un sistema que tenía algún demonio configurado mientras se estaba ejecutando. Después de que funcionó durante algunos años, un corte de energía hizo que se reiniciara, pero el demonio no formaba parte del proceso de inicio y nadie tenía idea de cómo se había configurado años antes. El sistema estuvo inactivo durante días mientras descubríamos cómo reconfigurarlo.
En realidad, reiniciar es la única forma de saber con certeza que su sistema se reiniciará correctamente después de un corte de energía.
-
Cuando se ha actualizado una biblioteca del sistema.
Digamos que se descubrió una falla de seguridad importante en una biblioteca que se comparte con muchas aplicaciones/servidores en el sistema. Puede actualizar la biblioteca sin reiniciar, pero ¿cuántos procesos siguen ejecutándose con la biblioteca insegura cargada? Puede reiniciar minuciosamente cualquier cosa usando la biblioteca anterior (si puede resolverlo), pero eso es propenso a errores y puede llevar más tiempo que simplemente reiniciar.
Reiniciar es la mejor manera de asegurarse de que todos los procesos en ejecución no sigan utilizando la antigua biblioteca con errores.