Hoy en nuestro Curso Gratuito de Linux aprenderemos sobre la administración de grupos.
¿Para que sirven?, ni más ni menos que para optimizar nuestro trabajo diario.
Supongamos que tenemos un recurso al que pueden acceder únicamente determinados usuarios de nuestro sistema para hacer uso (¡sin abuso!) de él, y el resto de los usuarios tienen prohibida su utilización. Lo que haremos entonces es agregar a los usuarios «permitidos» a un grupo y luego «permitir» al grupo (que incluye a los usuarios) que tenga disponible para su utilización a este recurso.
¿Cómo se crea un grupo?
Utilizando el comando groupadd.
Veamos un ejemplo en nuestro Linux que instalamos en este post, siempre validados como el superusuario root
Como se puede apreciar en la imagen, hemos creado 3 grupos, grupo1/grupo2/grupo3
Ahora, vamos a modificar el grupo de pertenencia del usuario adminblog para grupo1 (¿recuerdan lo que habíamos visto en este post?)
El modificador g cambia el grupo primario, esto se escribe en el archivo /etc/passwd
Si ejecutamos cat /etc/passwd
Observamos que ahora adminblog cuyo UID es 1000, pertenece al grupo con GID 1001.
Veamos con cat /etc/group a quien hace referencia el GID 1001
Claramente se aprecia que el GID 1001 corresponde al grupo1, es decir, al que asignamos al usuario adminblog hace instantes.
Ahora bien… con este modificador g únicamente vamos a modificar el grupo principal.
Veamos como se hace para agregar a un usuario a múltiples grupos simultáneamente.
El comando -G nos permite agregar a los usuarios a grupos adicionales.
Comprobemos lo antes dicho, ejecutemos cat /etc/passwd
¡Ups!, ¿no hay cambios?, efectivamente, porque el modificador G no escribe en /etc/passwd, lo hace unicamente en /etc/group por tratarse de grupos adicionales.
Veamos el contenido de /etc/group con el comando cat /etc/group
Claramente podemos apreciar que ahora, grupo2 y grupo3 tienen como miembro a nuestro usuario adminblog. En grupo1 NO VEMOS AL USUARIO PORQUE ES SU GRUPO DE PERTENENCIA, esto lo vemos únicamente en el archivo /etc/passwd
Ahora bien, ¿qué hay que hacer para REMOVER a un usuario de un grupo?
Nuevamente con el comando usermod vamos a especificar a que grupos queremos que pertenezca, veamos con un ejemplo
Comprobemos el contenido de /etc/group
¿Qué ha ocurrido?, adminblog ya NO pertenece a grupo3
Como «ayuda memoria» podemos decir que SIEMPRE con el modificador -G debemos especificar todos los grupos a los que pertenece el usuario ya que, podemos decir tambien que «grupo que no se nombra, grupo que no se pertenece». ¿Se entiende?.
¿Y si quiero eliminar un grupo?
Con el comando groupdel
Veamos como
¡Epa!, ¿qué pasó aquí?, no se ha podido borrar grupo1 ya que es el grupo de pertenencia o grupo primario de al menos un usuario, y hasta que éstos sean removidos de él, no se podrá borrar. En cambio, si se trata de otros grupos…
Vemos que no da advertencia alguna, y si comprobamos /etc/group
Verificamos que grupo2 y grupo3 han desaparecido a pesar de tener al usuario adminblog como miembro.
Espero que les haya sido útil la explicación. En el próximo post vamos a hablar de Permisos.
¡No dejes de compartir si fue de utilidad!
Hasta la próxima
Eduardo