Por lo general, cada vez que utilizamos una cuenta de usuario limitado para crear un archivo o un directorio, se establecen por defecto los permisos rw-rw-r– (octal 664) y rwxrwxr-x (octal 775), respectivamente. Si lo hacemos como root, los permisos se setean como rw-r–r– (octal 644) y rwxr-xr-x (octal 755). Esto es resultado de aplicar lo que se conoce como máscaras de archivos y directorios, cuyos valores podemos visualizar y cambiar. En este post explicaremos el uso de umask
para hacerlo.
En esencia, el permiso resultante surge de restar las máscaras del usuario a los valores 666 para archivos y 777 para directorios.
Uso de umask mediante un ejemplo
El siguiente ejemplo nos permitirá ilustrar:
- Ejecutemos
umask
para un usuario cualquiera. - Al crear un archivo llamado file1 los permisos resultarán de la resta entre 666 y la máscara de creación de archivos (002 para un usuario común y 022 para root).
- Cuando añadamos un directorio dir1, los permisos resultarán de la resta entre 777 y la máscara de creación de directorios (mismos valores que en el caso anterior).
- Eliminemos file1 y dir1.
- Establezcamos un nuevo valor para las máscaras (000 en el siguiente ejemplo) y volvamos a ejecutar los comandos de los pasos 1 a 3.
umask
touch file1
mkdir dir1
ls -ld file1 dir1
rm file1
rmdir dir1
umask 000
touch file1
mkdir dir1
ls -ld file1 dir1
En la Fig. 1 podemos ver el resultado de los comandos anteriores:
Los cambios que hicimos en la máscara permanecerán hasta que reiniciemos el equipo o que efectuemos otra modificación. Si deseamos aplicarlos de manera permanente deberemos colocar el comando umask
junto con el valor deseado en el archivo de inicialización de nuestra shell. El procedimiento para realizar esto último es muy similar a lo que explicamos en un post anterior sobre cómo ejecutar acciones al iniciar o cerrar sesión.
¡Hasta el próximo post!