¿Qué son los bits de Umask y cómo usarlos en Linux??

¿Qué son los bits de Umask y cómo usarlos en Linux??
En Linux, cada archivo y directorio tiene algunos permisos que ayudan a administrar el nivel de acceso de cada usuario en el sistema. Bits de máscara de modo de creación de archivos de usuario establece los permisos para archivos o directorios recién creados. Linux Umask consta de nueve bits: tres bits para el usuario (propietario), grupo y otros usuarios. El Umask cambia el permiso predeterminado de los archivos recién creados para evitar que otros usuarios accedan a ellos. Podemos cambiar estos permisos utilizando comandos de Umask.

Empezando

Enumere los permisos asignados a los archivos y directorios, como sigue:

ubuntu@ubuntu: ~ $ ls -la
Total 32
DRWXR-XR-X 5 Ubuntu Ubuntu 4096 23 de septiembre 23:57 .
DRWXR-X --- 32 Ubuntu Ubuntu 4096 Sep 24 03: 31 ..
DRWXRWXR-X 3 Ubuntu ubuntu 2048 5 de septiembre 17:43 Aircrack
DRWXRWXR-X 3 775 Ubuntu 4096 31 de marzo 15:03 Angular
DRWXRWXR-X 4 Ubuntu Ubuntu 1024 Abr 1 16:13 'Bash'
-rwxrw-r-- 1 Ubuntu ubuntu 0 30 de julio 16:28 juegos
-RW ------- 1 Ubuntu Ubuntu 12288 30 de julio 16:20 .SWP
-rw-rw-r-- 1 Ubuntu ubuntu 0 sep 23 23:57 Prueba

Permisos en Linux

Cada archivo creado en Linux tiene ciertas propiedades asociadas con él, como la propiedad y el permiso. La propiedad de cada archivo y directorio involucra a un usuario (propietario) y un grupo. Del mismo modo, las opciones para configurar el archivo y los permisos de directorio se muestran a continuación:

  • r es para el permiso de lectura con un valor de 4
  • W es para el permiso de escritura con un valor de 2
  • x es para ejecutar permiso con un valor de 1

Podemos combinar estos permisos para asignar un nivel variable de acceso a archivos o directorios:

  • RWX: Tiene un permiso completo de lectura, escritura y ejecución con un valor de 7
  • RW-: solo ha leído y escribe permiso con un valor de 6
  • r-: Solo tiene permiso de lectura con un valor de 4
  • R-X: solo ha leído y ejecutando permiso con un valor de 5

Entonces, siempre que deseemos permitir un cierto archivo o carpeta para el propietario, el grupo u otros usuarios, debemos cambiar la máscara predeterminada. Podemos averiguar la máscara predeterminada por este comando.

Ubuntu@ubuntu: ~ $ Umask
0002

Para asignar permiso a un archivo o directorio, le damos el valor de Umask. Los siguientes son los permisos para directorios contra sus valores de Umask:

Valores de permisos Valor de Umask

rwxrwxrwx 777 0000
rwxrwxr-x 775 0002
rwxrw-r-- 764 0013
RWXR-XR-X 755 0022
RW-R-R-- 644 0133

Para verificar los permisos contra el valor de Umask, establezca el valor de Umask en 0022 y crear un directorio de tal manera que cada nuevo directorio tenga un valor de permiso predeterminado de 755:

Ubuntu@ubuntu: ~ $ Umask 0022
ubuntu@ubuntu: ~ $ mkdir dir1
ubuntu@ubuntu: ~ $ ls -l
DRWXR-XR-X 2 Ubuntu ubuntu 4096 24 de septiembre 16:46 Dir1

Los siguientes son los permisos para los archivos contra sus valores de Umask:

Valores de permisos Valor de Umask

RW-RW-RW- 666 0000
RW-RW-R-- 664 0002
RW-R-R-- 644 0022

Ahora configure el valor de Umask en 0022 y crear un nuevo archivo. El archivo tendrá 644 permisos:

Ubuntu@ubuntu: ~ $ Umask 0022
ubuntu@ubuntu: ~ $ touch file1
ubuntu@ubuntu: ~ $ ls -l file1
-RW-R-R-- 1 Ubuntu Ubuntu 0 Sep 24 de septiembre 16:32 Archivo1

Asignación de permiso a través de notación octal

Ahora cree un archivo y directorio utilizando el valor 0777 Umask. El directorio y el archivo creado no tendrán permisos:

Ubuntu@ubuntu: ~ $ Umask 0777
ubuntu@ubuntu: ~ $ touch file2
ubuntu@ubuntu: ~ $ mkdir dir2
ubuntu@ubuntu: ~ $ ls -l
---------- 1 Ubuntu Ubuntu 0 Sep 24 16:53 File2
D --------- 2 Ubuntu Ubuntu 4096 Sep 24 16:53 Dir2

Para obtener la asignación completa de permisos a los nuevos archivos y directorios, configure el valor de Umask en 0000.

Ubuntu@ubuntu: ~ $ Umask 0000
ubuntu@ubuntu: ~ $ touch file3
ubuntu@ubuntu: ~ $ mkdir dir3
ubuntu@ubuntu: ~ $ ls -l
-RW-RW-RW- 1 Ubuntu Ubuntu 0 Sep 24 de septiembre 16:56 Archivo3
DRWXRWXRWX 2 Ubuntu ubuntu 4096 24 de septiembre 16:55 Dir3

Asignación de permiso a través de notación simbólica

Establecer permisos de archivo utilizando las opciones simbólicas en lugar de los valores octales. Para establecer los permisos completos utilizando las opciones simbólicas, ejecute el siguiente comando.

Ubuntu@ubuntu: ~ $ Umask a = rwx
ubuntu@ubuntu: ~ $ touch file4 && mkdir dir4
ubuntu@ubuntu: ~ $ ls -l
-RW-RW-RW- 1 Ubuntu Ubuntu 0 SEP 25 13:08 Archivo4
DRWXRWXRWX 2 Ubuntu Ubuntu 4096 25 de septiembre 13:08 Dir4

Para establecer el RW Permisos para el usuario (propietario), use el siguiente comando:

Ubuntu@ubuntu: ~ $ Umask u = rw
ubuntu@ubuntu: ~ $ touch file5 && mkdir dir5
ubuntu@ubuntu: ~ $ ls -l
-RW-RW-RW- 1 Ubuntu Ubuntu 0 Sep 25 13:35 Archivo5
DRW-RWXRWX 2 Ubuntu Ubuntu 4096 Sep 25 13:35 Dir5

Establezca los permisos de Umask para el grupo de la siguiente manera:

Ubuntu@ubuntu: ~ $ Umask g = rx
ubuntu@ubuntu: ~ $ touch file6 && mkdir dir6
ubuntu@ubuntu: ~ $ ls -l
-RW-R-R-- 1 Ubuntu Ubuntu 0 Sep 25 13:37 File6
DRW-R-XR-- 2 Ubuntu Ubuntu 4096 25 de septiembre 13:37 Dir6

Establezca los permisos de Umask para otros usando el comando a continuación:

Ubuntu@ubuntu: ~ $ Umask O = R
ubuntu@ubuntu: ~ $ touch file7 && mkdir dir7
ubuntu@ubuntu: ~ $ ls -l
-RW-R-R-- 1 Ubuntu Ubuntu 0 Sep 25 13:39 Archivo7
DRW-R-XR-- 2 Ubuntu Ubuntu 4096 25 de septiembre 13:39 Dir7

Vea el umask actual en su forma simbólica:

Ubuntu@ubuntu: ~ $ Umask -s
u = rwx, g = rx, o = r

Configuración de Umask

El permiso en Umask sigue siendo solo para la sesión o directorio actual. Para implementar cambios de forma permanente, establezca los cambios en su configuración de configuración. La configuración de la configuración del Umask puede variar para cada distribución; Sin embargo, para agregar los valores de Umask permanentemente en Ubuntu, realice cambios en el intento.bashrc archivo. Abra el archivo en su editor favorito para incluir los cambios como se muestra a continuación:

ubuntu@ubuntu: ~ $ sudo nano /etc /bash.bashrc

Conclusión

Umask es una herramienta útil para asignar un permiso predeterminado específico a los archivos y directorios recién creados. El artículo muestra cómo usar los bits de Umask y los valores contra los permisos de lectura/escritura/ejecución. También demostramos cómo asignar permisos a través de bits de Umask utilizando anotaciones octales y simbólicas.