Como reiniciar e desligar servidores Linux?

Como administrador de sistema, uma das atividades frequentes é reinicializar ou desligar os servidores.

Isso pode ser devido à atividade de manutenção regular, como correção do SO ou devido a alguma falha de hardware que exige que um sistema seja desligado para manutenção.

Um sistema Linux oferece várias maneiras diferentes de reinicializar ou desligar o servidor. Um sistema normal deve responder a qualquer comando enquanto um servidor degradado pode precisar ser reinicializado com força. Observe que a maioria desses comandos exigirá um certo nível de privilégio como superusuário ou com sudo para ser executado com sucesso, pois reinicializar um sistema é uma tarefa administrativa e para um sistema multiusuário ou servidor executando processos críticos, reinicializar ou desligar é uma tarefa atividade disruptiva.

Este artigo aborda alguns desses métodos que podem ajudá-lo com a atividade de reinicialização/desligamento do Linux.

Método GUI

Se você estiver usando um ambiente de desktop GUI para Linux como Gnome, KDE, Mate, XFCE, etc., você encontrará um botão liga / desliga no menu do sistema/aplicativo que oferece ações como logout, reinicialização, hibernação ou desligamento. As opções disponíveis podem diferir ligeiramente dependendo de qual distribuição, ambiente de desktop e versão do sistema operacional está em uso. Mas você definitivamente encontrará configurações relacionadas à energia nos menus disponíveis para alterar o estado de energia do seu sistema.

Por exemplo, na minha área de trabalho Ubuntu Mate, posso encontrar a opção Desligar no menu de energia no canto superior direito da tela.

Depois de selecionar a opção “Desligar…”, você verá uma caixa de diálogo com várias opções, como Suspender, Reiniciar, Cancelar e Desligar. Você pode continuar com Reiniciar ou Desligar clicando no botão direito ou cancelar e voltar ao seu ambiente de trabalho.

A GUI e as opções oferecidas podem diferir ligeiramente na distribuição e no ambiente de desktop que você está usando, mas tenha certeza de que há uma opção para alterar o estado de energia do sistema. E com a GUI, não são mais do que alguns cliques no menu de energia.

  Como instalar o Emby Media Server no Linux

Comando systemctl

Em uma caixa Linux executando systemd como o sistema init, você pode usar o comando systemctl para reinicializar sua máquina.

$ sudo systemctl start reboot.target

Ou você pode simplesmente usar systemctl com a opção necessária, como para reiniciar como:

$ sudo systemctl reboot

Para iniciar um desligamento, o comando systemctl é assim:

$ sudo systemctl shutdown

Para parar o sistema, use:

$ sudo systemctl halt

Comando de desligamento

O comando shutdown pode ser usado para desligar e reinicializar um sistema Linux. Para reinicializar um sistema imediatamente, use:

$ sudo shutdown -r now

Ou para desligar um sistema sem esperar, use o sinalizador -h ou -P:

$ sudo shutdown -P now 

Podemos adicionar um atraso ao comando de desligamento para reinicializar/desligar o sistema após um intervalo especificado. Isso pode ser alcançado como:

$ sudo shutdown -r 10

Para interromper um sistema sem pedir que o hardware desligue, você pode usar o sinalizador -H:

$ sudo shutdown -H now

Se você simplesmente especificar o comando de desligamento, o desligamento será agendado após um minuto. Para desligar em um horário específico, use:

$ sudo shutdown 22:30

Em muitos casos, enquanto um sistema está inativo, ele transmite uma mensagem para o console dos usuários logados. Se você deseja adicionar sua mensagem personalizada nesta transmissão, você pode especificar uma mensagem junto com o comando shutdown como:

$ sudo shutdown 23:00 "Powering off system for maintenance...save your work"

Para cancelar um desligamento programado, você pode usar o sinalizador -c:

$ sudo shutdown -c

Em alguns sistemas, o comando shutdown chama systemctl no backend para obter a operação de reinicialização/desligamento desejada.

Comando de reinicialização

Para reiniciar um sistema normalmente, você também pode usar o comando reboot (pode ser necessário usar com sudo).

$ sudo reboot

Para desligar o sistema com o comando reboot, use o sinalizador -p:

$ sudo reboot -p

Para forçar uma reinicialização (para sistemas que não respondem ao comando normal de reinicialização), você pode tentar o sinalizador -f como:

$ sudo reboot -f

Parar Comando

Para parar um sistema, você pode simplesmente usar o comando halt:

$ sudo halt

Comando de desligamento

Para desligar um sistema, você tem a opção de usar o comando poweroff:

$ sudo poweroff

comando de inicialização

Para sistemas que não executam no systemd, o comando init (telinit também funcionará) oferece opções para alterar o nível de execução do sistema. Para reinicializar um sistema usando o init, você pode usar:

$ sudo init 6

Da mesma forma para parar um sistema, o comando init a ser usado é:

$ sudo init 0

Chamar um nível de execução específico usando init faz com que o processo de inicialização do sistema execute uma série de scripts de inicialização em uma ordem específica para garantir que o sistema atinja o nível de execução desejado. O nível de execução 6 é definido para reinicialização enquanto o nível de execução 0 é para interromper o sistema.

  Como configurar Winepaks no Linux

Botão de energia

Para Linux rodando em um desktop ou laptop, pressionar o botão liga/desliga por padrão tem a ação de colocar o sistema em suspensão ou desligá-lo enviando o sinal de desligamento. Esta opção pode ser ajustada nas configurações de energia do sistema. Embora deva idealmente ser usado como a última opção se os comandos normais não funcionarem.

Para um servidor remoto executando Linux, o botão liga/desliga geralmente desliga o sistema. Mas aqueles localizados em data centers remotos têm a opção adicional de serem reinicializados ou desligados de suas ferramentas CLI/GUI de gerenciamento remoto sem iluminação oferecidas pelos respectivos fornecedores de servidores.

Combinação Alt + SysRq

Para um sistema congelado que não responde, é difícil trazê-lo para um estado de reinicialização ou desligamento. Quando você não tem outra opção e como último recurso, você pode tentar pressionar Alt + PrintScreen + uma sequência de teclas para reiniciar instantaneamente o sistema. Pode não ser uma opção preferida ou recomendada, mas, no entanto, pode ser usada como último recurso.

Lembre-se sempre de que existe a possibilidade de perda e corrupção de dados usando esse método, como qualquer outra opção de reinicialização ou desligamento forçada não graciosa. Garanta as melhores práticas do sistema para backups e redundância e tenha cuidado ao usar esta opção.

  Como jogar Company of Heroes no Linux

Para esta opção funcionar, ela deve estar habilitada no kernel do Linux. Você pode verificar isso usando o comando abaixo:

$ cat /proc/sys/kernel/sysrq

Uma saída de 1 indica que está completamente habilitado, enquanto um número maior que indica que está parcialmente habilitado com alguns recursos. Para habilitá-lo explicitamente, você pode usar:

$ sudo echo “1” > /proc/sys/kernel/sysrq

Para reinicializar um sistema usando este método, mantenha pressionado Alt + SysRq (PrintScreen) e pressione na sequência as seguintes teclas após um intervalo de alguns segundos entre cada tecla:

R E I S U B

ou para desligar pressione O em vez de B no final:

R E I S U O

Aqui o que as chaves significam:

  • R: Mudar o teclado do modo raw para XLATE
  • E: Envia sinal SIGTERM para todos os processos exceto init
  • I: Enviar sinal SIGKILL para todos os processos, exceto init
  • S: Sincroniza todos os sistemas de arquivos montados
  • U: Remonte todos os sistemas de arquivos montados como somente leitura

Por fim, temos B ou O, que significa:

  • B: Reinicie o sistema imediatamente, sem desmontar partições ou sincronizar

OU

  • O: Desligue imediatamente o sistema, sem desmontar partições ou sincronizar

Resumo

Então aqui vão diferentes maneiras que permitem que você reinicie ou desligue um sistema Linux. Ele oferece opções que variam de interfaces GUI simples a comandos de terminal relativamente complexos que podem facilitar sua vida ou até mesmo automatizar coisas. Para sistemas que congelaram por um motivo ou outro, discutimos maneiras forçadas de obter um estado de reinicialização ou desligamento que pode não ser a maneira ideal, mas deve ser usada em raras ocasiões.

Tome precauções ao usar os comandos discutidos neste artigo, pois eles afetam o estado do sistema e podem afetar vários usuários e serviços no caso de um servidor corporativo. Confira as páginas man de comandos sugeridas neste artigo para saber mais sobre eles e todas as opções que eles oferecem.

Saiba como configurar o WAS para parar de pedir senha durante o desligamento aqui.