Linux / Comando reboot: reiniciar o sistema e verificar o retorno

O comando reboot solicita a reinicialização do Linux e interrompe os serviços e as conexões da máquina. Antes de executá-lo, confirme o servidor, prepare a parada das aplicações e tenha um meio de recuperação caso o acesso remoto não volte.

Em um sistema com systemd, a solicitação normal utiliza o procedimento de encerramento do sistema, em vez de forçar um reinício imediato sem essa coordenação. Isso não salva automaticamente documentos abertos nem garante que uma aplicação com problemas conclua suas gravações. Escolha uma janela de manutenção e siga o procedimento de parada dos serviços envolvidos.

Sintaxe e ambiente de uso

sudo reboot [opção]

Esta linha é uma notação de sintaxe: os colchetes representam um argumento opcional e não devem ser digitados literalmente. sudo solicita a execução com os privilégios autorizados pela política local. Use a conta administrativa prevista para o servidor; não altere permissões para contornar uma recusa.

Os exemplos abaixo se destinam a um host Linux administrado com systemd. Confirme a implementação instalada em man reboot; as opções e o comportamento de outros sistemas de inicialização podem diferir. Um terminal no Windows ou um contêiner não equivale automaticamente ao sistema Linux que você pretende reiniciar.

O manual de reboot do systemd descreve a implementação e suas diferenças em relação às opções forçadas. Reiniciar o host também interrompe aplicações que não têm relação com a manutenção específica que motivou a operação.

Confirmar o host antes da manutenção

hostnamectl status

Confira o nome do host e as informações de sistema antes de qualquer mudança. Compare o resultado com o inventário, o destino da conexão SSH e o ambiente autorizado para a manutenção. O guia de hostnamectl explica esses campos; um nome semelhante ao de produção ou de homologação não basta para identificar o alvo com segurança.

Prepare também o acesso de recuperação: console da máquina virtual, console do provedor ou gerenciamento remoto disponível para esse servidor. Confirme como acessá-lo antes da parada. Uma sessão SSH aberta não garante que você conseguirá reconectar após uma alteração de rede, uma falha de serviço ou um problema na inicialização.

Verificar usuários e trabalhos em andamento

who

A saída de who ajuda a identificar sessões registradas, conforme o guia do comando who. Ela não lista todas as aplicações, tarefas agendadas, gravações de banco de dados ou trabalhos de usuários sem sessão interativa. Uma saída vazia não autoriza concluir que não há trabalho em andamento.

  1. Combine a janela de indisponibilidade e avise os usuários e responsáveis pelas aplicações pelo canal habitual de manutenção.
  2. Salve o trabalho aberto e confirme que atualizações e operações críticas de escrita podem terminar. Para bancos de dados e aplicações, siga o procedimento de parada e de consistência próprio do serviço.
  3. Registre o estado anterior, os serviços que deverão voltar e a referência de horário da manutenção. Confirme a disponibilidade dos backups e do meio de recuperação adequado ao servidor.
  4. Confira novamente o host e o horário antes de solicitar a reinicialização. Se houver uma recusa ou aviso que você não compreende, investigue a causa antes de tentar forçar a operação.

Solicitar a reinicialização

Somente depois das verificações e da comunicação, execute no host autorizado:

sudo reboot

Esse comando é uma mudança de estado, não uma consulta. O sistema inicia o encerramento e a sessão SSH pode cair antes de apresentar outra mensagem. Não espere que o terminal permaneça disponível até o término da inicialização nem use a ausência de uma mensagem como motivo para enviar o comando repetidamente.

Se houver erro de autenticação, autorização ou comunicação com o gerenciador do sistema, leia a mensagem e confirme o ambiente. Uma solicitação recusada não comprova que a máquina reiniciou; uma solicitação aceita também não comprova que os serviços já voltaram. A documentação de systemctl distingue o envio da operação de reinicialização da sua conclusão.

Reconhecer a desconexão e verificar o retorno

A linha a seguir repete o comando anterior apenas como referência para interpretar o que pode acontecer no terminal. Não é um segundo passo a executar depois que a máquina voltar.

sudo reboot

Uma mensagem possível na conexão remota é:

Connection to host closed by remote host.

Esse texto é ilustrativo, preservado do exemplo original, e não foi observado em um teste de reinicialização nesta revisão. Ele informa o encerramento da conexão; isoladamente, não prova que o host reiniciou, concluiu a inicialização ou recuperou as aplicações.

  1. Aguarde a janela prevista para o ambiente e tente reconectar ao mesmo host. Se o acesso não voltar, use o console de recuperação preparado e observe a inicialização, em vez de disparar novos reinícios sem diagnóstico.
  2. Compare o tempo ligado mostrado por uptime com a situação anterior. Para uma referência de data e hora da inicialização, consulte who -b quando essa informação estiver disponível. uptime sem opções mostra duração de atividade, não uma data de inicialização completa.
  3. Consulte systemctl --failed e investigue as unidades com falha. Examine também o estado das unidades essenciais conforme o guia de systemctl. Uma lista de falhas vazia não comprova que toda aplicação responde corretamente.
  4. Teste a função esperada do serviço, como uma consulta ou uma página de saúde apropriada à aplicação. Se houver falhas na inicialização atual, consulte o journal com os filtros do guia de journalctl, preservando as informações necessárias ao diagnóstico.

Opções principais

Opção ou formato Significado e cuidado
Sem opções de reboot Solicita o reinício pelo procedimento normal da implementação instalada.
-f Força o reinício sem contatar o sistema de inicialização na implementação do systemd; sistemas de arquivos podem não ser desmontados corretamente.
--no-wall Suprime a mensagem wall aos usuários. Não substitui a comunicação de manutenção nem preserva sessões.
shutdown -r +MINUTOS Notação para solicitar um reinício com atraso. Substitua MINUTOS por um número; não é uma consulta.

A opção -f não é uma forma de acelerar uma manutenção normal. Na implementação do systemd, reboot -f não equivale simplesmente a usar uma única opção de força em systemctl reboot. Não copie opções entre comandos supondo a mesma intensidade de força; o risco de perda de dados torna essa distinção relevante.

Programar e cancelar com antecedência

Se precisar de tempo para concluir verificações, a alternativa sudo shutdown -r +10 solicita uma reinicialização para daqui a dez minutos. Ela cria uma operação real de manutenção. Execute-a apenas depois de combinar o horário e confirmar que não está interferindo em outra operação planejada; o guia de shutdown, em inglês trata desse comando.

Antes de o encerramento começar, sudo shutdown -c pode cancelar uma operação pendente com atraso. Confirme que a operação pendente é a que você está autorizado a cancelar e confira o resultado. Nas versões do systemd que oferecem a opção, shutdown --show consulta a ação e o horário pendentes; essa opção foi adicionada na versão 250. Verifique a disponibilidade local no manual de shutdown.

O prazo agendado é o instante mais cedo previsto, não uma garantia de que a máquina concluirá o reinício naquele minuto. Depois que o encerramento imediato já começou, não conte com uma reversão confiável. Cancelar um agendamento ainda pendente é diferente de desfazer serviços já encerrados.

Limites da verificação dos exemplos

No Bash 5.3.9 do Git para Windows usado nesta revisão, hostnamectl, uptime, systemctl e reboot não estavam disponíveis. O who do GNU coreutils 8.32 executou sem saída; isso não descreve sessões de um servidor Linux. A busca por shutdown encontrou o executável do Windows, que não foi executado e não deve ser confundido com o comando Linux.

Os comandos de reinicialização, agendamento e cancelamento não foram executados aqui. Sua sintaxe de shell foi verificada sem execução; o procedimento e as condições foram confrontados com os manuais do systemd. As observações de desconexão e retorno são resultados a verificar no host Linux autorizado, sem garantia de prazo fixo.

Pergunta frequente

Posso desfazer imediatamente um reboot já solicitado?

Não conte com isso depois que o encerramento começou. Se a possibilidade de cancelamento fizer parte da manutenção, programe um atraso com shutdown e cancele a operação pendente antes de seu início. Depois da parada, o caminho é acompanhar a recuperação e verificar o estado real do host e das aplicações.