No hay diferencia en ellos. Internamente hacen exactamente lo mismo:
-
reboot
usa elshutdown
comando (con el modificador -r). El comando de apagado solía matar todos los procesos en ejecución, desmontar todos los sistemas de archivos y finalmente le dice al kernel que emita el comando de encendido ACPI. La fuente se puede encontrar aquí. En distribuciones más antiguas, el comando de reinicio forzaba la salida de los procesos emitiendo elSIGKILL
señal (todavía se encuentra en las fuentes, se puede invocar con-f
opción), en las distribuciones más recientes, el valor predeterminado es elinit 1 -> shutdown -r
más elegante y fácil de iniciar . Esto asegura que los demonios se limpien solos antes de apagarse. -
init 6
le dice alinit
proceso para cerrar todos los procesos/daemons generados como está escrito en los archivos de inicio (en el orden inverso en que comenzaron) y, por último, invocar elshutdown -r now
comando para reiniciar la máquina
Hoy en día no hay mucha diferencia ya que ambos comandos hacen exactamente lo mismo y respetan los scripts de inicio que se usan para iniciar servicios/demonios al invocar los scripts de apagado por ellos. Excepto reboot -f -r now
como se indica a continuación
Hay una pequeña explicación tomada de las páginas de manual de por qué reboot -f
no es seguro:
-f, --force Force immediate halt, power-off, reboot. Don't contact the init system.
Editar:
Olvidé mencionar que en las próximas distribuciones de RHEL debe usar el nuevo systemctl
Comando para emitir apagado/reinicio. Como se indica en las páginas de manual de reboot
y shutdown
son "un comando heredado disponible solo por compatibilidad". y el systemctl
será el único método seguro.
Es preferible apagar porque le permite especificar el motivo por la acción drástica, algo que siempre debes hacer. El mensaje se grabará en el registro(s) para la posteridad. Por ejemplo:
shutdown -r now 'Kernel upgrade requires reboot'
También puede realizar una programada reiniciar -- especificando algo que no sea now
como el tiempo de reinicio:
shutdown -r 22:00 'Work around kernel memory leak'
Luego, sus usuarios recibirán recordatorios periódicos para salir a medida que se acerque el momento; el proceso será más ordenado y profesional.
En unidades tradicionales, reboot
y shutdown -r now
son comandos muy diferentes. Bajo uso típico, reboot
solo es seguro de usar en modo de usuario único.
shutdown -r now
es el método canónico para apagar a través de diferentes * nix y más seguro de usar en general y es funcionalmente equivalente a init 6
.
inicializar(8)reiniciar(8)