Respuestas:
Los interruptores -S
y no tienen importancia en este caso. Esto es lo que hacen, respectivamente.-p
sudo
El
-S
interruptor hacesudo
que lea la contraseña de STDIN. Esto permite, por ejemplo, que se ingrese una contraseña asudo
través deecho
ocat
.El
-p
conmutador le permite anular la solicitud de contraseña predeterminada y usar una personalizada, o ninguna.
La diferencia importante está en los dos comandos emitidos por sudo
.
El
halt
comando, si se invoca sin el-p
interruptor, simplemente detiene el sistema operativo y detiene todas las CPU. Una vez que el sistema se detiene limpiamente, el usuario puede presionar de forma segura el botón de Encendido en su computadora manualmente.Las
poweroff
,shutdown -h now
yhalt -p
los comandos de todos hacen lo mismo quehalt
a solas, al enviar, además, un comando de ACPI para señalar la unidad de alimentación para desconectar la alimentación principal. Esto evita que tenga que presionar físicamente el botón de Encendido en su computadora.
halt
no lo es shutdown
, son comandos diferentes. El primero no apaga, a menos que -p
se use la opción
Del manual ( man halt
): "-p, --poweroff: ordena al comando detener que se comporte en su lugar como apagado".
Y, en su caso, -p
se no se utiliza en el halt
sistema, por lo tanto, el equipo fue no apagado.
No confunda este -p con el de sudo
, es un parámetro diferente para un comando diferente. De man sudo
:
-S
La opción -S (stdin) hace que sudo lea la contraseña de la entrada estándar en lugar del dispositivo terminal. La contraseña debe ir seguida de un carácter de nueva línea.-p prompt
La opción -p (solicitud) le permite anular la solicitud de contraseña predeterminada y usar una personalizada.En su caso, prompt
está vacío (no se muestra ningún mensaje para sudo cuando se solicita la contraseña), y -S hace que sudo acepte la contraseña de root vi stdin (por lo que la contraseña se puede proporcionar mediante canalizaciones y redireccionamiento desde otros comandos en lugar de escribirse)
Hay una buena respuesta en el sitio de Unix SE sobre el problema shutdown
vs halt
: ¿Cuál es la diferencia entre los comandos Halt y Shutdown?
En cuanto a la sudo -S -p ''
parte, esto eliminará el mensaje sobre la solicitud de contraseña en el terminal (aunque aún debe ingresar su contraseña)
Por ejemplo, ejecutar sudo <some_command>
dará esta salida antes de ejecutar este comando:
[sudo] contraseña para:
Pero correr sudo -S -p '' <some_command>
ocultará ese mensaje.
De hecho, el mensaje que pones entre comillas está reemplazando el mensaje anterior.
Siga adelante y pruebe lo siguiente, y vea la diferencia:
sudo -S -p 'Hey, I am a custom message.' ls
No hay diferencia entre detener comando y apagar en términos de la intención del usuario. La pequeña diferencia es que, al detenerse, debe presionar convenientemente el botón de encendido para apagar el sistema, mientras que en el comando de apagado se le indicará automáticamente a la Interfaz de alimentación de configuración avanzada (ACPI) que envíe una señal a la unidad de alimentación para apagar el sistema.
shutdown -h now
no necesariamente apaga la alimentación tampoco. Segúnman shutdown
, depende del sistema.shutdown -H now
(observe las tapasH
) es el que se garantiza que es equivalente ahalt