为什么所有者本身无法列出目录?

为什么所有者本身无法列出目录?

目录具有 777 权限:

sudo ls -al  /home/debian/mydoc/source/document
total 144
drwxrwxrwx  2 debian debian  4096 Mar 16 20:21  .

ls由其所有者执行?

debian@mydebian:~$ ls -al  /home/debian/mydoc/source/document
ls: cannot access '/home/debian/mydoc/source/document': Permission denied

为什么所有者本身无法列出目录?

答案1

您还没有说出该目录上方的所有目录的权限(回到根目录)。

如果其中 1 个不允许“x”访问,则查找路径无法跨越这些目录...例如,如果“home”仅允许 root 进行“rx”,或者“source”的所有“x”位都被清除,则普通用户甚至无法访问目录文档。请注意此示例:

> ll /h/db/mydoc/src/document
ls: cannot access '/h/db/mydoc/src/document': Permission denied

这是因为我将 root 设置为目录 /h/db 的所有者:

> sudo ls -ald /h/db /h/db/mydoc /h/db/mydoc/src
drwx------ 3 root lg 27 Apr  2 22:47 /h/db
drwxrwx--- 3 lw   lg 17 Apr  2 22:47 /h/db/mydoc
drwxrwx--- 3 lw   lg 22 Apr  2 22:47 /h/db/mydoc/src

相关内容