7.2.- Relacionar a los usuarios mediante grupos para mejorar la productividad

Un grupo es un conjunto de usuarios al que se le asigna un nombre. Por ejemplo, al grupo alumnos puede pertenecer todas las cuentas de los alumnos de una escuela o universidad.

usuarios_linux1Linux utiliza los grupos como medios para organizar los usuarios. Generalmente,  los grupos de usuarios son similares entre sí. Particularmente están definidos en ficheros de configuración similares, con nombres similares a los nombres de usuarios y se representan internamente mediante números (ya que son cuentas).

Sin embargo, los grupos no son cuentas, sino medios para organizar colecciones de cuentas, en gran parte como medida de seguridad. Cada fichero de un sistema Linux está asociado a un grupo específico, pudiéndose asignar varios permisos a los miembros de cada grupo.

La orden groups le permitirá saber a qué grupos pertenece su cuenta:

groups_1

Cada grupo puede tener desde ningún usuario hasta tantos como aguante el ordenador. La pertenencia a los grupos se controla mediante el fichero /etc/group.

group_2

Este fichero contiene una lista de grupos y los miembros que pertenecen a cada grupo. Más adelante veremos con detalle el contenido de este fichero.

Además de lo descrito en /etc/group, cada usuario posee un grupo por defecto o primario. El grupo por defecto o primario del usuario se definen en la configuración del usuario de /etc/passwd (el fichero que define las cuentas).

passwd

Cuando los usuarios acceden  al ordenador, se define su pertenencia a su grupo primario. Cuando los usuarios crean ficheros o inician programas, esos ficheros y programas en ejecución se asocian con un único grupo, el grupo actual. Un usuario puede acceder a ficheros que pertenezcan a otros grupos siempre que el usuario también pertenezca a dicho grupo y que esté permitido por los permisos de acceso del grupo. Sin embargo, para ejecutar programas o crear ficheros con un grupo distinto del primario, el usuario deberá ejecutar el comando newgrp para cambiar la pertenencia al grupo actual. Por ejemplo, para cambiar al grupo aula2, tendría que escribir:

newgrp

Si un usuario escribe este comando aparece como miembro del grupo aula2 en /etc/group, la pertenencia a su grupo actual cambiará. Tras ello, los ficheros creados por dicho usuario se asociarán con el grupo aula2. Como alternativa, los usuarios pueden cambiar el grupo asociado con un fichero existente utilizando los comandos chgrp o chown, descritos anteriormente en la sección 4.

usuariosLa estructura de este grupo le permite diseñar un sistema de seguridad que permita diferentes colecciones de usuarios para trabajar fácilmente con los mismos ficheros mientras que a la vez evitan que otros usuarios curioseen en los ficheros en los que no deberían tener acceso. En un caso sencillo, podemos crear grupos para distintos proyectos, clases o grupos de trabajo, en los que cada usuario esté restringido a uno de estos grupos; por ejemplo, un estudiante que asista a dos clases puede pertenecer a los grupos asociados a cada clase o un supervisor puede pertenecer a todos los grupos supervisados.