Comando groupadd en Linux: crear grupos correctamente

comando-groupadd
comando-groupadd

El comando groupadd crea un grupo nuevo en Linux. Los grupos permiten asignar permisos compartidos a varios usuarios, por ejemplo para colaborar en un directorio o administrar recursos de una aplicación. Por defecto, el sistema elige el GID disponible; puedes indicar uno concreto cuando necesitas mantener la misma identidad entre equipos o contenedores.

Crear el grupo no añade automáticamente a los usuarios que deben pertenecer a él. Esa membresía se configura aparte. En esta guía verás cómo crear y verificar grupos, cuándo fijar un GID y cómo añadir usuarios sin sustituir sus otros grupos.

👉 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 administración.

Sintaxis básica del comando groupadd

La sintaxis de groupadd acepta opciones y un único nombre de grupo. Ejecuta el comando con privilegios administrativos:

sudo groupadd [OPCIONES] NUEVO_GRUPO

Explicación de la sintaxis

sudo: solicita privilegios administrativos para modificar la base de grupos del sistema. Si trabajas en una sesión root, puedes omitirlo.

OPCIONES: permiten elegir el GID, crear un grupo de sistema o indicar usuarios, si la versión instalada admite esas opciones.

NUEVO_GRUPO: nombre único para la nueva cuenta de grupo. En shadow-utils, los nombres distinguen mayúsculas y minúsculas, no pueden empezar con guion ni ser solo numéricos, y tienen un máximo de 32 caracteres. Se admiten letras, números, guion bajo y guion; algunos sistemas también permiten terminar el nombre con $.

Para crear un grupo ordinario llamado desarrollo, usa:

sudo groupadd desarrollo

La orden suele terminar sin imprimir una confirmación. Comprueba el resultado consultando la base de cuentas del sistema:

getent group desarrollo

Si el grupo existe, la salida incluye su nombre, contraseña enmascarada, GID y los miembros suplementarios enumerados. Si no aparece, revisa el mensaje de error, los privilegios y si la cuenta se gestiona localmente o en un servicio externo.

Opciones principales del comando groupadd

Opción o comandoFunciónCuándo utilizarlo
groupadd grupoCrea un grupo con el siguiente GID disponible.Para un grupo local ordinario.
-g GIDAsigna un GID específico.Para mantener una identidad numérica compartida; primero verifica que esté libre.
-rCrea un grupo de sistema dentro del rango configurado.Para cuentas y servicios del sistema, no para grupos ordinarios de personas.
-U usuario1,usuario2Añade una lista de usuarios al grupo al crearlo, en versiones compatibles.Comprueba primero que la versión instalada admita esta opción.
-fEvita el error si el grupo ya existe; con -g puede elegir otro GID si el indicado está ocupado.Útil en algunos scripts idempotentes, pero revisa el resultado y el GID asignado.
getent group grupoConsulta el grupo y su GID.Verificar el resultado antes de configurar permisos.
usermod -aG grupo usuarioAñade un usuario existente como miembro suplementario.La opción -a conserva las demás membresías.

Crear un grupo con un GID específico

El GID identifica al grupo numéricamente y se usa en propietarios y permisos de archivos. Deja que el sistema lo elija salvo que necesites coordinar el mismo GID entre servidores, un almacenamiento compartido o un contenedor. Un GID ocupado puede asignar permisos a una identidad distinta de la prevista.

getent group 2000
sudo groupadd -g 2000 proyecto
getent group proyecto

El primer comando comprueba si el GID 2000 ya está asociado a un grupo conocido por el sistema. Si está libre y es el valor que necesitas, el segundo crea proyecto con ese GID; el tercero verifica el nombre y el valor asignado. Sustituye el número por el que hayas coordinado con tus sistemas.

Crear un grupo de sistema

Los servicios del sistema suelen necesitar identidades separadas para limitar sus permisos. La opción -r pide a groupadd que utilice el rango configurado para grupos de sistema, en lugar del rango habitual para grupos ordinarios. Los valores dependen de la distribución y de su configuración:

sudo groupadd -r servicio_web
getent group servicio_web

Usa esta opción al crear identidades de servicios o paquetes. No la elijas solo porque el grupo vaya a tener pocos miembros: su propósito es seleccionar el rango de GID de sistema.

Añadir usuarios al grupo nuevo

Crear el grupo no actualiza las cuentas existentes. Para incorporar a un usuario, utiliza usermod -aG; la opción -a añade el grupo a la lista suplementaria y evita reemplazar las demás membresías. En versiones compatibles, groupadd -U también puede asignar miembros durante la creación.

sudo usermod -aG desarrollo ana
groups ana

Después del cambio, el usuario debe iniciar una sesión nueva para que sus procesos reciban la membresía actualizada. La consulta groups ana muestra los grupos registrados para esa cuenta; dentro de una terminal que ya estaba abierta, usa groups para comprobar los grupos efectivos de esa sesión.

Errores frecuentes al usar groupadd

Intentar crear un grupo que ya existe: compruébalo con getent group nombre. No recurras a -f sin verificar qué grupo y qué GID quedaron registrados.

Elegir un GID ocupado: revisa el identificador con getent group GID y confirma que ese valor coincide con el plan de permisos. No uses -o para duplicar un GID salvo que sepas exactamente qué implica.

Creer que ya se han añadido usuarios: la creación del grupo y la membresía son tareas distintas. Usa usermod -aG para cuentas existentes y abre una nueva sesión para que el cambio llegue a sus procesos.

Usar groupadd para un grupo de LDAP o NIS: groupadd administra grupos locales. Las cuentas gestionadas por un directorio central deben crearse allí, siguiendo el procedimiento de ese servicio.

Ejemplo práctico: grupo compartido para un proyecto

Este flujo comprueba que el nombre no exista, crea el grupo, añade dos usuarios existentes sin borrar sus demás grupos y verifica los datos. Cambia los nombres por cuentas reales; la asignación requiere autorización administrativa:

getent group proyecto
sudo groupadd proyecto
sudo usermod -aG proyecto ana
sudo usermod -aG proyecto leo
getent group proyecto
groups ana
groups leo

Si el primer comando muestra una entrada, el grupo ya existe y debes decidir si reutilizarlo antes de seguir. Tras añadir miembros, confirma la lista y pide a los usuarios que abran una sesión nueva antes de probar el acceso al recurso compartido.

Referencia del manual

Las opciones pueden variar entre versiones de shadow-utils y distribuciones. Consulta la ayuda instalada con groupadd –help o la página de manual de groupadd antes de usar parámetros avanzados.

Ejemplo en video

En este video puedes ver una demostración del comando groupadd para crear grupos en Linux:

Comentarios

No hay comentarios aún. ¿Por qué no comienzas el debate?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *