Cómo Listar Grupos en Linux

Guía de varios comandos y técnicas en Linux para listar grupos

En el ecosistema Linux, la colección de usuarios se denomina “Grupo”. Cuando se agrega un usuario a un grupo, estamos definiendo los permisos de un usuario de Linux. Los grupos también definen a qué archivos, configuraciones y carpetas debe tener acceso el usuario.

En términos simples, los grupos le ayudan a averiguar y establecer privilegios como leer (r), escribir (w) y ejecutar (x) sobre un recurso compartido entre los usuarios. También puede modificar estos permisos cuando sea necesario.

Descubrir los grupos a los que pertenece una cuenta de usuario le ayudará a conocer los permisos que tiene un usuario en particular y también a cambiar los permisos cuando sea necesario.

Este breve tutorial le ayudará a descubrir los grupos a los que pertenece un usuario utilizando algunos comandos y técnicas bastante simples.

Requisitos previos importantes

Antes de profundizar en el tutorial, sería útil tener una visión general básica de algunos de los conceptos. Recomendaría a los principiantes que repasen estos conceptos primero.

Grupo: Una colección de usuarios en el sistema Linux. Un solo usuario puede ser miembro de más de un grupo. Un grupo define qué permisos tiene un usuario.

Grupo principal: El grupo principal es el grupo principal asociado a la cuenta de usuario. Cada usuario debe ser miembro de un único grupo primario. Se crea al mismo tiempo que se crea la cuenta de usuario y el usuario se agrega automáticamente a este grupo. Generalmente, el nombre del grupo primario es el mismo que el nombre del usuario.

Grupo secundario:El grupo secundario es opcional y un usuario puede o no tener un grupo secundario. Se utiliza para otorgar algunos derechos adicionales al usuario. El usuario puede ser miembro de varios grupos secundarios.archivo

/etc/group: En Linux, la pertenencia al grupo está controlada por el archivo /etc/group. Es un simple archivo de texto que contiene una lista de grupos y los usuarios que pertenecen a cada grupo.archivo

/etc/passwd: Este archivo contiene información de todas las cuentas de usuario del sistema. Hay una entrada de una cuenta de usuario por línea representada en este archivo.

Usar el comando grupos

Usar el comando groups es un proceso súper simple para listar los grupos a los que pertenece el usuario actual. También puede usar este comando para enumerar los grupos de un usuario específico registrado en el sistema.Sintaxis

:

groups

Producto:

gaurav@ubuntu:~$ groupsgaurav adm cdrom sudo dip plugdev lpadmin sambasharegaurav@ubuntu:~$

Encontrar un grupo de un usuario en particular.Sintaxis

:

groups 

Ejemplo:

gaurav@ubuntu:~$ groups tomcattomcat : tomcat lpadmin sambasharegaurav@ubuntu:~$ 

En este ejemplo, he enumerado los grupos a los que pertenece el usuario llamado tomcat.

Usando el comando id

Usando el comando id muestra la información del grupo del usuario. Muestra parámetros como uid (id de usuario), gid (id de grupo) y la lista de grupos a los que pertenece el usuario.Sintaxis

:

id 

Ejemplo:

gaurav@ubuntu:~$ id tomcatuid=1002(tomcat) gid=1002(tomcat) groups=1002(tomcat),113(lpadmin),128(sambashare)gaurav@ubuntu:~$

id el comando cuando se usa sin argumento devuelve la información del grupo sobre el usuario actual.

Ejemplo:

gaurav@ubuntu:~$ iduid=1000(gaurav) gid=1000(gaurav) groups=1000(gaurav),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare)gaurav@ubuntu:~$

Aquí se muestra la información del grupo del usuario actual.

Usando el archivo/etc / group

Como se discutió en el bloque de requisitos previos, sabemos que el archivo /etc/group contiene toda la información de los grupos disponibles en el sistema. Podemos usar este archivo para ver la lista de los grupos usando un simple comando de la siguiente manera.

Puede usar el comando cat, less o grep para abrir el contenido de este archivo.

less /etc/group

Salida:

root:x:0:daemon:x:1:bin:x:2:sys:x:3:adm:x:4:syslog,gauravtty:x:5:disk: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:voice:x:22:cdrom:x:24:gauravfloppy:x:25:tape:x:26:sudo:x:27:gauravaudio:x:29:pulsedip:x:30:gaurav,batmanwww-data:x:33:

Esto listará los grupos completos en el sistema Linux.

Listar todos los grupos usando el comando getent

getent el comando se puede usar para mostrar una lista de todos los grupos disponibles en su sistema Linux. La salida es similar a la del contenido del archivo /etc/group.

El comando getent group muestra las entradas de las bases de datos configuradas en el archivo /etc/nsswitch.conf.

Sintaxis:

getent group

Ejemplo:

gaurav@ubuntu:~$ getent grouproot:x:0:daemon:x:1:bin:x:2:sys:x:3:adm:x:4:syslog,gauravtty:x:5:disk:x:6:lp:x:7:msedip:x:30:gaurav,batman:x:39:stmp:x:43:video:x:44:sasl:x:45:plugdev:x:46:gauravstaff:x:50:games:x:60:users:x:100:106:crontab:x:107:vahi:x:120:bluetooth:x:121:scanner:x:122:sanedcolord:x:123:pulse:x:124:pulse-access:x:125:rtkit:x:126:saned:x:127:trinity:x:1000:sambashare:x:128:gauravmongodb:x:130:mongodbguest-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:temporary:x:1002:

Para encontrar el grupo de un usuario en particular, utilice el siguiente comando.

getent group | grep 

Ejemplo:

gaurav@ubuntu:~$ getent group | grep gauravadm:x:4:syslog,gauravcdrom:x:24:gauravsudo:x:27:gauravdip:x:30:gaurav,batmanplugdev:x:46:gauravlpadmin:x:113:gauravgaurav:x:1000:sambashare:x:128:gauravgaurav@ubuntu:~$ 

Todos los grupos asociados con el usuario gaurav ahora están listados en el terminal.

Usando el comando libuser-lid

libuser-lid el comando muestra información sobre los grupos que contienen el nombre de usuario o los usuarios contenidos en el nombre de grupo.

NOTA: Este comando requiere privilegios sudo. De lo contrario, encontrará un error de la siguiente manera-

No user name specified,
Error initializing libuser: not executing with superuser privileges

En caso de que la utilidad libuser-lid no esté disponible en sus distribuciones, puede usar el siguiente comando para instalarla.

Para Ubuntu y Debian usuarios:

sudo apt-get update
sudo apt-get install libuser

Para CentOS, Fedora y otras distribuciones:

sudo yum install libuser

Sintaxis:

sudo libuser-lid 

Ejemplo:

gaurav@ubuntu:~$ sudo libuser-lid gaurav

Salida:

adm(gid=4)cdrom(gid=24)sudo(gid=27)dip(gid=30)plugdev(gid=46)lpadmin(gid=113)trinity(gid=1000)sambashare(gid=128)

Aquí, se enumeran todos los grupos que están asociados con el nombre de usuario introducido.

Conclusión

En este tutorial súper simple, ahora hemos aprendido a mostrar los grupos disponibles en los sistemas Linux. Los comandos explicados en este tutorial se pueden aplicar en todas las distribuciones de Linux de la misma manera.

Leave a Reply