Calculadora de Chmod: Permissões Linux (755, 644…)

Calculadora de chmod online: marque ler, escrever e executar e veja o octal (755, 644), a notação rwx e o comando pronto. Com setuid, sticky bit e umask.

Calculadora de chmod online

Marque as permissões na grade e veja na hora o número octal, a notação simbólica e o comando chmod pronto para copiar. O caminho inverso também funciona: digite 644 ou cole -rwxr-xr-x (a primeira coluna do ls -l) e a grade se ajusta.

Lerr = 4Escreverw = 2Executarx = 1Dígitooctal
Donou7
Grupog5
Outroso5
chmod 755 arquivo
chmod u=rwx,g=rx,o=rx arquivo
  • Dono: ler, escrever e executar
  • Grupo: ler e executar
  • Outros: ler e executar

755 (diretório ou script): Dono faz tudo; grupo e outros leem e executam (em diretório: listam e entram). Padrão para pastas e programas.

Permissões comuns

Calculadora de umask

Arquivo novo (666 sem a umask)644 · rw-r--r--
Diretório novo (777 sem a umask)755 · rwxr-xr-x

Como ler uma permissão

No Linux, no macOS e nos demais sistemas Unix, cada arquivo tem três conjuntos de permissão, um para cada classe de usuário:

  • Dono (u, de user): quem é o proprietário do arquivo;
  • Grupo (g): os usuários que pertencem ao grupo do arquivo;
  • Outros (o): todo o resto.

Cada conjunto tem três permissões, e cada uma vale um número: ler (r) vale 4, escrever (w) vale 2 e executar (x) vale 1. Somando as permissões marcadas, cada classe vira um dígito de 0 a 7:

DígitoSimbólicoPermissões
7rwxler, escrever e executar
6rw-ler e escrever
5r-xler e executar
4r--só ler
3-wxescrever e executar
2-w-só escrever
1--xsó executar
0---nada

Assim, 755 é 7 para o dono (rwx), 5 para o grupo (r-x) e 5 para os outros (r-x): rwxr-xr-x. O sistema aplica só um dos três conjuntos: se você é o dono, valem as permissões do dono, mesmo que o grupo ou os outros tenham mais.

Permissões mais usadas

OctalSimbólicoUso típico
644rw-r--r--arquivos comuns: o dono edita, os demais só leem
755rwxr-xr-xdiretórios, scripts e programas
600rw-------arquivos privados: chave SSH privada, .env, senhas
700rwx------diretórios privados, como ~/.ssh
664rw-rw-r--arquivos editados por um grupo
775rwxrwxr-xdiretórios compartilhados por um grupo
400r--------somente leitura, até para o dono
777rwxrwxrwxtudo liberado para todos (evite)

O que significa chmod 777

chmod 777 dá leitura, escrita e execução a qualquer usuário do sistema. Costuma “resolver” erros de permissão negada, mas por um motivo ruim: deixa de existir proteção. Em um servidor web, qualquer processo comprometido passa a poder alterar seus arquivos. Quase sempre a correção certa é ajustar o dono com chown e usar 755 em diretórios e 644 em arquivos.

Executar em arquivo × em diretório

As mesmas três letras significam coisas diferentes em diretórios:

PermissãoEm arquivoEm diretório
rler o conteúdolistar os nomes dos arquivos (ls)
walterar o conteúdocriar, apagar e renomear arquivos dentro dele (precisa de x também)
xexecutar como programa ou scriptentrar no diretório (cd) e acessar o que está dentro

Duas consequências que confundem muita gente: um diretório sem x é inacessível mesmo com r; e apagar um arquivo depende da permissão de escrita no diretório, não no arquivo.

Por isso chmod -R 755 pasta marca todos os arquivos como executáveis, o que raramente é desejado. O X maiúsculo resolve: ele só concede execução a diretórios (e a arquivos que já eram executáveis para alguém).

chmod -R u=rwX,g=rX,o=rX pasta

Bits especiais: setuid, setgid e sticky

Um quarto dígito, à esquerda, guarda três bits especiais:

BitValorEfeitoExemplo
setuid4o programa roda com o usuário do dono do arquivo4755 → rwsr-xr-x (/usr/bin/passwd)
setgid2o programa roda com o grupo do arquivo; em diretório, os arquivos novos herdam o grupo2775 → rwxrwsr-x
sticky1em diretório, só o dono do arquivo, o dono do diretório ou o root apagam e renomeiam1777 → rwxrwxrwt (/tmp)

Na notação simbólica eles ocupam a posição do x: s para setuid e setgid, t para o sticky bit. A letra minúscula indica que a execução também está marcada; maiúscula (S, T), que o bit especial está ligado mas falta o x. Um S maiúsculo quase sempre é sinal de engano. No Linux, o setuid é ignorado em scripts interpretados (os que começam com #!).

umask: a permissão dos arquivos novos

A umask define quais permissões são retiradas quando um arquivo ou diretório é criado. Os programas pedem normalmente 666 para arquivos e 777 para diretórios, e o sistema desliga os bits presentes na umask:

umaskArquivo novoDiretório novo
022644755
002664775
027640750
077600700

A conta é feita bit a bit, não é uma subtração: com umask 033, o arquivo novo fica 644 (e não “633”), porque o arquivo já não tinha o bit de execução para perder. A calculadora de umask acima faz a operação correta. Para ver a umask atual, rode umask no terminal.

Limitações

  • A calculadora cobre as permissões tradicionais. ACLs (setfacl), atributos como chattr +i e políticas do SELinux ou AppArmor podem liberar ou bloquear o acesso por fora delas.
  • O root não é barrado pelas permissões de leitura e escrita.
  • No GNU coreutils (a maioria das distribuições Linux), um modo numérico como chmod 755 pasta não remove setuid e setgid já existentes em um diretório; para tirá-los, use chmod u-s,g-s pasta.
  • No Linux, as permissões de um link simbólico não são usadas: chmod altera o arquivo para o qual o link aponta.

Perguntas frequentes

Qual a diferença entre chmod 755 e 644?

O 755 inclui o bit de execução para todos; o 644, não. Use 755 em diretórios e em programas ou scripts, e 644 em arquivos de dados (texto, HTML, imagens, configuração).

Como dar permissão de execução a um script?

chmod +x script.sh acrescenta a execução para as classes permitidas pela umask (em geral, todas), mantendo o resto. Para dar só ao dono, use chmod u+x script.sh.

Qual a permissão correta para a chave SSH?

600 para a chave privada (~/.ssh/id_ed25519) e 700 para a pasta ~/.ssh. O cliente OpenSSH se recusa a usar uma chave privada que outros usuários possam ler.

O que é o hífen ou a letra d no começo do ls -l?

É o tipo do arquivo, não uma permissão: - para arquivo comum, d para diretório, l para link simbólico. Os nove caracteres seguintes são as permissões. Pode colar os dez caracteres na calculadora: ela ignora o primeiro.

Posso usar 4 dígitos, como 0755?

Sim. O primeiro dígito é o dos bits especiais; 0755 e 755 são o mesmo modo.

Ferramentas relacionadas