Pasta Linux e permissões de arquivo

Pasta Linux e permissões de arquivo

Se eu tenho um diretório no qual o usuário tem permissão de leitura, por que não é possível verificar se existe um arquivo nesse diretório. Por exemplo, digamos que eu tenha a pasta /myfolder com permissão de leitura. Essa pasta contém algum arquivo 'garbage.txt' com permissão de leitura (para o usuário). Quando tento usar stat /myfolder/garbage.txt recebo um erro de permissão negada. Se eu adicionar permissões de execução para /myfolder, poderei verificar se o trash.txt existe.

Por que preciso de permissões de execução para verificar se existe um arquivo em uma pasta. Eu esperava que as permissões de leitura no diretório/pasta fossem suficientes.

Responder1

Nas pastas do Linux, as permissões são:

O bit de gravação permite que o usuário afetado crie, renomeie ou exclua arquivos do diretório e modifique os atributos do diretório

O bit de leitura permite que o usuário afetado liste os arquivos dentro do diretório

O bit de execução permite que o usuário afetado entre no diretório e acesse arquivos e diretórios dentro dele.

O sticky bit afirma que os arquivos e diretórios dentro desse diretório só podem ser excluídos ou renomeados por seu proprietário (ou root)

Mais informações:

http://www.firewall.cx/linux-knowledgebase-tutorials/introduction-to-linux/299-linux-file-folder-permissions.html

Responder2

As permissões de execução em um diretório permitem que você atravesse esse diretório. E você precisa ser capaz de acessar o diretório para usar stat nesse arquivo.

Veja tambémhttps://stackoverflow.com/questions/790686/understanding-linux-directory-permissions-reasoning

informação relacionada