El comando groups muestra los grupos de un usuario en Linux. Sin argumentos consulta los grupos asociados a la sesión actual; si indicas un nombre de usuario, consulta los grupos registrados para esa cuenta. Es útil para revisar permisos y detectar por qué un usuario puede o no acceder a un recurso.
La salida incluye el grupo primario y los grupos suplementarios. groups solo consulta información: no añade usuarios a grupos ni modifica permisos. Para ver también el UID y el GID, puedes usar id.
👉 Y recuerda, si quieres aprender más de Linux, visita el curso de Linux gratis.
También puedes consultar la guía de comandos Linux por categorías para encontrar otras herramientas de terminal.
Sintaxis básica del comando groups
El comando acepta cero o más nombres de usuario. Si no pasas ninguno, muestra los grupos del proceso que ejecuta la terminal; con uno o varios nombres, consulta las cuentas indicadas.
groups [OPCIÓN]... [USUARIO]...Explicación de la sintaxis
OPCIÓN: GNU groups solo ofrece –help y –version. No tiene opciones para añadir o quitar grupos.
USUARIO: nombre de una cuenta local o reconocida por el sistema de identidad configurado. Puedes indicar varios usuarios para consultar sus grupos en una sola ejecución.
Por ejemplo, este comando consulta los grupos asociados a la cuenta ana:
groups anaEl resultado depende de las cuentas y grupos existentes en tu sistema; el nombre ana es solo un ejemplo.
Comandos y opciones relacionados
| Comando | Qué muestra | Cuándo usarlo |
|---|---|---|
| groups | Grupos de la sesión actual. | Comprobar la pertenencia efectiva del proceso de terminal. |
| groups ana | Grupos registrados para ana. | Consultar una cuenta sin iniciar su sesión. |
| groups ana root | Grupos de varias cuentas. | Comparar usuarios en una sola consulta. |
| id | UID, GID primario y grupos. | Revisar la identidad completa de la sesión actual. |
| id -Gn ana | Nombres de los grupos de ana. | Obtener solo la lista de grupos; equivale a groups ana. |
| getent group docker | Entrada del grupo docker en la fuente de cuentas. | Consultar el grupo y los miembros enumerados por NSS. |
| groups –help | Ayuda del comando. | Ver las opciones disponibles. |
Ver los grupos de la sesión actual
Ejecuta groups sin argumentos. El comando muestra los grupos que tiene el proceso de la terminal, incluidos el primario y los suplementarios. El resultado puede variar entre sesiones y usuarios; no existe una lista universal que debas esperar.
groups
idgroups imprime únicamente los nombres de los grupos. id añade los identificadores numéricos de usuario y de grupo, por lo que resulta más útil al diagnosticar permisos con UID o GID.
Consultar los grupos de otra cuenta
Pasa el nombre de usuario después del comando. Para comparar varias cuentas, separa los nombres con espacios:
groups ana
groups ana root
id -Gn anaAl indicar una cuenta, groups consulta la información de usuarios y grupos del sistema. La forma id -Gn ana ofrece la misma lista de nombres de grupos para esa cuenta.
Por qué puede no aparecer un grupo recién añadido
Si un administrador añade una cuenta a un grupo mientras el usuario mantiene una sesión abierta, el comando ejecutado en esa terminal puede seguir mostrando la lista heredada al iniciar sesión. Cierra la sesión y vuelve a entrar para que los procesos nuevos reciban la pertenencia actualizada. Consultar groups ana puede mostrar antes el registro actualizado de la cuenta, pero no cambia los grupos efectivos de la terminal abierta.
Por ejemplo, si se añade un usuario al grupo docker, la consulta de la cuenta y la sesión activa pueden diferir hasta iniciar una sesión nueva. Además, pertenecer al grupo docker concede privilegios muy elevados en muchos sistemas; no lo añadas como solución automática a un problema de permisos.
Errores frecuentes al usar groups
Confundir la sesión actual con el registro de una cuenta: groups muestra los grupos del proceso; groups ana consulta el usuario indicado. No responden exactamente a la misma pregunta cuando la sesión está desactualizada.
Esperar que el comando cambie permisos: groups es de consulta. Para gestionar membresías se utilizan herramientas administrativas distintas, que requieren permisos y deben ejecutarse con cuidado.
Interpretar getent como la sesión efectiva: getent group docker muestra la entrada del grupo y los miembros enumerados por la fuente de cuentas. Para conocer los grupos de un proceso concreto, usa groups o id en esa sesión.
Ejemplo práctico: comprobar acceso a un grupo
Si una aplicación requiere que tu usuario pertenezca a un grupo, comprueba primero la sesión y después la cuenta registrada. Sustituye ana y docker por los nombres de tu sistema:
groups
groups ana
getent group docker
id -Gn anaCompara los resultados: los dos primeros comandos ayudan a distinguir la sesión actual de la información de la cuenta; getent consulta la entrada del grupo, e id -Gn presenta los grupos de la cuenta indicada. Si los datos no coinciden, renueva la sesión antes de concluir que el permiso está aplicado.
Ejemplo en video
En este video puedes ver una demostración del comando groups y de la información que devuelve en Linux:

