Un grupo de Linux es una colección de uno o más usuarios con requisitos de permisos idénticos en archivos y directorios. Un usuario puede ser miembro de más de un grupo a la vez. En Linux, la información de cada grupo se almacena en el "/etc/group" expediente. En este tutorial, veremos todas las formas posibles de averiguar fácilmente a qué grupos pertenece un usuario en sistemas operativos Linux y similares a Unix.
Conocer los grupos a los que pertenece una cuenta de usuario será de gran ayuda en muchas ocasiones. Por ejemplo, el otro día estaba instalando Dropbox en mi servidor Ubuntu . Al configurar Dropbox, tuve que ingresar mi nombre de usuario actual y el nombre del grupo. También podría encontrarse en una situación en la que necesite identificar los grupos a los que pertenece un usuario. Si es así, utilice cualquiera de los siguientes métodos para saber en qué grupo se encuentra un usuario.
Averigüe a qué grupos pertenece un usuario en Linux
Hay muchas maneras de enumerar los grupos de los que es miembro un usuario de Linux. El método más utilizado es el uso de grupos comando.
Método 1 - comando de grupos
Los grupos El comando muestra los nombres de los grupos actuales y los usuarios pertenecen a esos grupos en sistemas operativos Linux y similares a Unix.
Primero, busquemos cuántos grupos hay en nuestro sistema Linux.
Para encontrar la lista de disponibles en Linux, ejecute los grupos comando sin ningún argumento como el siguiente:
$ groups
Salida de muestra:
sk adm disk cdrom sudo dip plugdev lpadmin sambashare kvm libvirt vboxusers
Lista de grupos disponibles en Linux
Como puede ver en el resultado anterior, actualmente hay 12 grupos en mi sistema.
Ahora, averigüe qué grupos tiene un usuario específico, por ejemplo sk , pertenece a. Para hacerlo, ingrese el comando "grupos" seguido del nombre de usuario como se muestra a continuación:
$ groups sk
Salida de muestra:
sk : sk adm disk cdrom sudo dip plugdev lpadmin sambashare vboxusers kvm libvirt
Averigüe a qué grupos pertenece un usuario en Linux usando el comando de grupos
Toma, sk es mi nombre de usuario y el usuario sk es miembro de todos los grupos anteriores. Es posible que haya notado que "sk" aparece dos veces. Porque he usado el mismo nombre tanto para el nombre de usuario como para el nombre del grupo.
Para obtener más detalles sobre el comando "grupos", consulte las páginas man.
$ man groups
Método 2:comando de identificación
La otra forma de identificar los grupos en los que se encuentra un usuario es usando "id" dominio. El comando id se utiliza para imprimir información de usuario y grupo para el USUARIO especificado. Si no se especifica el USUARIO, imprimirá la información del usuario actual.
Para identificar todos los grupos a los que pertenece un usuario usando el comando "id", ejecute:
$ id sk
Reemplazar sk con tu nombre de usuario.
Salida de muestra:
uid=1000(sk) gid=1000(sk) groups=1000(sk),4(adm),6(disk),24(cdrom),27(sudo),30(dip),46(plugdev),116(lpadmin),126(sambashare),1001(vboxusers),129(kvm),136(libvirt)
Averigüe a qué grupos pertenece un usuario en Linux usando el comando id
Como puede ver aquí, el comando id no solo enumera los grupos de los que el usuario es miembro, sino también la identificación del grupo y la identificación del usuario (UID y GID) del usuario dado y los grupos. Tiene una salida más detallada que el comando "grupos", por lo que si necesita la identificación del grupo/identificación del usuario, ¡use esto!
Si no desea imprimir los números, simplemente use -Gn marca como a continuación:
$ id -Gn sk sk adm disk cdrom sudo dip plugdev lpadmin sambashare vboxusers kvm libvirt
Para obtener más detalles, consulte las páginas man.
$ man id
Método 3:usar el archivo "/etc/group"
Como ya dije, el /etc/group El archivo contiene la información sobre cada grupo en un sistema Linux. Puede encontrar a qué grupos pertenece el usuario dado en el contenido de /etc/group archivo con la ayuda de "grep" comando como se muestra a continuación:
$ grep sk /etc/group
Salida de muestra:
adm:x:4:syslog,sk disk:x:6:sk cdrom:x:24:sk sudo:x:27:sk dip:x:30:sk plugdev:x:46:sk lpadmin:x:116:sk sk:x:1000: sambashare:x:126:sk vboxusers:x:1001:sk kvm:x:129:sk libvirt:x:136:sk,libvirtdbus
Si desea excluir los ID de grupo y el nombre de usuario y mostrar solo los nombres de grupo, canalice la salida del comando "grep" a "awk" comando como a continuación:
$ grep sk /etc/group | awk -F: '{ print $1 }'
Salida de muestra:
adm disk cdrom sudo dip plugdev lpadmin sk sambashare vboxusers kvm libvirt
Encuentre a qué grupos pertenece un usuario en Linux usando los comandos grep y awk
Método 4:comando getent
El "gegente" El comando muestra entradas de bases de datos admitidas por las bibliotecas de cambio de servicio de nombres, que están configuradas en /etc/nsswitch.conf archivo.
Podemos enumerar todos los grupos disponibles y sus miembros en un sistema Linux usando el comando getent como se muestra a continuación:
$ getent group
Para encontrar a qué grupos pertenece un usuario específico (por ejemplo, sk), ejecuta:
$ getent group | grep sk
Salida de muestra:
adm:x:4:syslog,sk disk:x:6:sk cdrom:x:24:sk sudo:x:27:sk dip:x:30:sk plugdev:x:46:sk lpadmin:x:116:sk sk:x:1000: sambashare:x:126:sk vboxusers:x:1001:sk kvm:x:129:sk libvirt:x:136:sk,libvirtdbus
Si desea mostrar solo los grupos excluyendo todos los demás detalles, filtre la salida con los comandos "grep" y "awk" como se muestra a continuación:
$ getent group | grep sk | awk -F: '{ print $1 }' adm disk cdrom sudo dip plugdev lpadmin sk sambashare vboxusers kvm libvirt
Encuentre a qué grupos pertenece un usuario en Linux usando los comandos getent, grep y awk
Lista de todos los usuarios que pertenecen a un grupo en Linux
También podemos encontrar la lista de todos los usuarios que pertenecen a un grupo específico. Por ejemplo, el siguiente comando muestra los usuarios que pertenecen al grupo llamado almacenamiento .
$ grep -w storage /etc/group storage:x:95:sk
Fácil, ¿verdad? En efecto. ¡Encontrar a qué grupos pertenece un usuario y los usuarios de un grupo específico es muy fácil!
Lectura relacionada:
- Cómo enumerar los miembros de un grupo en Linux
- Cómo encontrar todos los usuarios de Sudo en su sistema Linux
Azada, esto ayuda.