GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo enumerar todos los grupos en Linux?

Los grupos de Linux son una colección de usuarios. Están destinados a proporcionar privilegios fácilmente a un grupo de usuarios. En este tutorial, veremos varias formas de enumerar todos los grupos en Linux.

2 formas de listar todos los grupos en Linux

  1. /etc/archivo de grupo
  2. comando getent

1. /etc/archivo de grupo

El archivo /etc/group contiene todos los grupos locales. Entonces, podemos abrir este archivo y ver todos los grupos.

root@localhost:~# cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
...

Si está buscando un grupo específico, use el comando grep para filtrarlo.

root@localhost:~# cat /etc/group | grep sudo
sudo:x:27:journaldev,test
root@localhost:~#

2. comando getent

getente de Linux el comando obtiene entradas de bases de datos admitidas por las bibliotecas del cambio de servicio de nombres. Podemos usarlo para obtener toda la información de los grupos de la base de datos del grupo.

root@localhost:~# getent group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog
tty:x:5:
...

Veamos algunos ejemplos más de listados de todos los grupos en Linux.

Listar todos los nombres de grupos de Linux

Podemos usar el comando de corte para imprimir solo los nombres de los grupos. Esto es útil cuando buscamos la presencia de un nombre de grupo específico en un script de shell.

root@localhost:~# cut -d: -f1 /etc/group
root
daemon
bin
sys
adm
tty
...

También podemos usar el comando cortar con el comando getent.

root@localhost:~# getent group | cut -d: -f1
root
daemon
bin
sys
adm
tty
disk
...

El comando de corte divide cada línea usando el delimitador de dos puntos (:). Luego, el primer campo, que es el nombre del grupo, se selecciona con la opción -f1.

Lista de todos los nombres de grupos en orden alfabético

La salida de los comandos anteriores se puede pasar al comando sort para imprimir la salida en orden de clasificación natural.

root@localhost:~# getent group | cut -d: -f1 | sort
adm
audio
backup
bin
cdrom
crontab
daemon
...

Recuento de todos los grupos de Linux

Si está interesado en la cantidad de grupos de Linux, use los siguientes comandos.

root@localhost:~# cat /etc/group | grep -c ""
68
root@localhost:~# getent group | grep -c ""
68
root@localhost:~#

Lista de todos los grupos de un usuario

Podemos usar el comando de grupos para obtener todos los grupos de un usuario.

root@localhost:~# groups journaldev
journaldev : journaldev sudo test_users test_users_pwd
root@localhost:~# 

root@localhost:~# groups root
root : root
root@localhost:~#

Lista de grupos del usuario actual

Si ejecuta el comando de grupos sin ninguna entrada del usuario, imprimirá los grupos del usuario actual.

root@localhost:~# groups
root
root@localhost:~# su - journaldev
journaldev@localhost:~$ groups
journaldev sudo test_users test_users_pwd
journaldev@localhost:~$ 

Lista de grupos de usuarios junto con el ID de grupo

Podemos usar el comando id para imprimir la información del usuario. Este comando enumera todos los grupos junto con su ID de grupo.

root@localhost:~# id journaldev
uid=1002(journaldev) gid=1003(journaldev) groups=1003(journaldev),27(sudo),1004(test_users),1007(test_users_pwd)
root@localhost:~# 
root@localhost:~# id root
uid=0(root) gid=0(root) groups=0(root)
root@localhost:~# 

Lista de todos los usuarios de un grupo

Podemos usar el comando getent o el archivo /etc/groups para obtener todos los usuarios que pertenecen a un grupo.

root@localhost:~# getent group sudo
sudo:x:27:journaldev,test
root@localhost:~# 
root@localhost:~# getent group sudo | cut -d: -f4
journaldev,test
root@localhost:~# 

Conclusión

El comando getent y el archivo /etc/group se pueden usar para obtener todos los detalles de los grupos de Linux. Podemos usarlos junto con el comando cortar y ordenar para presentar el resultado de una mejor manera.

Referencias

  • página man de getent
  • cortar página del comando man

Linux
  1. Cómo averiguar la lista de todos los puertos abiertos en Linux

  2. Cómo enumerar todos los paquetes instalados en Linux

  3. ¿Cómo enumerar todos los usuarios en un grupo de Linux?

  4. ¿Cómo puedo enumerar todos los usuarios bloqueados en Linux?

  5. ¿Cómo enumerar todos los archivos de una partición en Linux?

Cómo enumerar particiones de disco en Linux

Cómo listar usuarios en Linux

Cómo encontrar todas las fuentes instaladas en Linux

Cómo enumerar usuarios y grupos en Linux

Cómo enumerar todos los usuarios de un grupo en Linux

¿Cómo enumerar todos los archivos ordenados por tamaño en Linux?