linux – ¿Cuál es la diferencia entre reboot, init 6 y shutdown -r now?

Pregunta:

Solo quiero saber la diferencia entre en

  • reboot
  • init 6
  • shutdown -r now

y cual es el mas seguro y el mejor?

Respuesta:

No hay diferencia en ellos. Internamente hacen exactamente lo mismo:

  • reboot usa el comando de shutdown (con el interruptor -r). El comando de apagado se usa para matar todos los procesos en ejecución, desmontar todos los sistemas de archivos y finalmente le dice al kernel que emita el comando ACPI power. La fuente se puede encontrar aquí . En las distribuciones más antiguas, el comando de reinicio obligaba a los procesos a salir al emitir la señal SIGKILL (que aún se encuentra en las fuentes, se puede invocar con la opción -f ), en las distribuciones más recientes el valor predeterminado es el init 1 -> shutdown -r más elegante y amigable con init 1 -> shutdown -r . Esto asegura que los demonios se limpien solos antes de apagarse.

  • init 6 le dice al proceso de init que apague todos los procesos / demonios generados como están escritos en los archivos de inicio (en el orden inverso en el que comenzaron) y, por último, invoque el comando shutdown -r now 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 utilizados para iniciar los servicios / demonios invocando los scripts de cierre para 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é el 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 comando systemctl para ejecutar poweroff / reboot. Como se indica en las páginas de manual de reboot y shutdown , son "un comando heredado disponible solo para compatibilidad". y el método systemctl será el único seguro.

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım