如何在 Linux 中的 NFSv4 挂载上使用 POSIX ACL?

asc*_*hil 7 nfs access-control-list nfs4

我最近将 Linux 文件服务器从仅提供 NFS v3 转换为还提供 NFS v4。我们所有的客户都高兴地开始自动使用 NFS v4。不幸的是,这有效地破坏了少数使用它们的用户的 ACL 管理,因为他们习惯的 POSIX 工具不再有效。(更差,ls不再指示具有 ACL 的文件,因此它们比以前更隐蔽。)

我收到了不想学习新工具的用户的反对,因为我们的存储系统更改了软件(加上文件服务器实际上将 ACL 作为 POSIX ACL 存储在磁盘上,所以过渡到 NFSv4 ACL 感觉有点傻,每个系统都涉及运行 Linux 的某些变体)。

对于不想学习 NFSv4 ACL 的用户,我可以强制客户端使用 NFS v3,但是有没有办法运行 NFS v4 客户端但 POSIX ACL 程序可以工作?最好不要偏离发行版的标准存储库太远。

客户端正在运行 Fedora。(目前他们在 Fedora 23 上,但他们得到了很多升级,Fedora 每六个月左右发布一次。)服务器在 Linux 上运行 Scientific Linux 7 和 ZFS。

rud*_*ier 5

libacl 有一些补丁可以在 nfs4 和 Posix ACL 之间进行某种映射。它们似乎无人维护。我从来没有尝试过。

http://www.citi.umich.edu/projects/nfsv4/linux/acl-patches/

http://www.citi.umich.edu/projects/nfsv4/linux/using-acls.html

https://datatracker.ietf.org/doc/html/draft-ietf-nfsv4-acl-mapping-05