O que é umask?
sobes.tech IA
Resposta da IA
Umask (abreviação de user file-creation mode mask) é um comando em sistemas operativos do tipo Unix/Linux que define a máscara de permissões padrão para os novos ficheiros e diretórios criados. É um conjunto de bits que são desativados a partir dos direitos completos (777 para diretórios, 666 para ficheiros) ao criar um objeto.
Representação do umask:
- O umask é geralmente representado por um código octal de três dígitos, por exemplo,
022. Cada dígito corresponde aos direitos do proprietário, do grupo e de todos os outros utilizadores. - Os bits da máscara são invertidos relativamente aos direitos desejados. Por exemplo, para desativar o direito de escrita (
2) para o grupo, o bit correspondente será ativado na umask.
Cálculo dos direitos resultantes:
Os direitos de acesso resultantes para um novo ficheiro/diretório são calculados como:
Resultado = Direitos_iniciais E (NÃO umask)
Onde:
Direitos_iniciaispara ficheiro = 666 (rw-rw-rw-)Direitos_iniciaispara diretório = 777 (rwxrwxrwx)NÃO umask- o complemento binário do valor do umask. Ao usar um código octal, cada dígito do umask é subtraído de 7.
Exemplo: umask = 022
- Para ficheiro: 666 E (NÃO 022) = 666 E 755 = 644 (rw-r--r--)
- Para diretório: 777 E (NÃO 022) = 777 E 755 = 755 (rwxr-xr-x)
Visualização e definição do umask:
-
Visualizar o umask atual:
# Mostra o umask em octal umask# Mostra o umask em formato simbólico umask -S -
Definir um novo umask:
# Definir o umask em octal umask 027# Definir o umask em formato simbólico umask u=rwx,g=rx,o=r
O umask é uma ferramenta importante para garantir a segurança básica do sistema de ficheiros, estabelecendo permissões razoáveis por defeito para os novos objetos.