为什么setfacl不给予可执行权限?

为什么setfacl不给予可执行权限?

我跑了

sudo setfacl -d -m g::rwx /tmp

然后进入/tmp并创建一个文件并查看其权限:

-rw-rw-rw-. 1 jm wheel 0 Aug 24 10:26 test_file

然后我跑了

sudo chmod g+rwx test_file

并查看了权限:

-rwxrwxrwx. 1 jm wheel 0 Aug 24 10:26 test_file

第一个命令不应该setfacl -d -m g::rws /tmp首先赋予它可执行权限吗?为什么我必须跑去chmod接他们?

答案1

为什么我必须跑去chmod接他们?

因为你做错了!尝试:

setfacl -Rdm g:maulinglawns:rwx tmp/
触摸 tmp/foo
getfacl tmp/foo
# 文件:tmp/foo
# 所有者:maulinglawns
# 组:maulinglawns
用户::rw-
组::rx #有效:r--
组:maulinglawns:rwx #有效:rw-
掩码::rw-
其他::r--

这就是说ls的(注意+最后的标志,它表明我们确实acl 集):

ls -l tmp/
totalt 0
-rw-rw-r--+ 1 maulinglawns maulinglawns 0 aug 24 18:55 foo

请阅读手册页对于 setfacl。尤其是ACL 条目部分。

相关内容