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

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

我确定安装了ACL,然后将其添加到我的fstab:

/dev/sda7 / ext4 rw,relatime,data=ordered,acl 0 1 

然后我跑了以下几点:

 sudo setfacl -m group:users:rw- -R /srv/http 

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

当我删除像这样的ACLlogging:

 sudo setfacl -bR /srv/http 

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

我在这里做错了什么?

这里是“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 

“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 

你应该给“用户”权限来search目录,否则不会工作:

  sudo find /srv/http -type d -exec setfacl -m group:users:rwx {} \; 

@quanta什么都没有。 这是否意味着我在某个地方有一个与fstab有关的问题?

是。 这意味着您的根文件系统没有重新安装ACL支持:

 # mount -o remount,acl /dev/sda7 

然后再试一次。

如果输出

 mount | grep acl 

命令是空的,你的根文件系统挂载没有acl的支持。 但是,如果发生这种情况, setfacl命令会产生一个错误“操作不支持”。

请发布getfacl /srv/http命令的输出。