我有这个奇怪的问题,我正试图围绕 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::---
我究竟做错了什么
ACL 补充常规权限,它们不会替换它们。由于
clientname
是文件的所有者,因此首先应用所有者 ACL。那是(与所有者权限匹配),并且访问被拒绝。