![在 `server` 上导出 `/dir` 时,是否可以使用 NFSv3 挂载 `server:/dir/subdir`?](https://linux22.com/image/214012/%E5%9C%A8%20%60server%60%20%E4%B8%8A%E5%AF%BC%E5%87%BA%20%60%2Fdir%60%20%E6%97%B6%EF%BC%8C%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%20NFSv3%20%E6%8C%82%E8%BD%BD%20%60server%3A%2Fdir%2Fsubdir%60%EF%BC%9F.png)
标题应该说明一切:
如果我在 上有这样的目录结构server
,并且我导出,客户端是否可以使用“标准”NFSv3 挂载(如)/dir
的子目录,或者只有在使用 NFS >= v4 时才可能?/dir
/dir/subdir
/dir
/dir/subdir
/dir/subdir2
它似乎适用于当前的 Linux,但我不确定这是否是标准,甚至该标准是否涵盖该主题。
答案1
该标准定义了客户端(安装机)和服务器(导出机)之间使用的协议。挂载机如何呈现某些东西并没有被涵盖 - 最后,挂载导出的子目录毫无意义,只是相对于通过 NFS 请求的对象的挂载点的路径的不同转换,因此没有真正被涵盖。
现在,在 NFSv2 和 v3 中,有 MOUNT 协议,用于告诉服务器您打算安装什么,以便它为您提供处理该内容的句柄。 MOUNT 协议规范也没有定义服务器是否应该允许子目录安装。 (正如所说,从功能上讲,您可以通过“实际上”安装显式导出的目录并在本地转换路径来实现相同的效果 - 即使只是使用绑定安装。)