GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cuál es la diferencia entre reiniciar, iniciar 6 y apagar -r ahora?

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

  • reboot usa el shutdown 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 el SIGKILL 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 el init 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 al init 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 el shutdown -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)


Linux
  1. Linux:¿la diferencia entre reiniciar, iniciar 6 y apagar -r ahora?

  2. ¿Cuál es la diferencia entre Git Switch y Checkout?

  3. ¿Cuál es la diferencia entre fsck y e2fsck?

  4. ¿Cuál es la diferencia entre $(CC) y $CC?

  5. ¿Cuál es la diferencia entre unlink y rm?

¿Cuál es la diferencia entre InnoDB y MyISAM?

¿Cuál es la diferencia entre Linux y Unix?

¿Cuál es la diferencia entre Shell de inicio de sesión y sin inicio de sesión?

¿Cuál es la diferencia entre el comando apt y apt-get?

¿Qué es un Hipervisor? ¿Cuál es la diferencia entre el tipo 1 y 2?

¿Cuál es la diferencia entre curl y Wget?