授予其他用户(不具有 root 权限)访问 nfs 的权限(读/写)

授予其他用户(不具有 root 权限)访问 nfs 的权限(读/写)

我正在使用没有 root 权限的 CentOS 服务器。我正尝试与另一个用户共享网络上的特定文件夹。

我已经尝试过“setfacl”,但没有成功(导致“操作不受支持”)。

有人能告诉我当我没有 root 权限时,如何授予文件夹的读/写访问权限?

答案1

您的 NFS 挂载使用的vers=3是 NFSv3,据我所知,它不支持任何 ACL 配置。您需要服务器管理员的帮助,要么通过 SSH 直接在服务器上设置 ACL,要么创建团体并向其中添加用户(允许使用 chgrp 和 chmod)。


ACL 支持需要 NFSv4,它有自己的 ACL 系统,不同于 POSIX(但与 SMB/NTFS 中的系统非常相似)。Linux NFSv4 服务器将在磁盘上的 POSIX ACL 和网络上的 NFSv4 ACL 之间进行转换,尽管 Linux NFS客户不幸的是,它不做相反的转换。因此,如果使用 NFSv4,您将需要使用与 NFSv4 ACL 兼容的工具 - 即nfs4_getfacl来自nfs4_setfacl“nfs4-acl-tools”包(或 CentOS 放置它们的任何地方) - 而不是通常的 POSIX ACL 工具。

例如,要添加允许读取+执行访问的 ACL 条目,它将类似于:

# Add the equivalent of a "u:someuser:rx" ACL
nfs4_setfacl -a "A::[email protected]:RX" myfolder

# Add the equivalent of a "d:u:someuser:rx" ACL (default aka inheritable)
nfs4_setfacl -a "A:fdi:[email protected]:RX" myfolder

答案2

您需要寻求管理员的帮助。执行此操作的非 root 用户需要mount获得管理员的授权。

有两种方法(您的管理员应该已经知道):

  • 添加/etc/fstab所需共享的条目
  • 将用户添加到suders文件中,并指定命令的用途 mount

更多信息请参阅帖子 Redhat:非 root 用户需要将文件复制到 NFS 共享. 管理员可以将共享设置为只读。

相关内容