Administração de Linux
medium
Administração de Linux Question #019e3987
Question Statement
Administração de Linux
#umask
#permissions
#octal-mask
#file-permissions
#directory-permissions
Medium
Qual valor de umask resultará nas permissões de acesso padrão de 600 (rw-------) para arquivos e 700 (rwx------) para diretórios?
A
0002
B
0022
C
0077
Correct
D
0700
Official Explanation / Community Explanations
O valor do umask determina as permissões padrão para arquivos e diretórios recém-criados. As permissões base padrão são 666 para arquivos (sem permissão de execução por padrão) e 777 para diretórios. O umask subtrai desses valores base. Para atingir permissões de arquivo de 600 (rw-------) e permissões de diretório de 700 (rwx------), o umask deve subtrair 066 dos arquivos (666 - 066 = 600) e 077 dos diretórios (777 - 077 = 700). O valor 0077 do umask realiza isso: ele subtrai 077 de ambos os valores base, resultando em 600 para arquivos e 700 para diretórios.
Como funciona
- Permissões básicas padrão: Os arquivos começam com 666 (rw-rw-rw-), os diretórios com 777 (rwxrwxrwx).
- Operação umask: O umask é uma máscara de bits que limpa (define como 0) os bits de permissão correspondentes. A permissão final = base & ~umask.
- Para umask 0077: Binário 000 000 111 111. Os três últimos dígitos octais (077) limpam todas as permissões de grupo e outros.
- Arquivos: 666 & ~077 = 666 & 700 = 600 (rw-------)
- Diretórios: 777 & ~077 = 777 & 700 = 700 (rwx------)
Por que outros valores estão incorretos
- 0002: Este umask subtrai apenas 002, mantendo a permissão de escrita para o grupo. Os arquivos passam a ter permissão 664 (rw-rw-r--) e os diretórios, 775 (rwxrwxr-x).
- 0022: Subtrai 022, removendo a escrita em grupo e outras escritas. Os arquivos passam a ter permissão 644 (rw-r--r--), os diretórios 755 (rwxr-xr-x).
- 0700: Este umask subtrai 700, o que limparia completamente as permissões do proprietário, resultando em arquivos com 066 (-------rw-) e diretórios com 077 (-------rwx), o que não é o resultado desejado.