为什么我无法通过 nfsv4 将 chown 授予任何人?

为什么我无法通过 nfsv4 将 chown 授予任何人?

服务器:FreeBSD 9.2-RC1,ZFS
客户端:FreeBSD 9.0-RELEASE-p3
文件系统使用“alldirs,maproot=root”导出。

在客户端,我可以将文件 chown 给任何用户,但不能将任何人设为 chown。

client# touch foo
client# ls -l foo
-rw-r--r--  1 root  staff  0 Aug 20 11:18 foo
client# chown chris foo
client# ls -l foo
-rw-r--r--  1 chris  staff  0 Aug 20 11:18 foo
client# chown root foo
client# ls -l foo
-rw-r--r--  1 root  staff  0 Aug 20 11:18 foo
client# chown nobody foo
No name and/or group mapping for uid,gid:(65534,-1)
chown: foo: Operation not permitted

客户端和服务器上均不存在 nobody,且两个位置的 UID 均为 65534。这似乎与 nfsv4 的用户映射 (nfsuserd) 有关,但我找不到有关其工作原理的良好文档。我读到过一些提示,其中提到 nobody 是经过特殊处理的。

相关内容