
brunorf
(usa Arch Linux)
Enviado em 11/12/2013 - 12:28h
A permissão de execução se refere a você poder executar o arquivo. Isso faz sentido quando o arquivo é um binário ou um script (python,bash,perl,etc.). Daí você consegue de fato executar o código que está nele.
O fato de você conseguir abrir um arquivo significa que você tem permissões de leitura sobre esse arquivo, nada mais.
Caso as permissões sejam aplicadas a diretórios, a coisa muda um pouquinho. A permissão de execução se refere a você poder navegar nesses diretórios (entrar neles com o comando cd, por exemplo)
Além disso, o comando chmod 666 que você mencionou, você não vai adicionar permissão de execução a um arquivo, mas sim permissões de leitura e gravação para todos os usuários do sistema.
Para permitir a execução, você teria que fazer algo como chmod 500 para o arquivo, assim você daria permissão para seu próprio usuário para ler e executar um arquivo, e mais ninguém poderia também fazê-lo.
Veja, o chmod funciona mais ou menos da sequinte forma
chmod [U][G][O] arquivo/diretorio
O U é a permissão que o dono do arquivo/diretório terá
O G é o grupo
e o O são os outros usuários, que não são donos e nem pertencem ao grupo dono do arquivo/diretório
Para leitura o valor numérico é 4
Para gravação o valor numérico é 2
Para execução o valor numérico é 1
Daí basta você ver as permissões que você deseja e somar os respectivos valores. Assim, se você quiser que o dono de um arquivo tenha permissão apenas de gravação, faça chmod 200 arquivo. Leitura e gravação 4+2 = chmod 600 arquivo, etc.
Olha, essa explicação que fiz é bem básica, sugiro que leia a página do guia foca sobre o assunto, é bem mais completo:
http://www.guiafoca.org/cgs/guia/iniciante/ch-perm.html