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

Bri*_*ion 5 linux nfs kerberos autofs

我逐字复制了某人的 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)
Run Code Online (Sandbox Code Playgroud)

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

*       -fstype=nfs4,rw,soft,sec=krb5   192.168.0.2:/home/&
Run Code Online (Sandbox Code Playgroud)

这很有效,而且效果很好。尽管如此,导出/export似乎没有必要,所以我在服务器配置中注释了该行。现在在客户端上自动挂载失败。

问题

  1. 为什么/export/home需要/export也导出?
  2. /export和的安全选项是否/export/home必须相同?
  3. 为什么 auto.home 读取192.168.0.2:/home/&而不是192.168.0.2:/export/home/&?这似乎根本不应该起作用。

ram*_*uma 1

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

/etc/exports这是在by中的 NFS 服务器上指定的fsid=0,在您的情况下称为 /export (尽管它可以被称为任何名称)。这就是为什么您无法删除该行或将其注释掉。

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