A máscara de modo
Para citar ArchWiki :
O utilitário umask é usado para controlar a máscara do modo de criação de arquivo, que determina o valor inicial dos bits de permissão de arquivo para arquivos recém-criados.
os bits de modo
Os três números octal correspondem a permissões para usuário, grupo e outros. Ao alterar o terceiro número de 2 para 7, a permissão outro é alterada.
Para entender esses números, escreva-os em formato binário e cada bit corresponde a um dos read , write e execute . Em suma, 2 corresponde a escrever ; 7 corresponde a ler , escrever e executar . Diretórios são um pouco diferentes, read significa obter a lista de itens (arquivos e diretórios) dentro de um diretório, enquanto executar significa acessar esses itens desde que seus nomes sejam conhecidos.
como está mascarando
Para ser exato, as máscaras de modo decidem quais permissões são mascaradas ou removidas dos arquivos recém-criados por padrão. Portanto, um valor de máscara de 2 significa tornar os arquivos não graváveis; 7 significa remover todas as permissões. Observe que, mesmo que algumas permissões não sejam removidas pela máscara de modo, elas podem estar indisponíveis devido a outras restrições. Por exemplo, o Linux não permite que arquivos sejam criados com permissões de execução, portanto, eles nunca serão executáveis por padrão.
Um valor razoável
Então para responder a primeira pergunta: 022 significa que a permissão write é mascarada para outro , então por padrão os arquivos podem ser lidos mas não gravados ou modificados por outros. Embora a permissão executar não seja mascarada, outras pessoas não poderão executar arquivos por causa das restrições mencionadas acima; no entanto, eles podem acessar itens com diretórios. Altere para 027 e read e execute também são mascarados. Portanto, arquivos e diretórios recém-criados são mantidos privados de outros; itens dentro de diretórios recém-criados estarão sempre inacessíveis para outros.
Em muitos casos, há apenas um usuário humano . No entanto, geralmente há vários usuários do sistema usados para executar serviços, como nobody
. Em alguns casos raros, por exemplo, quando um programa em execução como ninguém é comprometido, as permissões restritivas podem impedir a leitura de dados confidenciais.
No entanto, em um ambiente multiusuário, o compartilhamento de um arquivo se torna mais envolvido: além de definir as permissões no arquivo, pelo menos a permissão executar precisa ser definida em todos os diretórios pai.
Definindo o valor
Quanto à segunda pergunta, a máscara de modo precisa ser definida apenas uma vez. Se for definido várias vezes, o último é importante. A maioria das distribuições define a máscara de modo padrão em /etc/profile
, então sugiro que você edite esse arquivo.