É uma peculiaridade do UNIX.
Para fazer ls
em um diretório, você precisa ter permissão de execução no diretório.
Se você só tem permissão de leitura, você pode acessar os arquivos no diretório, mas você tem que saber sobre eles primeiro! por exemplo,
Como Alice:
echo "Hello Bob" > shared/hello
Como Bob:
cat shared/hello
Se você quiser que Bob seja capaz de ls
(ou cd
to) do diretório comum:
chmod 750 shared