Linux & Shell

calculadora de umask

Informe a máscara e os modos solicitados na criação. Compare as permissões de arquivos e diretórios, bit a bit.

calculadora de umask

Máscara e pedidos de criação

Permissões calculadas

Máscara — bits a remover
0022 · ----w--w-
Permissões permitidas (umask -S)
u=rwx,g=rx,o=rx

Arquivo

0644 · rw-r--r--

Realmente removidos: 0022 · ----w--w-

Ver cálculo por bits
Bits solicitados
0666 · 110 110 110
Máscara — bits a remover
0022 · 000 010 010
Bits permitidos (~mask & 0777)
0755 · 111 101 101
Bits resultantes
0644 · 110 100 100

Um bit é mantido apenas se foi solicitado e não está mascarado.

0666 & (~0022 & 0777) = 0644

Diretório

0755 · rwxr-xr-x

Realmente removidos: 0022 · ----w--w-

Ver cálculo por bits
Bits solicitados
0777 · 111 111 111
Máscara — bits a remover
0022 · 000 010 010
Bits permitidos (~mask & 0777)
0755 · 111 101 101
Bits resultantes
0755 · 111 101 101

Um bit é mantido apenas se foi solicitado e não está mascarado.

0777 & (~0022 & 0777) = 0755

Cálculo no navegador; as entradas não são enviadas nem salvas.

Exemplos e regras de entrada

Os símbolos indicam bits permitidos: u=rwx,g=rx,o=rx equivale a 022. As três classes são obrigatórias.

Só os pedidos informados são calculados. ACLs padrão e alterações posteriores não são simuladas.

Permissões calculadas.

A calculadora de umask ajuda a explicar por que um arquivo e um diretório criados pelo mesmo processo recebem permissões diferentes. Além da máscara, é preciso conhecer o modo solicitado pelo programa.

0666 e 0777 são pedidos comuns, não limites fixos do sistema. Altere esses valores quando souber o pedido real: a máscara remove bits presentes, mas não acrescenta permissões ausentes.

Por que usar esta calculadora de umask

Uma máscara, duas origens

A calculadora de umask mostra a diferença com 111: o pedido de arquivo 666 continua em 666, mas o pedido de diretório 777 vira 666. Os bits de execução que já estavam ausentes explicam por que uma subtração comum não resolve.

Um documento e uma pasta passam pelo mesmo filtro e preservam espaços de permissões diferentes.

Permitido não é solicitado

A calculadora de umask separa os bits permitidos pela máscara dos pedidos pelo programa. Uma solicitação de arquivo 777 pode preservar execução; uma solicitação 666 não ganha esse bit só porque a máscara permite.

Duas camadas de permissões se sobrepõem, mantendo apenas os espaços presentes em ambas.

Confira o pedido e a notação

01

Experimente a máscara ímpar

Escolha 111 e carregue a prévia. Veja quantos campos serão alterados antes de aplicar. O arquivo continuará em 0666; Desfazer restaura as entradas e o resultado anterior juntos.

02

Diferencie as formas simbólicas

Na máscara, use a saída completa de umask -S, como u=rwx,g=rx,o=rx. Nos modos solicitados, use nove caracteres, como rw-rw-rw-. A primeira forma representa o permitido; a segunda, o solicitado.

03

Compare várias mudanças

Desative o cálculo automático para editar vários campos de uma vez. Mudanças bloqueiam imediatamente a exportação. Calcular ou Ctrl/Cmd+Enter atualiza o relatório; abra os passos para conferir cada operando.

Acompanhe os bits preservados

Pedidos de criação independentes

As permissões padrão partem de 0666 para arquivos e 0777 para diretórios. Os dois valores são editáveis. Um programa que cria executáveis pode pedir 0777, enquanto um arquivo privado pode ser solicitado com 0600.

Máscara de bits e notação simbólica

O número indica os bits a remover; as atribuições completas u=,g=,o= indicam os permitidos. O resultado exibe quatro dígitos octais e as nove posições rwx de proprietário, grupo e outros usuários.

Remoção efetiva em destaque

Confira pedido, máscara, complemento restrito a nove bits e interseção final. Os bits realmente removidos aparecem separadamente. Um bit da máscara que não existia no pedido não representa uma alteração adicional.

Limites do cálculo

Somente nove bits comuns
Aceita três dígitos octais ou quatro começando com zero; pedidos também aceitam nove caracteres rwx. Bits especiais, prefixos de tipo e sufixos ACL são rejeitados. Espaços externos são removidos; cada campo aceita até 128 caracteres.
Declarações simbólicas completas
u, g e o devem aparecer exatamente uma vez. A ordem das cláusulas é livre, mas as permissões seguem rwx ou ficam vazias. Não interpreta expressões relativas como g+w, abreviações a= nem cópias como g=u.
Sem simulação de ACL
No Linux, uma ACL padrão herdada do diretório pai pode substituir o cálculo comum de umask. Herança de bits especiais, chmod posterior, opções de montagem e ajustes feitos pela aplicação não são simulados.
Sem cálculo inverso ou alteração do sistema
026 e 027 geram 0640 a partir de 0666, portanto um resultado não determina uma máscara única. A página não modifica arquivos, executa comandos, grava configurações do shell nem salva as entradas.

Dúvidas sobre a calculadora de umask

Por que alguns valores de umask parecem não fazer efeito?

Um bit da máscara só afeta o resultado quando também foi solicitado. Para 0666, tanto 026 quanto 027 dão 0640, pois a diferença está em um bit de execução ausente. A operação é AND com a máscara invertida, não subtração.

Por que um arquivo novo não ganha permissão de execução com umask 000?

Comandos comuns de criação pedem 0666, sem execução. A máscara 000 não remove nada, mas também não adiciona bits. Um programa que cria executáveis pode solicitar 0777; nesse caso os bits de execução podem ser preservados.

Por que o umask aparece com quatro dígitos, como 0022?

0022 e 022 são equivalentes aqui. O zero inicial não é outra categoria de usuário. Em uma entrada de quatro dígitos, o primeiro deve ser zero; valores como 1022 são rejeitados.

O que significa a saída do comando umask -S?

A saída representa as permissões que a máscara deixa passar. u=rwx,g=rx,o=rx corresponde ao valor permitido 0755 e à máscara 0022. Isso não concede execução a um arquivo solicitado com 0666.

Como o umask interage com as ACLs padrão?

O Linux herda a ACL padrão do pai e a limita pelas permissões solicitadas. Esse caminho substitui a aplicação normal de umask. Como não há entrada para ACL nesta ferramenta, esse caso não é calculado.

Resultado inesperado?

Compare outra solicitação

A calculadora de umask coloca lado a lado o pedido do programa e o que a máscara preserva. Para explicar um arquivo real, confira também o processo criador e a ACL do diretório pai.