setfacl 未向指定用户授予权限

setfacl 未向指定用户授予权限

我有一个奇怪的问题,我试图将我的注意力集中在 acl 上,以便一些开发人员可以对文件夹中的几个文件进行写访问

这是一个示例文件夹结构,我在那里有一个settings.local.php文件,我用chmod给它000权限,然后我用setfacl给它rwX权限,它成功了,就像在getfacl中一样给了我正确的权限,但所有者权限不受影响,并且用户实际上无法保存文件,实际上在这个例子中,用户甚至无法读取文件......

hostname:/srv/clientname/sites/local# chmod 000 *

hostname:/srv/clientname/sites/local# ls -la
total 64
dr-xrwxrwx+  3 clientname www-data  4096 Jun 19 16:50 .
drwxrwxrwx+  5 clientname www-data  4096 Jun 19 16:51 ..
----------+  1 clientname www-data   775 Jun 19 16:50 settings.local.php

hostname:/srv/clientname/sites/local# groups clientname
clientname : www-data sftp ftp

hostname:/srv/clientname/sites/local# setfacl -m u:clientname:rwX *

hostname:/srv/clientname/sites/local# ls -la
dr-xrwxrwx+  3 clientname www-data  4096 Jun 19 16:50 .
drwxrwxrwx+  5 clientname www-data  4096 Jun 19 16:51 ..
----rw----+  1 clientname www-data   775 Jun 19 16:50 settings.local.php

hostname:/srv/clientname/sites/local# getfacl settings.local.php
# file: settings.local.php
# owner: clientname
# group: www-data
user::---
user:www-data:rw-
user:clientname:rw-
group::r--
group:www-data:rw-
mask::rw-
other::---

我究竟做错了什么

答案1

ACL 补充常规权限,但不会取代它们。由于clientname是文件的所有者,首先应用所有者 ACL。那是

user::---

(与所有者权限匹配),并且访问被拒绝。

相关内容