Diferença entre o diretório executável e os arquivos executáveis

16

Ter uma permissão executável em um diretório significa que os arquivos dentro dele também são executáveis, mesmo que os arquivos não tenham explicitamente permissões executáveis definidas?

    
por Shady Programmer 19.12.2016 / 13:12

1 resposta

22

Não, a permissão executável para diretórios significa que você pode inserir o diretório, tornando-o seu diretório de trabalho atual usando cd e ver quais arquivos ele contém.

É útil pensar em um diretório apenas como um arquivo que é uma lista de nomes de arquivos.

Lido bit - Se definido, você pode ler esta lista. Se você tiver um diretório chamado books:

  • Você pode ls books e obterá uma lista dos arquivos que ela contém ( -l não funcionará no entanto).

  • Você pode usar a conclusão da linha de comando, por exemplo, touch books/bo + Tab para obter books/bookfile .

  • Você não pode transformar seu diretório de trabalho em livros, cd não funcionará.

Gravar bit - Você pode modificar os nomes desta lista. Você só pode fazer isso se o bit de execução também estiver definido.

Executar bit - Você precisa dessa permissão se quiser:

  • Tenha acesso a arquivos no diretório.
  • Modifique detalhes da lista em si. Você pode adicionar, renomear ou excluir nomes na lista, mas isso também requer permissão de gravação no diretório.

Definir o bit de execução em um diretório não afeta os arquivos em si, mas afeta seu acesso a eles. Por exemplo, se você tiver acesso de gravação e execução para um diretório, poderá mover, renomear e excluir arquivos, mesmo que não seja possível gravar nos próprios arquivos.

    
por Arronical 19.12.2016 / 13:16