Ahora que sabes cómo cambiar la propiedad de grupo, exploremos cómo ver la información de grupo y entender por qué los permisos de grupo son importantes.
En Linux, la información sobre los grupos se almacena en el archivo /etc/group. Puedes ver los grupos que existen en el sistema con el comando getent:
getent group
Esto mostrará una larga lista de todos los grupos en el sistema. Para ver solo los grupos con los que hemos estado trabajando, puedes filtrar la salida:
getent group | grep -E 'defenders|strategists'
Deberías ver una salida similar a:
defenders:x:1001:
strategists:x:1002:
Para ver a qué grupos pertenece tu usuario actual, utiliza el comando groups:
groups
La salida muestra todos los grupos de los que tu usuario es miembro:
labex adm cdrom sudo dip plugdev lpadmin sambashare
Ahora, entendamos por qué los permisos de grupo son importantes. En Linux, los permisos de archivo se definen para tres categorías: propietario, grupo y otros. Creemos un nuevo archivo y modifiquemos sus permisos para demostrar esto:
touch ~/project/group_example.txt
ls -l ~/project/group_example.txt
La salida mostrará los permisos predeterminados:
-rw-r--r-- 1 labex labex 0 Jan 12 16:40 group_example.txt
La cadena de permisos -rw-r--r-- se puede desglosar como:
- Primer carácter: Tipo de archivo (- significa archivo regular)
- Los siguientes tres caracteres (rw-): Permisos del propietario (lectura, escritura, sin ejecución)
- Los siguientes tres caracteres (r--): Permisos del grupo (solo lectura)
- Los últimos tres caracteres (r--): Permisos de otros (solo lectura)
Cambiemos los permisos del grupo para permitir el acceso de escritura:
chmod g+w ~/project/group_example.txt
ls -l ~/project/group_example.txt
La salida ahora muestra:
-rw-rw-r-- 1 labex labex 0 Jan 12 16:40 group_example.txt
Observa que los permisos del grupo han cambiado de r-- a rw-.
Finalmente, combinemos lo que hemos aprendido cambiando tanto la propiedad de grupo como los permisos de grupo:
sudo chgrp defenders ~/project/group_example.txt
chmod g+x ~/project/group_example.txt
ls -l ~/project/group_example.txt
El resultado debería ser:
-rw-rwxr-- 1 labex defenders 0 Jan 12 16:40 group_example.txt
Ahora el archivo pertenece al grupo defenders y tiene permisos de lectura, escritura y ejecución para los miembros de ese grupo.