Solo quiero saber la diferencia entre in
reboot
init 6
shutdown -r now
y cual es el mas seguro y el mejor?
Respuesta aceptada:
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 obligaba a los procesos a cerrarse emitiendoSIGKILL
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 esinit 1 -> shutdown -r
, que es 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 por 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.