-
Notifications
You must be signed in to change notification settings - Fork 0
03 umask_Permisos Predeterminados de Archivos
- Qué es
umask - Definición del File Mode Predeterminado
- Mostrar el Valor Actual del Mode Mask
- Establecer el Valor del Mode Mask
- Recursos Recomendados
- Referencias
umask es una utilidad usada para controlar el file-creation mode mask
(máscara del modo de creación de archivos), el cual determina el file mode
(permisos) predeterminado para los archivos nuevos.
Note
El comportamiento de esta utilidad está estandarizado por POSIX y se describe en el Manual de programador POSIX. Debido a que esta utilidad afecta al entorno de ejecución actual del shell, usualmente se implementa como un comando built-in (integrado) en los shells.
En sistemas Unix y Unix-like (e.g., Linux), los permisos base para archivos
nuevos son 666, y para directorios nuevos son 777. Estos valores, en
conjunto con el file-creation mode mask, definen el file mode predeterminado
para los archivos y directorios nuevos.
El file-creation mode mask es un número octal de 4 dígitos que define los permisos a remover de los permisos base, produciendo el file mode predeterminado para los archivos nuevos.
Por definición, el file mode predeterminado (R) se obtiene aplicando la
operación AND bit a bit (bitwise conjunction) entre los permisos base (D) y
el complemento del file-creation mode mask (M):
Una manera más sencilla para obtener el file mode predeterminado (R) es
restarle el mode mask a los permisos base (D):
Important
Cuando la resta de dos dígitos dé como resultado un número negativo, lo interpretamos como si hubiera dado cero.
Primero calculamos el file mode predeterminado para los nuevos archivos:
Cálculo por Definición Cálculo por Resta
666 0b110_110_110 (D) 666 0b110_110_110 (D)
755 0b111_101_101 (¬M) 022 0b000_010_010 (M)
644 0b110_100_100 (R) 644 0b110_100_100 (R)
Ahora calculamos el file mode predeterminado para los nuevos directorios:
Cálculo por Definición Cálculo por Resta
777 0b111_111_111 (D) 777 0b111_111_111 (D)
755 0b111_101_101 (¬M) 022 0b000_010_010 (M)
755 0b111_101_101 (R) 755 0b111_101_101 (R)
Primero calculamos el file mode predeterminado para los nuevos archivos:
Cálculo por Definición Cálculo por Resta
666 0b110_110_110 (D) 666 0b110_110_110 (D)
750 0b111_101_000 (¬M) 027 0b000_010_111 (M)
640 0b110_100_000 (R) 640 0b110_100_000 (R)
Ahora calculamos el file mode predeterminado para los nuevos directorios:
Cálculo por Definición Cálculo por Resta
777 0b111_111_111 (D) 777 0b111_111_111 (D)
750 0b111_101_000 (¬M) 027 0b000_010_111 (M)
750 0b111_101_000 (R) 750 0b111_101_000 (R)
Primero calculamos el file mode predeterminado para los nuevos archivos:
Cálculo por Definición Cálculo por Resta
666 0b110_110_110 (D) 666 0b110_110_110 (D)
700 0b111_000_000 (¬M) 077 0b000_111_111 (M)
600 0b110_000_000 (R) 600 0b110_000_000 (R)
Ahora calculamos el file mode predeterminado para los nuevos directorios:
Cálculo por Definición Cálculo por Resta
777 0b111_111_111 (D) 777 0b111_111_111 (D)
700 0b111_000_000 (¬M) 077 0b000_111_111 (M)
700 0b111_000_000 (R) 700 0b111_000_000 (R)
Para mostrar el mode mask actual, simplemente ejecuta el comando umask. El
formato del output predeterminado depende de la implementación, pero
usualmente es octal:
$ umask
0022Para mostrar el mode mask actual en modo simbólico, se puede usar la opción
-S (estandarizada por POSIX). Esta opción muestra el file mode resultante
tomando 777 como permisos base (D):
$ umask -S
u=rwx,g=rx,o=rxPara establecer el mode mask actual, se puede utilizar el comando umask:
umask 027El valor predeterminado del mode mask puede establecerse agregando el comando
umask (e.g., umask 027) en archivos de configuración globales del shell,
tales como /etc/profile o un archivo dentro de /etc/profile.d/ (e.g.,
/etc/profile.d/umask.sh). Para un shell específico, puede agregarse en su
archivo de configuración global correspondiente (e.g., /etc/bash.bashrc).
La mayoría de las distribuciones de Linux establecen 022 como valor
predeterminado del mode mask en /etc/login.defs:
UMASK 022
El valor predeterminado del mode mask para un usuario puede establecerse
agregando el comando umask (e.g., umask 077) en el archivo .profile o,
para un shell específico, en alguno de sus archivos de configuración
correspondientes (e.g., .bashrc, .zshrc).
- Arch Linux Wiki (05 de abril de 2026). umask. https://wiki.archlinux.org/title/Umask
- Definición y Estructura de un Shell
- Los Diferentes Tipos de Shell
- Definición y Sintaxis de un Comando
- Variables, Alias y Funciones
- Comandos de Utilidad y Consulta
- Linux como Sistema Multiusuario
- Introducción a los Usuarios y Grupos
- Gestión de Usuarios
- Gestión de Grupos
- Gestión de Contraseñas
- Búsqueda de Información de Usuarios y Grupos con
getent
- Atributos de Archivos: Propiedad y Permisos de los Archivos
- Cambio de Propiedad y Permisos
umask: Permisos Predeterminados de Archivos- Cambio de Identidad y Privilegios
- Gestión de Paquetes (Package Management)
- Compresión y Archivado de Archivos
- Optimización y Conversion de Archivos