chmod "X"
A permissão de execução é necessária em diretórios (é a permissão para entrar neles), porém em arquivos geralmente não é necessária, nem recomendada por questões de segurança.
Então você tem aquela pasta atolada de subpastas e arquivos com uma bagunça nas permissões. Um
era o que usava. Como não é feita diferenciação entre pastas e arquivos, eu colocava a permissão para as pastas (com o bit de execução) e depois rodava novamente o chmod através do find para retirar o bit de execução dos arquivos:
(ou ao contrário, de acordo com o seu gosto)
Existe outro jeito, que não requer o find. O chmod tem, no modo literal, a permissão especial "X" (maiúsculo), que coloca o bit de execução apenas se o alvo for um diretório ou se o bit já estiver configurado no arquivo. Então, se você primeiro remover qualquer ocorrência do bit de execução (para cobrir a segunda possibilidade) e depois usar "X", terá o resultado esperado:
(664 para arquivos e 775 para diretórios)
Então você tem aquela pasta atolada de subpastas e arquivos com uma bagunça nas permissões. Um
chmod -R <modo octal> /pasta
era o que usava. Como não é feita diferenciação entre pastas e arquivos, eu colocava a permissão para as pastas (com o bit de execução) e depois rodava novamente o chmod através do find para retirar o bit de execução dos arquivos:
find /pasta -type f -exec chmod a-x {} \;
(ou ao contrário, de acordo com o seu gosto)
Existe outro jeito, que não requer o find. O chmod tem, no modo literal, a permissão especial "X" (maiúsculo), que coloca o bit de execução apenas se o alvo for um diretório ou se o bit já estiver configurado no arquivo. Então, se você primeiro remover qualquer ocorrência do bit de execução (para cobrir a segunda possibilidade) e depois usar "X", terá o resultado esperado:
chmod -R a-x /pasta chmod -R ug=rwX,o=rX /pasta
(664 para arquivos e 775 para diretórios)
Comentários
Postar um comentário