O que está acontecendo?
A lista de grupos em que um usuário se encontra é configurada apenas no login (e possivelmente modificada usando o comando sg
raramente usado, mas isso só funciona se houver uma senha de grupo definida para esse grupo). Se esse usuário fizer logout e, em seguida, efetuar login novamente, ele deverá se ver nesse grupo. No entanto, estar no grupo com GID 0 ('root' na maioria dos sistemas Linux, 'wheel' ou 'adm' na maioria dos sistemas não-Linux) não é o mesmo que ter privilégios administrativos, e é de fato uma má idéia de um perspectiva de segurança.
Por que isso não é o mesmo que privilégios administrativos?
O usuário root (UID 0) é especial. O grupo raiz (GID 0, chamado wheel
em muitos sistemas não Linux por razões históricas que não consigo encontrar) não é. Seu usuário poderá acessar arquivos pertencentes ao grupo raiz, mas provavelmente não muito mais. Esta é uma distinção um tanto complicada, mas é muito importante.
Por que isso é uma má ideia?
Esta é uma má idéia, praticamente pelo mesmo motivo que correr o usuário root o tempo todo é uma má ideia. Você está sempre a um erro de tornar o sistema inutilizável (na maioria dos sistemas Linux, por exemplo, fazer parte do grupo raiz significa que você pode tornar o sistema não inicializável, pois é possível excluir coisas de /boot
).
Qual é a maneira correta (e segura) de conceder privilégios administrativos ao usuário?
Se possível, configure sudo
, doas
ou qualquer outra ferramenta de elevação de privilégios diferente de su
no seu sistema para permitir o acesso. Se você não tiver essa ferramenta diferente de su
, instale uma (sugiro sudo
, é a mais amplamente usada e, portanto, uma das mais fáceis de aprender porque há muita documentação). Se isso também não for uma opção, apenas elevar através de su
quando você precisar executar tarefas administrativas for a opção correta (embora tenha cuidado ao fazer isso, pois su
não reinicia corretamente o ambiente para os comandos chamados através dele) .