如何通过 WiFi 自动挂载 NFS 共享?

如何通过 WiFi 自动挂载 NFS 共享?

我正在尝试在通过 WiFi 连接的笔记本电脑上安装本地网络 NFS 共享。

据我所知,NFS 服务器设置正确,可以使用以下命令手动连接它:

sudo mount -t nfs4 -o proto=tcp,port=2049 192.168.(Server IP):/share /mnt/share

然后,共享被安装/mnt/share并可以立即访问。

然而,当我尝试将共享添加到时/etc/fstab,Dolphin(在 Kubuntu 上)总是显示以下错误:

访问“/mnt/share”时发生错误,系统响应:mount.nfs4:无法准备挂载:操作不允许

到目前为止,我已经尝试了各种 fstab 条目,例如:

192.168.(Server IP):/share /mnt/share nfs4 _netdev,x-systemd.after=network-online.target 0 0

nfs://192.168.(Server IP):/share /home/usr/share nfs vers=4,uid=(User ID),gid=(Group ID) 0 0

以及这些的其他变体。错误总是相同的(除了路径不同)。

Kerberos 不用于身份验证。

我不确定问题是否是访问 fstab 条目时 WiFi 未连接或者是其他问题。

如何使用 WiFi 连接自动挂载此 NFS 共享?

答案1

我在笔记本电脑上运行了这个。我的 fstab 条目是:

192.168.68.99:/data/nfs_root/files /home/john/nfs nfs _netdev,noauto,x-systemd.automount,x-systemd.mount-timeout=10,timeo=14,x-systemd.idle-timeout=1min 0 0

这是基于 Arch wiki 的:

noauto 挂载选项将不会挂载 NFS 共享,除非它被访问:使用 auto 可使其立即可用。如果由于网络未启动/不可用而导致挂载失败,请启用 NetworkManager-wait-online.service。它将确保 network.target 在激活之前具有所有可用链接。

用户挂载选项将允许用户挂载,但请注意,它意味着进一步的选项,例如 noexec。

x-systemd.idle-timeout=1min 选项将在 1 分钟未使用后自动卸载 NFS 共享。这对于可能突然断开网络连接的笔记本电脑非常有用。

如果由于 NFS 导致关机/重启时间过长,请启用 NetworkManager-wait-online.service 以确保在卸载 NFS 卷之前不会退出 NetworkManager。

请勿添加 x-systemd.requires=network-online.target 挂载选项,因为这会导致 systemd 内的排序循环 [4]。systemd 会自动将 network-online.target 依赖项添加到 _netdev 挂载的单元。

使用 nocto 选项可能会提高只读挂载的性能,但应仅当服务器上的数据偶尔发生变化时使用。

相关内容