'sudo reboot' vs 'reboot' - qual é a diferença?

55

Descobri recentemente que reboot funciona tão bem quanto sudo reboot , pelo que sei. No entanto, em muitos casos, vejo pessoas dizendo para sudo reboot . Por que é isso? Eles são os mesmos e apenas preferência pessoal? Ou eles são diferentes? O sudo reboot faz mais do que reboot ?

    
por Zeke Egherman 13.02.2018 / 19:54

5 respostas

108

No Ubuntu 14.10 e mais antigo, sudo é necessário.

A introdução do Systemd em 15.04 mudou o modo como o Ubuntu lida com shutdown e reboot :

  1. Quando um único usuário está logado, sudo não é necessário. Quando mais de um usuário está logado, então sudo é necessário.

  2. Aplicativos podem inibir shutdown e reboot . Você anula essas inibições com sudo .

  3. Um único usuário conectado via ssh ainda requer sudo .

por user535733 13.02.2018 / 21:57
21

Na minha máquina 14.04, quando eu (como usuário normal) digito reboot , obtenho

reboot: Need to be root

Essa é a diferença.

Como Terrance apontou nos comentários, ele funciona de maneira diferente em sistemas posteriores aos meus. Então você provavelmente está vendo velhos textos e / ou usuários (como eu) que estão acostumados a digitar sudo reboot !

    
por Organic Marble 13.02.2018 / 20:02
8

sudo reboot é usado em tutoriais / how-tos para razões de compatibilidade

Enquanto reboot pode funcionar

  • se você é root ou
  • se você estiver em um host com systemd e
  • se nenhum aplicativo estiver bloqueando uma reinicialização

sudo reboot irá " sempre " * funcionar, independentemente de

  • se você é root
  • se há outros usuários conectados
  • se há aplicativos bloqueando
  • se o init é systemd, System V, Upstart, o que for

* Bem, certamente vai tentar - a falta de alguns processos do kernel que estão bloqueando / se comportando mal deve funcionar.

    
por Robert Riedl 14.02.2018 / 08:38
7

Para mim, muitas vezes, se eu digitar reboot , não será permitido devido a inibidores do Chrome ao assistir ao YouTube e a outras guias abertas. Então, sou forçado a usar sudo reboot - um martelo maior.

Isso no Ubuntu 16.04

    
por WinEunuuchs2Unix 13.02.2018 / 21:42
4

Obrigado pela discussão, estou feliz em entender isso agora!

Como Terrance mencionado, na versão 15.04, eles mudaram de Upstart para Systemd para os comandos. Essa alteração significa que reboot não requer mais privilégios de root.

Quanto ao motivo pelo qual a comunidade * nix instrui a sudo reboot , existem algumas possíveis razões:

  • Hábito - As pessoas estavam tão acostumadas a ter sudo reboot para reiniciar, elas continuam fazendo isso apesar do fato de não ser necessário
  • Usuários não atualizados - As pessoas que instruíram para sudo reboot estão em versões do Ubuntu menores que 15,04, ou outras distros que usam o Upstart para comandos.

  • Compatibilidade - Isso é o que parece ser o mais plausível para mim: as pessoas estão instruindo a sudo reboot porque é garantido que ele reinicialize todos os sistemas * nix, não importa o quê.

Nota adicional: de user535733 's answer :

  

A introdução do systemd em 15.04 mudou a maneira como o Ubuntu trata   desligamento e reinicialização:

     
  1. Quando um único usuário está logado, sudo não é necessário. Quando mais de um usuário está logado, então sudo é necessário.

  2.   
  3. Os aplicativos podem inibir o desligamento e a reinicialização. Você anula essas inibições com sudo .

  4.   
    
por Zeke Egherman 13.02.2018 / 22:01