Permissões de arquivo: chmod e chown
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
- Verifique o estado atual:
ls -l /var/www/site - Defina o proprietário:
sudo chown -R www-data:www-data /var/www/site - Defina diretórios para 755:
sudo find /var/www/site -type d -exec chmod 755 {} + - 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.
Artigos relacionados
- Chaves SSHComo funciona a autenticação por chave SSH, como criar uma chave com ssh-keygen, instalá-la em um servidor e protegê-la.
- Localizando arquivos grandes e antigos com o findComo usar o find para listar arquivos grandes ou antigos no Linux, visualizá-los com segurança e excluir apenas o que você verificou.
- /tmp e arquivos temporáriosPara que servem o /tmp e o /var/tmp, quando o Linux os limpa e como o systemd-tmpfiles controla seus limites de idade.
Fontes
- Página de manual do chmod(1) man7.org
- Página de manual do chown(1) man7.org
Última revisão: