¿Hay alguna manera de reiniciar un sistema Linux (Debian en particular) sin reiniciar el hardware?
Tengo un controlador RAID que tarda un poco en ejecutarse antes de que se inicie el sistema operativo, y me gustaría si hubiera una manera de reiniciar rápidamente el sistema operativo Linux sin tener que pasar por todo el proceso de reinicio para reiniciar el controlador RAID, etc.
kexec()
cuál esexec()
, pero para los núcleos de Unix.Respuestas:
Utilizo kexec-reboot en casi todos mis sistemas de producción.
Funciona increíblemente bien, lo que me permite evitar el largo tiempo de POST en los servidores HP ProLiant y reducir el ciclo de arranque de 5 minutos a ~ 45 segundos.
Ver: https://github.com/error10/kexec-reboot
La única advertencia es que no parece funcionar en los sistemas RHEL / CentOS 6.x que arrancan UEFI. Pero la mayoría de las combinaciones sensatas de SO / hardware funcionan.
fuente
kexec
. Es lakexec-reboot
utilidad. La descripción de Github describe la diferencia y lo que la utilidad agrega al proceso.shutdown -r
. Las secuencias de comandos del sistema notarán que kexec se ha organizado y hará lo correcto. ¿Cómo se ve? Tres o cuatro o quince minutos más cortos. Tengo un video de calidad muy horrible que saqué de la consola de iDRAC, pero realmente no quieres sufrir por eso ... Elkexec-reboot
script está destinado a automatizar el proceso de llevar los argumentos correctos de la línea de comandos a kexec, lo que puede ser complicado .[ -n "$kexec_command" ] && $kexec_command -e -x >& /dev/null
. Por lo tanto, si kexec -l carga un núcleo, el sistema se reiniciará sin un / sbin / reinicio completo ... ¡kexec está integrado! No lo sabía, gracias. Supongo que las distribuciones más modernas también lo tienen cubierto. Por cierto, si kexec no se ejecutó previamente con -l, el script de reinicio dirá "¡No se ha cargado nada!" Es por eso que la salida se envía a / dev / null, y por qué nunca estuve al tanto de esta instalación.Sí, es posible. kexec permitirá que un kernel de Linux se inicie directamente desde Linux sin pasar por el proceso de arranque del BIOS.
fuente
Si. Debes usar kexec-tools. Para hacer la vida más fácil, uso kexec-reiniciar .
fuente
# The error checking is very basic.