Não encontrei uma resposta clara para as diferenças entre as duas opções do comando shutdown
.
É halt
o mesmo que shutdown -H
e poweroff
igual a shutdown -P
?
Responder1
É um pouco histórico.
halt
foi usado antes da ACPI (que hoje desligará a energia para você)*. Isso interromperia o sistema e, em seguida, imprimiria uma mensagem dizendo "está tudo bem em desligar agora". Naquela época, havia interruptores físicos para ligar/desligar, em vez do botão liga / desliga controlado pela ACPI dos computadores modernos.
poweroff
, naturalmente interromperá o sistema e desligará a ACPI.
* Hoje em dia halt
é inteligente o suficiente para ligar automaticamente poweroff
se a ACPI estiver habilitada. Na verdade, eles são funcionalmente equivalentes agora.
Responder2
Eles não são a mesma coisa, apenas estão intimamente relacionados. Na prática, a menos que você queira especificar um horário específico para desligar ou forçar uma reinicialização/parada/desligamento imundo imediato, realmente não importa se você executa shutdown -h
ou halt
... ou shutdown -r
vs reboot
. As coisas não eram tão convenientes no passado, mas é assim que funciona agora (muitas das oportunidades de ambiguidade ou erro do usuário foram removidas/suavizadas).
/sbin/shutdown
faz muitas coisas de "limpeza", como notificar os usuários, bloquear novos logins enquanto o sistema está sendo desligado. Também pode ser solicitado que desligue o sistema em um determinado horário ou em XX minutos - alertando os usuários logados de vez em quando sobre o desligamento iminente.
Ele também altera o nível de execução para 0
( halt
/ poweroff
) ou 6
( reboot
), o que aciona o sistema para interromper os serviços em execução, desmontar discos, etc., em preparação para a parada, desligamento ou reinicialização real.
Quando tudo isso é feito, ele chama /sbin/halt
, /sbin/reboot
, ou /sbin/poweroff
( reboot
e poweroff
geralmente são links simbólicos para halt
, que os interpreta como halt -r
e halt -P
respectivamente).
Observe, entretanto, que se halt
/ reboot
/ poweroff
for chamado quando o sistema NÃO estiver em nível de execução 0
ou 6
então eles chamarão shutdown
para fazer seu trabalho, a menos que a opção -f
ou force
seja usada.
(Os detalhes de como os níveis de execução são interpretados podem variar de distribuição para distribuição, mas 0
são 6
usados conforme descrito aqui no Debian e derivados do Debian como o Ubuntu).
Consulte as páginas de manual para shutdown
obter halt
mais informações.
Finalmente, a distinção entre halt
e poweroff
estado é que halt
faz tudo até realmente desligar a máquina (em alguns tipos de hardware, isso significa que ela cai em um gerenciador de inicialização ROM ou similar. Na maioria dos hardwares de PC, ela simplesmente para), enquanto poweroff
conclui a etapa final e desligue. reboot
, é claro, entra no estado de parada e reinicia o computador.
A propósito, o padrão normalmente é or poweroff
, reboot
mas você pode usar -H
como argumento to shutdown
para fazê-lo parar. Isso não é muito útil em máquinas Linux baseadas em PC (mas é útil em máquinas, como caixas sparc, que possuem um monitor de inicialização de firmware. É possível que se torne útil em máquinas mais novas com uma linha de comando EFI).