NFSv4 idmap 方法在 NFS 服务器和本地系统之间映射用户和帐户方面提供了极大的灵活性——但随之而来的是配置的复杂性。如果试图构建一个适用于任何本地 NFS 服务器的交钥匙解决方案,这可能尤其令人遗憾。
是否有一个合理的机制,使 Linux NFSv4 客户端能够挂载 NFS 服务器,并将不同的用户帐户映射到不同的子树的匿名用户,或者如何在同一个服务器上安装不同的挂载点并指定不同的 idmap?
也就是说:
/mnt/server-a/foo ## in this subtree, unknown owners are mapped to the local account "foo"
/mnt/server-a/bar ## in this subtree, unknown owners are mapped to the local account "bar"
我甚至正在考虑诸如基于环回保险丝的服务器之类的方法——尽管性能影响会让人非常不幸。
答案1
您可能可以在服务器上执行此操作。以下是导出文件的示例:
/foo client(rw,fsid=0,all_squash,anonuid=123,anongid=123)
/bar client(rw,fsid=1,all_squash,anonuid=567,anongid=567)
其中 123 和 567 是用户 foo 和 bar 的 uid/gid。不同的 fsid 是为了避免在客户端合并挂载。