Guia para vários comandos e técnicas no Linux para listar grupos
No ecossistema Linux, a coleção de usuários é chamada de ‘Grupo’. Quando um usuário é adicionado a um grupo, estamos definindo as permissões de um usuário Linux. Os grupos também definem a quais arquivos, configurações e pastas o usuário deve ter acesso.
Em termos mais simples, os grupos ajudam você a descobrir e definir os privilégios como ler (r
), escrever (C
) e execute (x
) sobre um recurso compartilhado entre os usuários. Você também pode alterar essas permissões como e quando necessário.
Descobrir os grupos aos quais uma conta de usuário pertence o ajudará a aprender sobre as permissões de um determinado usuário e também a alterar as permissões sempre que necessário.
Este breve tutorial o ajudará a descobrir os grupos aos quais um usuário pertence usando alguns comandos e técnicas bem simples.
Pré-requisitos importantes
Antes de aprofundar o tutorial, seria útil se você tivesse uma visão geral básica de alguns dos conceitos. Eu recomendo que os iniciantes passem por esses conceitos primeiro.
Grupo: Uma coleção de usuários no sistema Linux. Um único usuário pode ser membro de mais de um grupo. Um grupo define quais permissões um usuário possui.
Grupo Primário: O grupo primário é o grupo principal associado à conta do usuário. Cada usuário deve ser membro de um único grupo primário. Ele é criado ao mesmo tempo em que a conta do usuário é criada e o usuário é automaticamente adicionado a este grupo. Normalmente, o nome do grupo principal é igual ao nome do usuário.
Grupo Secundário:O grupo secundário é opcional e um usuário pode ou não ter um grupo secundário. É usado para conceder alguns direitos adicionais ao usuário. O usuário pode ser membro de vários grupos secundários.
/ etc / group
Arquivo: No Linux, a associação do grupo é controlada pelo / etc / group
Arquivo. É um arquivo de texto simples contendo uma lista de grupos e os usuários pertencentes a cada grupo.
/ etc / passwd
Arquivo: Este arquivo contém informações para todas as contas de usuário no sistema. Há uma entrada de uma conta de usuário por linha representada neste arquivo.
Usando o grupos
comando
Usando o grupos
comando é um processo super simples para listar os grupos aos quais o usuário atual pertence. Você também pode usar este comando para listar os grupos de um usuário específico registrado no sistema.
Sintaxe:
grupos
Saída:
gaurav @ ubuntu: ~ $ grupos gaurav adm cdrom sudo dip plugdev lpadmin sambashare gaurav @ ubuntu: ~ $
Encontrar um grupo de um usuário específico.
Sintaxe:
grupos [nome de usuário]
Exemplo:
gaurav @ ubuntu: ~ $ groups tomcat tomcat: tomcat lpadmin sambashare gaurav @ ubuntu: ~ $
Neste exemplo, listei os grupos para os quais o usuário nomeou gato pertence.
Usando o identificação
comando
Usando o identificação
comando exibe as informações do grupo do usuário. Mostra parâmetros como uid
(ID do usuário), gid
(id do grupo) e a lista de grupos aos quais o usuário pertence.
Sintaxe:
id [nome de usuário]
Exemplo:
gaurav @ ubuntu: ~ $ id tomcat uid = 1002 (tomcat) gid = 1002 (tomcat) grupos = 1002 (tomcat), 113 (lpadmin), 128 (sambashare) gaurav @ ubuntu: ~ $
identificação
comando quando usado sem um argumento retorna as informações do grupo sobre o usuário atual.
Exemplo:
gaurav @ ubuntu: ~ $ id uid = 1000 (gaurav) gid = 1000 (gaurav) grupos = 1000 (gaurav), 4 (adm), 24 (cdrom), 27 (sudo), 30 (dip), 46 (plugdev) , 113 (lpadmin), 128 (sambashare) gaurav @ ubuntu: ~ $
Aqui, as informações do grupo do usuário atual são exibidas.
Usando o arquivo / etc / group
Conforme discutido no bloco de pré-requisitos, sabemos que / etc / group
arquivo contém todas as informações dos grupos disponíveis no sistema. Podemos usar este arquivo para ver a lista dos grupos usando um comando simples como segue.
Você pode usar gato
, menos
ou grep
comando para listar abrir o conteúdo deste arquivo.
menos / etc / group
Saída:
root: x: 0: daemon: x: 1: bin: x: 2: sys: x: 3: adm: x: 4: syslog, gaurav tty: x: 5: disco: x: 6: lp: x: 7 : mail: x: 8: news: x: 9: uucp: x: 10: man: x: 12: proxy: x: 13: kmem: x: 15: dialout: x: 20: fax: x: 21: voz : x: 22: cdrom: x: 24: disquete gaurav: x: 25: fita: x: 26: sudo: x: 27: áudio gaurav: x: 29: mergulho de pulso: x: 30: gaurav, batman www-data : x: 33:
Isso listará todos os grupos no sistema Linux.
Listando todos os grupos usando getent
comando
getent
comando pode ser usado para exibir uma lista de todos os grupos disponíveis em seu sistema Linux. A saída é semelhante à do conteúdo de / etc / group
Arquivo.
Usando grupo getent
comando exibe as entradas de bancos de dados configurados em /etc/nsswitch.conf
Arquivo.
Sintaxe:
grupo getent
Exemplo:
gaurav @ ubuntu: ~ $ getent group root: x: 0: daemon: x: 1: bin: x: 2: sys: x: 3: adm: x: 4: syslog, gaurav tty: x: 5: disco: x : 6: lp: x: 7: mse dip: x: 30: gaurav, batman: x: 39: stmp: x: 43: vídeo: x: 44: sasl: x: 45: plugdev: x: 46: gaurav staff : x: 50: jogos: x: 60: usuários: x: 100: 106: crontab: x: 107: vahi: x: 120: bluetooth: x: 121: scanner: x: 122: saned colord: x: 123: pulso: x: 124: acesso de pulso: x: 125: rtkit: x: 126: saned: x: 127: trindade: x: 1000: sambashare: x: 128: gaurav mongodb: x: 130: mongodb guest-tqrhc7: x: 999: guest-piinii: x: 998: scala: x: 997: sbt: x: 996: guest-oi9xaf: x: 995: tomcat: x: 1001: tomcat7: x: 132: tomcat8: x: 133: geoclue: x: 105: gdm: x: 134: mysql: x: 129: couchdb: x: 131: temporário: x: 1002:
Para encontrar o grupo de um usuário específico, use o seguinte comando.
grupo getent | grep [nome de usuário]
Exemplo:
gaurav @ ubuntu: ~ $ getent group | grep gaurav adm: x: 4: syslog, gaurav cdrom: x: 24: gaurav sudo: x: 27: gaurav dip: x: 30: gaurav, batman plugdev: x: 46: gaurav lpadmin: x: 113: gaurav gaurav: x: 1000: sambashare: x: 128: gaurav gaurav @ ubuntu: ~ $
Todos os grupos associados ao usuário gaurav agora estão listados no terminal.
Usando libuser-lid
comando
libuser-lid
comando exibe informações sobre grupos que contêm nome de usuário ou usuários contidos em nome de grupo.
NOTA: Este comando requer sudo
privilégios. Caso contrário, você encontrará um erro da seguinte forma-
Erro ao inicializar libuser: não executando com privilégios de superusuárioNenhum nome de usuário especificado,
No caso de libuser-lid
utilitário não está disponível em suas distros, você pode usar o seguinte comando para instalá-lo.
Por Ubuntu e Debian Comercial:
sudo apt-get update
sudo apt-get install libuser
Por CentOS, Fedora e outras distros:
sudo yum install libuser
Sintaxe:
sudo libuser-lid [nome de usuário]
Exemplo:
gaurav @ ubuntu: ~ $ sudo libuser-lid gaurav
Saída:
adm (gid = 4) cdrom (gid = 24) sudo (gid = 27) dip (gid = 30) plugdev (gid = 46) lpadmin (gid = 113) trinity (gid = 1000) sambashare (gid = 128)
Aqui, são listados todos os grupos associados ao nome de usuário inserido.
Conclusão
Neste tutorial super simples, agora aprendemos a exibir os grupos disponíveis nos sistemas Linux. Os comandos explicados neste tutorial podem ser aplicados em todas as distribuições Linux da mesma maneira.