使用 sec=krb5 的 NFS 导出是否*要求*父目录也使用 sec=krb5 导出?

使用 sec=krb5 的 NFS 导出是否*要求*父目录也使用 sec=krb5 导出?

我逐字逐句地复制了某人的 NFS 服务器/客户端设置,但无法理解其中的原理。这是 /etc/exports:

/export *(rw,fsid=0,crossmnt,insecure,async,no_subtree_check,sec=krb5p:krb5i:krb5)
/export/home *(rw,insecure,async,no_subtree_check,sec=krb5p:krb5i:krb5)

客户端机器使用 autofs 按需挂载用户主目录。以下是 auto.home:

*       -fstype=nfs4,rw,soft,sec=krb5   192.168.0.2:/home/&

这很有效,而且效果很好。不过,导出/export似乎没有必要,所以我从服务器配置中注释掉了那一行。现在客户端上的自动挂载失败了。

问题

  1. 为什么/export/home要求/export也导出?
  2. /export和的安全选项/export/home必须相同吗?
  3. 为什么 auto.home 读的是192.168.0.2:/home/&而不是192.168.0.2:/export/home/&?这似乎根本行不通。

答案1

您正在使用 NFS 版本 4 (nfs4),它导出单个伪文件系统而不是许多单独的文件系统。

这是在 NFS 服务器上通过 指定的/etc/exportsfsid=0在您的例子中称为 /export(尽管它可以被命名为任何名称)。这就是为什么您不能删除该行或将其注释掉。

在 NFS 客户端上,这个父级(在您的情况下为/export)被视为/(导出的文件系统的根),这就是自动挂载程序使用的原因/home

相关内容