Calculadora chmod
Converta permissões de arquivos Unix entre octal (755), letras (rwxr-xr-x), ls -l e cláusulas chmod, com uma grade de caixas de seleção e os bits setuid, setgid e sticky.
Exemplos de código
Copie estes exemplos para o seu próprio projeto. Cada um usa apenas a biblioteca padrão da linguagem, por isso não há nada para instalar.
const mode = parseInt('755', 8)
const letters = [...'rwxrwxrwx'].map((letter, i) => (mode & (0o400 >> i) ? letter : '-'))
console.log(letters.join(''))O que faz
Converte permissões de arquivos Unix entre octal (755), letras de permissão (rwxr-xr-x), uma linha do ls -l e cláusulas do chmod (u=rwx,g=rx,o=rx). Marque a grade e cada notação acompanha, incluindo os bits setuid, setgid e sticky.
Como usar
- Digite um modo em qualquer notação ou marque as caixas.
- Leia-o em cada notação e edite qualquer uma delas.
- Copie o valor convertido ou escolha um tipo de arquivo para ver a linha do
ls -lde um diretório ou link.
Exemplos
755 é rwxr-xr-x: o proprietário pode ler, escrever e executar, e todos os outros podem ler e executar. 644 é rw-r--r--, o modo usual de um arquivo, e 1777 é rwxrwxrwt, um diretório compartilhado como /tmp.
Bom saber
- Os dígitos somam leitura 4, escrita 2 e execução 1 para o proprietário, o grupo e todos os outros. Um quarto dígito na frente acrescenta setuid 4, setgid 2 e sticky 1.
- Em letras, os bits especiais ocupam o lugar da execução:
spara setuid e setgid,tpara sticky. UmSouTmaiúsculo significa que o bit especial está definido sem o bit de execução. - Cláusulas como
u=rwx,g=rx,o=rxdefinem cada classe por inteiro, e uma classe que nenhuma cláusula cita fica sem permissões. Formas relativas comou+xnão são lidas aqui, porque dependem do modo atual de um arquivo.
O que significam os números do chmod?
Cada dígito soma leitura (4), escrita (2) e execução (1) para uma classe: o primeiro dígito é o proprietário, o segundo o grupo e o terceiro todos os outros. Assim, 755 significa que o proprietário pode ler, escrever e executar, e os outros podem ler e executar. Um quarto dígito na frente acrescenta setuid (4), setgid (2) e sticky (1).
Perguntas frequentes
O que são setuid, setgid e o bit sticky?
Com setuid e setgid, um programa roda com as permissões do seu proprietário ou grupo em vez das de quem o inicia. Em um diretório, o setgid faz os novos arquivos herdarem o grupo, e o bit sticky (como em /tmp) permite que só o proprietário de um arquivo o apague. Em letras, são um s ou t no lugar da execução; um S ou T maiúsculo significa que o bit de execução não está definido.
Por que 777 é uma má ideia?
Ele permite que qualquer usuário do sistema altere ou substitua o arquivo. Dê ao proprietário o que ele precisa e ao grupo ou aos outros só o acesso necessário: para scripts costuma ser 755, para arquivos privados 600.
Esta ferramenta envia a minha entrada para algum lugar?
Não. Tudo acontece no seu navegador. O que você digita nunca é enviado aos nossos servidores.