Uso de umask: máscaras de archivos y directorios

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:

  1. Ejecutemos umask para un usuario cualquiera.
  2. 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).
  3. 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).
  4. Eliminemos file1 y dir1.
  5. 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:

Uso de umask para establecer máscaras de archivos y directorios
Figura 1 – Uso de umask para establecer máscaras de archivos y directorios

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!