如何在 WSL2 上挂载 NFS 共享?

如何在 WSL2 上挂载 NFS 共享?

如何在 Windows 10 上从 WSL2 挂载 NFS 共享?

sudo mount -t nfs 192.168.1.101:/mnt/tank /mnt/tank

失败

mount.nfs: rpc.statd is not running but is required for remote locking.
mount.nfs: Either use '-o nolock' to keep locks local, or start statd.

我在 windows-subsystem-for-linux 上运行 Ubuntu 20.04 LTS。

答案1

该错误表明您缺少启动服务,因为 WSL 没有运行 systemd。

sudo /etc/init.d/rpcbind start
sudo /etc/init.d/nfs-common start

WSL2 通过托管的 Hyper-V 虚拟交换机在每次启动时更改 IP 地址,因此你可能需要确保服务器上允许整个子网:172.16.0.0/12

编辑:或者,尝试以下操作:https://github.com/arkane-systems/genie

它设置一个“瓶子”以 pid=1 运行 systemd,并可以启动 nfs 挂载所需的 systemd 服务。

答案2

2023 年更新:WSL2 现在支持 systemd,即使在 Windows 10 上,如果你安装了 Microsoft Store 版本的 WSL2,并且如果你在 WSL2 中启用 systemd,它也会为你启动任何所需的守护程序。

相关内容