Como reiniciar ou desligar o Linux usando a linha de comando

Terminal em um desktop Linux
Fatmawati Achmad Zaenuri / Shutterstock.com

Quer começar de novo? Este tutorial mostrará como reinicializar ou desligar seu computador Linux ou macOS de maneira limpa e segura a partir da linha de comando.

Estamos indo para baixo

Às vezes, você só precisa reiniciar ou desligar totalmente. Se você estiver trabalhando em um servidor sem interface gráfica do usuário ou em uma sessão SSH com um computador remoto, a linha de comando é sua única opção. Linux e sistemas semelhantes ao Unix, como o macOS, fornecem vários comandos para desligar ou reinicializar o sistema diretamente da linha de comando.

Os comandos que você pode usar são:

  • desligar
  • reiniciar
  • parar
  • desligar

Examinar as páginas do manual para esses comandos pode ser confuso. Dependendo das opções de linha de comando que você escolher, todos esses comandos podem realizar desligamentos , reinicializações e interrupções do sistema. Na verdade, as páginas man para reboot, halte poweroff contêm exatamente a mesma informação .

página man para o comando halt

O que está por trás disso?

A resposta está no sistema de bootstrap systemd que substituiu o System V initsistema venerável . No mundo Linux, o Fedora começou a ser usado systemdem 2011. Desde então, ele foi adotado por muitas distribuições. Debian e Ubuntu trocados systemdem 2015.

Em systemddistribuições baseados os shutdown, reboothalt, e poweroffcomandos são efetivamente atalhos que apontam para o systemctlcomando. Manter esses comandos fornece um grau de compatibilidade com System V initdistribuições baseadas em. Isso significa que os scripts de shell (e administradores de sistema do System V hard-core) não desmaiam se forem movidos para um computador com uma systemddistribuição em execução.

Recomendado:  10 maneiras de abrir o prompt de comando no Windows 10

Usando desligamento

Desligar ou reinicializar um sistema multiusuário significa que você deve planejar com antecedência. Você precisa decidir quando irá desligar ou reiniciar, e avisar os outros usuários do sistema que o desligamento está chegando, e quando. Se for o seu próprio computador e você for o único que o usa, a vida é muito mais simples.

Para executar qualquer um desses comandos, você precisa estar no sudogrupo. Ou seja, você deve ter permissões de superusuário e ser capaz de usar o sudocomando. Se o comando emitido tiver efeito imediato e não afetará outros usuários conectados, você não precisará usá-lo sudo. Se você tentar usar um desses comandos e o comando for recusado, tente novamente com sudo.

Por padrão, o  shutdowncomando garante que todos os processos sejam interrompidos de forma limpa, todos os sistemas de arquivos sejam sincronizados e todas as atividades da CPU tenham cessado. Este é o estado de ‘parada’. Em seguida, ele envia uma mensagem ao hardware para cortar a energia. É claro que este é o estado de desligamento ou “desligamento”.

É comum passar shutdownalguns parâmetros, como uma string de horário e uma mensagem que será enviada aos usuários logados para avisá-los do desligamento. Vamos agendar um desligamento para 15 minutos a partir de agora. Digite shutdown, um espaço +15,, um espaço e, em seguida, a mensagem a ser enviada aos usuários.

desligamento +15 Desligando em 15 minutos!

comando de desligamento +15 mensagem

A string de tempo que usamos foi +15, representando 15 minutos a partir de agora. O +é opcional. Poderíamos ter digitado 15.

Recebemos uma resposta que confirma que um desligamento está agendado e quando ocorrerá. Os usuários logados receberão a mensagem que fornecemos.

Recomendado:  O que é UserEventAgent e por que está sendo executado no meu Mac?

notificação de desligamento

Para cancelar um desligamento, use a -c opção (cancelar).

desligamento -c

Comando Shutdown -c cancel

Embora você não receba nenhuma notificação de que seu desligamento foi cancelado, seus usuários conectados são notificados.

Aviso de cancelamento

Se você não fornecer uma sequência de tempo, o desligamento será agendado para daqui a um minuto . Observe que você não pode enviar uma mensagem aos usuários conectados se não especificar uma string de hora.

desligar

comando de desligamento sem parâmetros

Se você não puder esperar nem um minuto, poderá usar nowcomo string de tempo e o desligamento terá efeito imediato . Usar nowé como usar +0.

desligue agora

A string de hora pode ser uma hora definida, como 23:00. Deve seguir o formato HH:MMe estar no formato de 24 horas. Cinco minutos antes de o sistema cair, novos logins são impedidos.

desligamento 23:00 com mensagem

Sabemos que a ação padrão de shutdown faz com que o computador vá para o estado de parada e depois para o estado de desligado. Podemos substituir esse comportamento passando outras opções de linha de comando para ele.

  • A -Hopção (interromper) fará com que o computador pare, mas não solicitará que o hardware seja desligado.
  • O -P (desligamento) é a ação padrão. O computador é colocado no estado de parada e, em seguida, desligado.
  • A -r  opção (reiniciar) fará com que o computador pare e o reinicie.
  • A opção -h (parar e desligar) é a mesma que -P. Se você usar -he -Hjuntos, a -Hopção terá prioridade.
  • A -copção (cancelar) irá cancelar qualquer desligamento programado, parada ou reinicialização.

Aqui está um exemplo em que agendamos uma reinicialização.

shutdown -r 08:20 Reinicialização do sistema às 08:20

desligamento programando uma reinicialização

Os comandos de reinicialização, parada e desligamento

Esses comandos executam a ação que seu nome sugere. No entanto, cada um deles aceitará opções de linha de comando para fazer com que qualquer um deles execute uma reinicialização, uma parada ou um desligamento. Mas por que confundir as coisas? Esses comandos são mais bem usados ​​pelo valor de face.

Recomendado:  Como ativar o “design material” do Google no Chrome

Se você deseja reiniciar agora, use reboot. Se você quiser desligar agora, use poweroff, e se quiser parar o sistema agora, use halt.

reiniciar

comando reboot em uma janela de terminal

parar

interromper o comando em uma janela de terminal

desligar

comando poweroff em uma janela de terminal

Esses comandos têm efeito imediato. Se algum desses comandos for recusado, preceda-os com sudo. Mas esteja ciente de que uma recusa geralmente ocorre porque há outros usuários logados no sistema que você está prestes a colocar offline.

Qual comando é certo para mim?

Em ambientes multiusuário, usar o shutdownpara executar essas ações oferece mais controle. A facilidade de agendar desligamentos e reinicializações e alertar os usuários com uma mensagem de difusão será inestimável nesses casos. Para um computador de usuário único, reboote poweroffprovavelmente irá atender às suas necessidades.