Skip to content

chmod a+r

chmod a+r arquivo adiciona leitura para as três classes (dono, grupo e outros) e deixa escrita e execução como estavam; como indica o a de forma explícita, o umask não interfere.

Resultado em modos de partida comuns

a+r versus +r

O a+r sempre atinge as três classes. O +r simples passa pelo filtro do umask: com umask 077 só adiciona leitura para o dono, e com 027 pula os outros. O manual do GNU dá o mesmo exemplo com +w e a+w. Quando quiser um resultado previsível num script, escreva a classe.

Liberando uma árvore de diretórios: a+rX

Para um servidor web ou outros usuários lerem uma árvore inteira, os diretórios também precisam de execução para alguém entrar neles. O X maiúsculo só adiciona execução a diretórios e a arquivos que já são executáveis para alguém, então a+rX deixa tudo legível e todo diretório atravessável sem marcar arquivos de dados como programas.

chmod a+r relatorio.pdf
chmod -R a+rX /var/www/site/public
# todo diretório pai no caminho também precisa de execução:
namei -l /var/www/site/public/index.html

Perguntas frequentes

O que o chmod a+r faz?
Dá permissão de leitura para o dono, o grupo e todos os demais, sem mudar escrita nem execução.
chmod a+r é igual a chmod 644?
Só quando o arquivo já era 600 ou 644. O a+r adiciona leitura e mantém os outros bits; o 644 substitui o modo inteiro, tirando qualquer execução e a escrita do grupo.
Por que o servidor web ainda não lê o arquivo depois do a+r?
Todo diretório no caminho precisa de execução para esse usuário. Confira com namei -l /caminho/completo e adicione a+x (ou a+X) no diretório que aparece sem x para os outros.

Revisado em por Arielton Oberek.