Calcule como o valor de umask define as permissões padrão de novos arquivos e diretórios criados no Linux.
0777 & ~0022 = 07550666 & ~0022 = 0644 (modo solicitado 0666)💻 Como Aplicar este umask no Terminal Linux
umask afeta apenas novos arquivos. Para alterar permissões existentes, use a nossa calculadora de chmod.Exercícios Práticos de umask (Linux Essentials & LPIC-1)
🛡️ O que é o umask e Como Ele Controla Permissões no Linux?
No sistema operacional Linux e em ambientes Unix-like, o umask (abreviação de user file-creation mode mask) é uma máscara de bits que determina as permissões padrão de segurança atribuídas a novos arquivos e diretórios no momento em que são criados por um usuário, script ou serviço em segundo plano.
Diferente do utilitário chmod (que modifica permissões de arquivos já existentes no disco), o umask atua como um filtro de segurança preventivo em nível de kernel, mascarando ou limpando bits específicos de permissão antes mesmo do arquivo ser gravado no sistema de arquivos.
Diretórios necessitam do bit de execução (x) para permitir listagem e navegação cd.
drwxrwxrwx ➔ drwxr-xr-x
Arquivos criados por ferramentas padrão partem do modo 0666; o umask limpa bits, não adiciona privilégios.
-rw-rw-rw- ➔ -rw-r–r–
modo_solicitado & ~umask (Bitwise AND com o complemento da máscara).📊 Tabela Completa de Valores Comuns de umask
Confira na tabela abaixo os valores octais mais utilizados em ambientes corporativos, servidores web e estações de trabalho:
| Valor umask | Novas Pastas (Dir) | Novos Arquivos | Cenário Recomendado |
|---|---|---|---|
| 0022 (022) | 755 (drwxr-xr-x) | 644 (-rw-r–r–) | Padrão da maioria das distros Linux (Ubuntu, Debian, Fedora, RHEL). |
| 0027 (027) | 750 (drwxr-x—) | 640 (-rw-r—–) | Servidores e Ambientes Hardened: outros usuários do sistema não têm acesso. |
| 0077 (077) | 700 (drwx——) | 600 (-rw——-) | Privacidade Máxima / SSH: apenas o proprietário pode ler, gravar e executar. |
| 0002 (002) | 775 (drwxrwxr-x) | 664 (-rw-rw-r–) | Trabalho Colaborativo (UPG): membros do mesmo grupo podem editar arquivos. |
| 0000 (000) | 777 (drwxrwxrwx) | 666 (-rw-rw-rw-) | Inseguro (Não recomendado): nenhuma permissão é mascarada. |
⚙️ Onde Configurar o umask de Forma Persistente no Linux?
O umask pode ser configurado em múltiplos níveis do sistema operacional dependendo do escopo desejado:
- Por Usuário (Shell Interativo): Adicione
umask 0027no final do arquivo~/.bashrcou~/.zshrcdo usuário. - Globalmente para Todos os Usuários: Configure a diretiva nos arquivos de perfil global do sistema em
/etc/profileou crie um script em/etc/profile.d/umask.sh. - Criação de Novos Usuários (useradd): O valor inicial aplicado na criação do diretório
/home/usuarioé definido na diretivaUMASKdentro do arquivo/etc/login.defs. - Serviços Systemd (Nginx, PHP-FPM, Docker): Em unit files do Systemd, utilize a diretiva
UMask=0027na seção[Service].
Estudando para Linux Essentials (010-160) ou LPIC-1?
O cálculo de umask e octal é uma das questões mais cobradas nos exames de certificação LPI e Red Hat. Pratique no nosso simulador com questões comentadas em português.
❓ Perguntas Frequentes sobre umask (FAQ)
Qual a diferença entre umask e chmod?
O umask atua preventivamente definindo as permissões padrão atribuídas a novos arquivos criados a partir daquele momento. O comando chmod atua retroativamente, alterando permissões de arquivos que já existem no disco.
O que significa a saída do comando umask -S?
A flag -S imprime a máscara em formato simbólico legível (ex: u=rwx,g=rx,o=rx). Note que o umask -S exibe as permissões que permanecem ativas (não as mascaradas), facilitando a leitura humana.
Por que um novo arquivo não recebe permissão 755 com umask 022?
Porque as ferramentas padrão de criação de arquivos (como touch, editores e redirecionadores de shell) solicitam o modo base 0666 (sem o bit de execução x). A operação lógica 0666 & ~0022 resulta em 0644. O bit de execução nunca é adicionado automaticamente pelo umask por motivos de segurança.