文件的所有者应为用户“nobody”和组“anybody”

文件的所有者应为用户“nobody”和组“anybody”

我已经在 Ubuntu 服务器 14.04 上导出了 2 个文件系统,并从另一台 Ubuntu 服务器 14.04 上挂载了它们。

在服务器上的 /etc/exports 文件中,我停用了其中一个挂载点的 no_root_squash 选项。我在该挂载点创建了一个测试文件,它显示该文件的所有者是 root,但应该是组“anybody”和用户“nobody”。我想知道为什么会发生这种情况。这是我正在使用的 /etc/exports 代码的副本。

/home 192.168.0.101(rw,sync,no_root_squash,no_subtree_check)
/var/nfs 192.168.0.101(rw,sync,no_subtree_check)

答案1

如果你的意思是:我已经从 NFS 客户端挂载了 NFS 导出的目录并在该客户端上创建了一个文件,那么我会说这正在按预期工作。

您挂载了一个已启用 no_root_squash 选项的导出 FS,并且客户端上创建的文件归“root”所有。这实际上是 no_root_squash 选项的作用。

root_squash
    Map requests from uid/gid 0 to the anonymous uid/gid. Note that this does not apply to any other uids or gids that might be equally sensitive, such as user bin or group staff. 
no_root_squash
    Turn off root squashing. This option is mainly useful for diskless clients. 

我想说,如果您想要将根映射到无人,那么您需要删除 no_root_squash。

相关内容