Comando groups no Linux: como verificar os grupos de um usuário

O comando groups mostra os nomes dos grupos aos quais pertence o usuário atual ou um usuário indicado. Ele ajuda a verificar a associação a grupos ao investigar o acesso a arquivos compartilhados.

Sem argumentos, groups mostra os grupos do processo atual. Com um nome de usuário, consulta os grupos dessa conta. Para ver identificadores numéricos e informações mais detalhadas, use id.

Sintaxe básica

groups [usuário ...]

A implementação e as opções disponíveis podem variar entre distribuições. Consulte man groups no seu sistema.

Exemplos de uso

Para verificar os grupos em vigor na sessão atual, execute:

groups

Para consultar uma conta específica, substitua alice pelo nome desejado:

groups alice

Para exibir os identificadores de usuário e de grupo junto com seus nomes, execute:

id alice

Como interpretar o resultado e as permissões

Para uma conta chamada alice, a saída pode ter este formato:

alice : alice sudo

O nome antes dos dois pontos identifica a conta consultada; os nomes seguintes são seus grupos. Os nomes e o formato podem variar no seu sistema. Pertencer a um grupo não garante acesso por si só: as permissões dos diretórios superiores e as listas de controle de acesso (access control lists ou ACLs) também podem afetar o resultado.

Por que os grupos da conta e da sessão podem ser diferentes?

groups alice consulta os grupos da conta indicada, enquanto groups sem argumentos mostra os grupos do processo atual. Se a associação foi alterada recentemente, uma sessão já aberta pode não ter recebido a mudança. Compare groups e id sem argumentos e, se necessário, encerre a sessão e entre novamente.

Opções GNU e documentação

Na implementação GNU, groups --help mostra uma ajuda resumida e groups --version mostra a versão. Para detalhes, consulte a documentação GNU do comando groups.