Comandos Linux para la Gestión de Grupos

En esta entrada se detallan las formas para tratar con grupos, además como gestionar archivos y directorios para asociarlos a uno.

Se explica como crear grupos de varias formas y con varios comandos (también de manera manual, modificarlos y eliminarlos.

También se trata como cambiar el grupo al cual pertenece un archivo o directorio individial y recursivamente.

De la mano de este artículo podría interesarte Gesión de usuarios por comandos en Linux

Gestión de grupos por comandos

Gestión de grupos por comandos

Conceptos Generales

Dato Descripción
ID Es el identificador de usuario, es un dato único
GID Es el identificador del grupo al que pertenece el usuario por defecto
Texto descriptivo de usuario En algunos sistemas este campo se utiliza para incluir el nombre completo del usuario y sus datos personales

Crear Grupos

Al igual que para crear un usuario podemos crear grupos de varias formas distintas con más o menos complejidad que van de la mano de más o menos personalización, por ejemplo podríamos establecer un determinado GID a un grupo.

Crear usuario de forma sencilla con el comando groupadd

El comando groupadd permite crear un grupo tan solo con la orden seguida del nombre del grupo:

sudo groupadd “nombreGrupo”

Aún así suele bastar pero tal vez necesitemos algunas carácterísticas (sobre todo si lo usamos en algún script).

La lista de opciones para el comando groupadd son:

Opción Descripción
-f Termina si el grupo ya existe, y cancela -g si el GID ya se está en uso
-g Utiliza GID para el nuevo grupo
-h Muestra un mensaje de ayuda y termina
-K Sobrescribe los valores predeterminados de /etc/login.defs
-o Permite crear grupos con GID (no únicos) duplicados
-p Utiliza esta contraseña cifrada para el nuevo grupo
-r Crea una cuenta del sistema
-R Directory to chroot into

Crear grupo mediante addgroup con cierta personalización

Otro método para crear un grupo es mediante la herramienta addgroup, la cual tiene la siguiente sintaxis:

addgroup [–group] [-g gid] grupo

Con el parámetro –group indicamos que es el grupo del sistema.

Con “-g” podemos asignar un id específico, en caso contrario tomará el primero libre.

Ejemplo creando un grupo:

sudo addgroup –group “nombreGrupo”

Ahora un ejemplo creando un grupo con un id específico (6543):

sudo addgroup –group -g 6543 “nombreGrupo”

Añadir un grupo del sistema:

sudo addgroup –system [–gid ID] GRUPO

Crear grupo de forma manual editando archivos

Para añadir un grupo manualmente tendremos que editar el archivo /etc/group

Abriremos el archivo con un editor de texto:

sudo nano /etc/group

Y dentro añadiremos una línea similar a la siguiente al final del archivo donde 1004 será el GID:

multimedia:x:1004

Modificar Grupos

El comando “groupmod” permite modificar la información del grupo. La sintaxis para modificar el valor de un grupo es la siguiente:

groupmod [-g gid] [-n nombre] grupo

De los valores entre corchetes modificaremos aquellos que necesitamos cambiar al grupo, el grupo va al final.

Algunas de las opciones para este comando son:

Opción Descripción
-g Cambia el identificador del grupo a GID
-h Muestra un mensaje de ayuda y termina
-n Cambia el nombre a GRUPO_NUEVO
-o Permite utilizar un GID duplicado (no único)
-p Cambia la contraseña a CONTRASEÑA (cifrada)
-R Directory to chroot into

Eliminar Grupos

El comando “groupdel” es el que nos permitirá borrar grupos. Se utiliza con una sintaxis muy limpia:

groupdel grupo

Realmente lo que hace es borrar un grupo del archivo /etc/group

Cambiar Grupo de un archivo o directorio

El comando “chgrp” permite cambiar el grupo de un archivo o un directorio.

Para cambiar el grupo de solo un archivo o directorio utilizaremos la siguiente sintaxis:

chgrp “NombreGrupo” “Archivo”

A continuación un ejemplo para cambiar todo el directorio Proyecto y lo que incluya de forma recursiva (directorio dentro de directorio) para que ahora pertenezca al grupo userProy:

sudo chgrp -R userProy /home/usuario/Proyecto

Con la opción “-R” hacemos que cambie de forma recursiva todos los archivos y directorio de forma recursiva

Comandos Linux

Raúl Caro Pastorino

Informático, técnico en sistemas, redes, baja tensión (electricidad) y desarrollador de aplicaciones WEB. Soy un apasionado por GNU/LINUX y el software libre en general desde prácticamente el año 2001-2003 que comencé. Intento usar y trabajar siempre con código libre o abierto de forma profesional. Me apasiona la programación, la micro-electrónica, el diseño gráfico y edición multimedia. Fan de Raspberry y arduino. Programo en bash, python, php y javascript principalmente. Repositorios de código con git: https://gitlab.com/fryntiz https://github.com/fryntiz

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.