Eu uso o Debian 12 e quero adicionar um usuário bob aos sudoers. Enquanto estava logado como bob , executei su root
o comando para me tornar root. Como root , adicionei bob ao grupo sudo usando o seguinte comando:
sudo usermod -aG sudo bob
Em seguida inspecionei /etc/sudoers
o arquivo, que tinha a seguinte linha: %sudo ALL=(ALL:ALL) ALL
, o que significa que todos que possuem o grupo sudo têm acesso ao sudo
.
Porém, quando saí do comando de emissão do shell rootexit
e, portanto, retornei ao shell de bob , não consegui usar sudo
como se bob ainda não estivesse no arquivo sudoers: user not in sudoers.
. Além disso, quando executei id
o comando, bob não tinha o grupo sudo . Tentei fechar o terminal e fazer login/logout, mas não funcionou. Foi necessário reiniciar a máquina para que Bob tivesse acesso ao arquivo sudo
.
Havia uma maneira de não reiniciar a máquina?
Você não fez login como bob, você abriu um novo terminal enquanto já estava logado. Se você abriu um novo shell de login, por exemplo com
Então você teria visto o novo grupo. Alternativamente, se você tivesse fechado a sessão aberta de bob (sair da GUI) e depois logado novamente como bob, você também teria visto o novo grupo.
Portanto, não, a reinicialização não é necessária para obter novas alterações de grupo, mas fazer login novamente é.
Ilustrar:
Parece que não funcionou, mas é porque você está de volta ao shell de onde começou. Tente abrir um novo shell de login ( não apenas um novo terminal, um novo shell de login):
PS. Se você estiver logado como
root
, por exemplo comsu
ousudo -i
, não há motivo para usarsudo
, basta executar os comandos diretamente, você já é root.