rao*_*son 5 ls acl permissions directory
我有两个用户,Alice 和 Bob。应该允许 Bob 列出lsAlice 的主目录。Alice 在她的主目录中还有一个文件,Bob 也应该被允许读取该文件。
我以 root 身份运行这些命令:
[root@corvatsch ~]# setfacl -m user:bob:r /home/alice/
[root@corvatsch ~]# setfacl -m user:bob:r /home/alice/file
Run Code Online (Sandbox Code Playgroud)
这会在 ACL 中产生以下结果:
[root@corvatsch ~]# getfacl -c /home/alice/
user::rwx
user:bob:r--
group::---
mask::r--
other::---
Run Code Online (Sandbox Code Playgroud)
和
[root@corvatsch ~]# getfacl -c /home/alice/file
getfacl: Removing leading '/' from absolute path names
user::rw-
user:bob:r--
group::r--
mask::r--
other::r--
Run Code Online (Sandbox Code Playgroud)
看起来 Bob 现在应该能够读取 Alice 的主文件夹以及她的文件的内容。
当 Bob 尝试这样做时,他会得到:
[bob@corvatsch ~]$ ls -l /home/alice/
ls: cannot access /home/alice/file: Permission denied
total 0
-????????? ? ? ? ? ? file
Run Code Online (Sandbox Code Playgroud)
(注意问号!)和
[bob@corvatsch ~]$ cat /home/alice/file
cat: /home/alice/file: Permission denied
Run Code Online (Sandbox Code Playgroud)
看起来 Bob 可以读取主目录,尽管方式很奇怪。ls 列出了文件,但似乎 ACL 有问题?
并且cating 文件似乎根本不起作用。
有人可以解释我缺少什么吗?
注意:(我正在运行 CentOS 6.4)