Linux Administration
medium
Questão de Linux Administration #019e3987
Enunciado da Questão
Linux Administration
#umask
#permissions
#octal-mask
#file-permissions
#directory-permissions
Médio
Which umask value will result in the default access permissions of 600 (rw-------) for files and 700 (rwx------) for directories?
A
0002
B
0022
C
0077
Correta
D
0700
Explicação Oficial / Explicações da Comunidade
The umask value determines the default permissions for newly created files and directories. The default base permissions are 666 for files (no execute by default) and 777 for directories. The umask subtracts from these bases. To achieve file permissions of 600 (rw-------) and directory permissions of 700 (rwx------), the umask must subtract 066 from files (666 - 066 = 600) and 077 from directories (777 - 077 = 700). The umask value 0077 accomplishes this: it subtracts 077 from both bases, resulting in 600 for files and 700 for directories.
How it Works
- Default base permissions: Files start with 666 (rw-rw-rw-), directories with 777 (rwxrwxrwx).
- Umask operation: The umask is a bitmask that clears (sets to 0) the corresponding permission bits. The final permission = base & ~umask.
- For umask 0077: Binary 000 000 111 111. The last three octal digits (077) clear all group and other permissions.
- Files: 666 & ~077 = 666 & 700 = 600 (rw-------)
- Directories: 777 & ~077 = 777 & 700 = 700 (rwx------)
Why Other Values Are Incorrect
- 0002: This umask subtracts only 002, leaving group write permission. Files become 664 (rw-rw-r--), directories 775 (rwxrwxr-x).
- 0022: Subtracts 022, removing group write and other write. Files become 644 (rw-r--r--), directories 755 (rwxr-xr-x).
- 0700: This umask subtracts 700, which would clear owner permissions entirely, resulting in files with 066 (-------rw-) and directories with 077 (-------rwx), which is not the desired outcome.