Comando de desligamento do Linux
Nos sistemas operacionais do tipo Unix, o comando shutdown é encerrado ou reinicializa o sistema .
Descrição
O comando shutdown reduz o sistema de maneira segura. Todos os usuários conectados são notificados de que o sistema está inoperante e as operações de login estão bloqueadas. É possível desligar o sistema imediatamente, ou após um atraso especificado.
Todos os processos são notificados primeiro de que o sistema está inoperante pelo sinal SIGTERM . Isso dá a programas como vi tempo para salvar o arquivo que está sendo editado, programas de correio e processamento de notícias a chance de sair corretamente, etc.
O shutdown faz seu trabalho sinalizando o processo init , solicitando a alteração do nível de execução . O nível de execução 0 é usado para interromper o sistema, o nível de execução 6 é usado para reinicializar o sistema e o nível de execução 1 é usado para colocar o sistema em um estado em que as tarefas administrativas podem ser executadas (modo de usuário único). O nível de execução 1 é o padrão, a menos que as opções -h ou -r sejam especificadas.
Seu sistema pode ter um conjunto diferente de opções para o comando shutdown ; verifique sua documentação para obter detalhes.
Sintaxe
shutdown [-akrhPHfFnc] [-t sec ] time [ message ]
Opções
-uma | Controle o acesso ao comando shutdown usando o arquivo de acesso de controle /etc/shutdown.allow . Consulte Controle de acesso abaixo para obter mais informações. |
-k | Não desligue, mas envie as mensagens de aviso como se o desligamento fosse real. |
-r | Reinicie após o desligamento. |
-h | Instrui o sistema a desligar e depois parar. |
-P | Instrui o sistema a desligar e depois desligar. |
-H | Se -h também for especificado, esta opção instrui o sistema a entrar no monitor de inicialização nos sistemas que o suportam. |
-f | Pule fsck após a reinicialização. |
-F | Força o fsck após a reinicialização. |
-n | Não chame init para desligar os processos; instrua o desligamento a fazer isso sozinho. O uso desta opção é desencorajado e seus resultados nem sempre são previsíveis. |
-c | Cancele um desligamento pendente. (Isso não se aplica a ” desligar agora “, que não espera antes de desligar.) Com essa opção, não é possível fornecer o argumento de tempo , mas você ainda pode especificar uma mensagem explicativa que será enviada a todos os usuários. |
-t seg | Diga ao init para esperar segundos em segundos entre o envio processa o aviso e o sinal de interrupção , antes de mudar para outro nível de execução. |
Tempo | O argumento time especifica quando executar a operação de desligamento. A hora pode ser formatada de diferentes maneiras: primeiro, pode ser uma hora absoluta no formato hh : mm , em que hh é a hora (1 ou 2 dígitos, de 0 a 23 ) e mm é o minuto da hora ( em dois dígitos). Segundo, ele pode estar no formato + m , no qual m é o número de minutos a aguardar. Além disso, a palavra agora é a mesma que especificar +0 ; ele desliga o sistema imediatamente. |
mensagem | Uma mensagem a ser enviada a todos os usuários, juntamente com a notificação de desligamento padrão. |
Detalhes
Se um desligamento estiver agendado para o futuro, ele criará o arquivo de aviso / etc / nologin, que faz com que programas como o logon não permitam novos logins de usuário. Este arquivo é criado cinco minutos antes do início da sequência de desligamento. shutdown remove este arquivo se ele for parado antes que possa sinalizar init (ou seja, é cancelado ou algo dá errado). Também o remove antes de chamar init para alterar o nível de execução.
O sinalizador -f significa “reiniciar rapidamente”. Isso cria apenas um arquivo / fastboot consultivo que pode ser testado pelo sistema quando ele for novamente instalado. O arquivo rc de inicialização do sistema (“rc” significa “runcom”, abreviação de “comandos de execução”) pode testar se esse arquivo está presente e decidir não executar o fsck, pois o sistema foi desligado da maneira correta. Depois disso, o processo de inicialização deve remover / fastboot .
O sinalizador -F significa “force fsck “. Isso cria apenas um arquivo consultivo / forcefsck, que pode ser testado pelo sistema quando ele aparecer novamente. O arquivo boot rc pode testar se esse arquivo está presente e decidir executar o fsck com um sinalizador “force” especial, para que até mesmo os sistemas de arquivos desmontados sejam verificados. Depois disso, o processo de inicialização deve remover / forcefsck .
O sinalizador -n faz com que o desligamento não chame init , mas elimine todos os processos em execução. O desligamento desativará a cota , a contabilidade e a troca e desmontará todos os sistemas de arquivos.
Controle de acesso
O shutdown pode ser chamado a partir do init quando a combinação de teclas Ctrl + Alt + Del é pressionada, se houver uma entrada apropriada no / etc / inittab . Isso significa que todos os que têm acesso físico ao teclado do console podem desligar o sistema.
Para evitar isso, o shutdown pode verificar se um usuário autorizado está logado. Se o shutdown for chamado com o argumento -a (adicione isso à chamada de shutdown em / etc / inittab ), ele verifica se o arquivo / etc /shutdown.allow está presente. Em seguida, ele compara os nomes de logon nesse arquivo com a lista de pessoas que efetuaram login em um console virtual (de / var / run / utmp ). Somente se um desses usuários ou raiz autorizados estiver conectado, ele continuará. Caso contrário, ele escreverá a mensagem
shutdown: nenhum usuário autorizado logado
… para o console do sistema (físico). O formato de /etc/shutdown.allow é um nome de usuário por linha. Linhas vazias e linhas de comentário (prefixadas por um # ) são permitidas. Atualmente, há um limite de 32 usuários neste arquivo.
Observe que se /etc/shutdown.allow não estiver presente, o argumento -a será ignorado.
Parada x Desligar
A opção -H apenas define a variável de ambiente init INIT_HALT como HALT , e a opção -P apenas define essa variável como POWEROFF . O script de encerramento que chama parada como a última coisa na sequência de desligamento deve verificar essas variáveis de ambiente e chamar interrupção com as opções corretas para que essas opções tenham algum efeito.
arquivos
/ fastboot
/ etc / inittab
/etc/init.d/halt
/etc/init.d/reboot
/etc/shutdown.allow
Exemplos
desligamento 8:00
Agende o desligamento do sistema às 8h
desligamento 20:00
Agende o desligamento do sistema às 20h
shutdown +15 "Atualizando o hardware, o tempo de inatividade deve ser mínimo"
Programe o sistema para desligar em quinze minutos. Juntamente com a mensagem normal alertando os usuários de que o sistema está sendo desligado, eles receberão a mensagem descritiva sobre uma atualização de hardware.
desligamento agora
Desative o sistema imediatamente.
shutdown -r now
Desative o sistema imediatamente e reinicie-o automaticamente.
shutdown -P now
Desligue o sistema imediatamente e desligue-o automaticamente.
Comandos relacionados
parar – Pare o computador.
desligamento – Pare o computador.