Rain WikiWindows · Linux · Android

Permissões de arquivo: chmod e chown

Ferramenta de linha de comandoTodas as distribuições Linux

Cada arquivo e diretório no Linux possui um proprietário, um grupo e três conjuntos de permissões: para o proprietário, para o grupo e para todos os outros. O chmod altera as permissões (o modo), e o chown altera o proprietário e o grupo. O ls -l exibe ambos.

1Lendo permissões

Na saída do ls -l, -rw-r--r-- significa um arquivo comum que o proprietário pode ler e escrever, e os outros podem apenas ler. r é leitura, w é escrita e x é execução; para um diretório, x permite acessá-lo.

2Modos numéricos

Cada conjunto é um dígito: leitura é 4, escrita é 2 e execução é 1, somados. 644 (rw-r--r--) é típico para arquivos, 755 (rwxr-xr-x) para diretórios e programas, e 600 (rw-------) para arquivos privados, como chaves SSH.

3Alterando o proprietário

sudo chown user:group file define o proprietário e o grupo. Com -R, tanto o chmod quanto o chown funcionam recursivamente em uma árvore de diretórios.

Como corrigir permissões de uma pasta web

  1. Verifique o estado atual: ls -l /var/www/site
  2. Defina o proprietário: sudo chown -R www-data:www-data /var/www/site
  3. Defina diretórios para 755: sudo find /var/www/site -type d -exec chmod 755 {} +
  4. Defina arquivos para 644: sudo find /var/www/site -type f -exec chmod 644 {} +

Cuidados

  • Nunca use chmod -R 777: isso permite que qualquer usuário e processo altere os arquivos.
  • Um chmod ou chown recursivo no caminho errado, como / ou /usr, pode corromper o sistema.

Fontes

  1. Página de manual do chmod(1) man7.org
  2. Página de manual do chown(1) man7.org

Última revisão: