我正在尝试在 Mac 客户端上使用 NFSv4 设置用户主目录的自动挂载。
一切似乎都按预期工作,除了通过 Mac GUI 登录。这些登录会挂起并出现旋转光标。
细节
系统是 Mac OS 10.13.3 客户端,带有 Centos 7 NFS 服务器。服务器有 ZFS 存储,我们使用 ZFS 内部 NFS 配置,但由于我们在另一台服务器(带有 ext4 文件系统和标准 linux nfs 实现的 Centos 6)上看到了相同的行为,因此我暂时排除了 ZFS 是问题所在。
在客户端上 /etc/auto_master 是:
# Automounter master map
+auto_master # Use directory service
/net -hosts -nobrowse,nosuid
/home auto_home
/Network/Servers -fstab
/- -static
/etc/auto_home 是:
myhome -vers=4,sec=sys myserver:/mypool/myhome
服务器和客户端都向 AD 服务器进行身份验证。
有效的方法:
- 使用 NFS v3 而不是 v4 一切都按预期运行。多年来,我们已将此配置用于 100 多个 Mac 和 Linux 客户端。
- 使用 NFSv4,可以通过命令行手动挂载。(
mount -o vers=4 myserver:/mypool/myhome /home/myhome
) - 从命令行使用 v4 自动挂载是可行的。(
ls -ald ~joeuser
自动挂载主目录) - 通过 ssh 登录时使用 v4 自动挂载主目录即可。
无效的方法:
从 Mac GUI(即正常的 Mac 登录)登录时自动挂载主目录会导致客户端挂起并出现旋转光标。
服务器日志中没有显示相关信息,但客户端日志显示:
Feb 8 13:41:24 myclient KernelEventAgent[99]: tid 54485244 received event(s) VQ_NOTRESP (1)
Feb 8 13:41:24 myclient KernelEventAgent[99]: tid 54485244 type 'nfs', mounted on '/home/myhome', from 'myserver:/mypool/myhome', not responding
Feb 8 13:41:24 myclient KernelEventAgent[99]: tid 54485244 found 1 filesystem(s) with problem(s)
通过 ssh 检查挂起的客户端,我们发现自动挂载已成功
myclient:~ admin$ nfsstat -m
/home/myhome from myserver:/mypool/myhome
-- Original mount options:
General mount flags: 0x500018 nodev,nosuid,automounted,nobrowse
NFS parameters: vers=4,sec=sys
File system locations:
/mypool/myhome @ myserver (aaa.bbb.ccc.ddd)
-- Current mount parameters:
General mount flags: 0x4500018 nodev,nosuid,automounted,nobrowse multilabel
NFS parameters: vers=4.0,tcp,port=2049,hard,nointr,noresvport,callback,negnamecache,nonamedattr,noacl,noaclonly,locks,noquota,rsize=32768,wsize=32768,readahead=16,dsize=32768,nordirplus,nodumbtimr,timeo=10,maxgroups=16,acregmin=5,acregmax=60,acdirmin=5,acdirmax=60,nomutejukebox,noephemeral,nonfc,sec=sys
File system locations:
/mypool/myhome @ myserver (aaa.bbb.ccc.ddd)
Status flags: 0x0
因此看起来,问题不是出在自动挂载机制上。
我们的 Linux 客户端具有相同的自动挂载配置,并且可以按预期工作,没有任何问题。
下一步
我正在寻求有关如何进一步解决问题的建议。您接下来会采取什么步骤?