为什么 ACL 在此设置下无法正常工作?

Sha*_*ant 5 linux files access-control-list

我在我的笔记本电脑上运行Arch Linux作为开发机器,我需要授予用户组RW权限到文件夹:/srv/http及其下的所有文件和文件夹。

我确保 ACL 已安装,然后将其添加到我的 fstab 中:

/dev/sda7               /               ext4            rw,relatime,data=ordered,acl    0 1
Run Code Online (Sandbox Code Playgroud)

然后我运行了以下命令:

sudo setfacl -m group:users:rw- -R /srv/http
Run Code Online (Sandbox Code Playgroud)

它在我的台式机上工作正常,为什么在我的笔记本电脑上工作不一样?使用上面的 setfacl 命令后,用户甚至不再具有对文件或文件夹的读取访问权限。

当我像这样删除 ACL 记录时:

sudo setfacl -bR /srv/http
Run Code Online (Sandbox Code Playgroud)

在该命令之后,用户可以打开文件,但不能修改它们。

我在这里做错了什么吗?

这是“ls -l /srv/http”的输出

[shane@arch-mobile ~]$ ls -l /srv/http/
total 4
drwxr-xr-x 9 http http 4096 Aug  7 11:04 drupal7
Run Code Online (Sandbox Code Playgroud)

“zcat /proc/config.gz | grep -i acl”的输出:

CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_GENERIC_ACL=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_CIFS_ACL=y
CONFIG_9P_FS_POSIX_ACL=y
Run Code Online (Sandbox Code Playgroud)

qua*_*nta 1

@量子什么也没有。这是否意味着我的 fstab 有问题?

是的。这意味着您的根文件系统尚未通过 ACL 支持重新挂载:

# mount -o remount,acl /dev/sda7
Run Code Online (Sandbox Code Playgroud)

然后再试一次。