haneWIN搭建Win10 NFS服务器

1. 背景

之前一直用VMware虚拟机或者Docker容器进行嵌入式Linux学习,最近想试试Win10的Linux子系统WSL2。相较于虚拟机和Docker容器来说,WSL2应该还是有不少坑的,不过在最近的实践中,搭建百问网的IMX6ULL开发板编译环境算是比较顺利,u-boot和kernel都能顺利编译、运行。

驱动开发过程中,NFS功能可以算得上是利器了,但是WSL2不支持(或者是我不会弄…),所以退而求其次,直接用Win10搭建NFS server。

2. 工具:haneWIN

haneWIN是Win10下搭建NFS server的常用工具,官网是https://www.hanewin.net/imprint-e.htm,当然,也可以搜索一些和谐版来用。

2.1 软件运行与配置

使用管理员权限运行haneWIN后,大家就能看到一个非常简朴的界面,具体的配置就不详细解释了,直接给大家截图看看我的配置:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

比较关键的配置是Exports,点击Edit export file,按照格式配置要共享的目录:

D:\share -public -name:nfs

我现在是把D:\share文件夹共享,权限设置为pubic,定义了一个别名nfs

配置完成后,点击Restart Server重启服务,使新的配置生效。

2.2 防火墙配置

PortMapper界面中可以看出,haneWIN使用的端口如下:

  • TCP:111, 1058, 2049
  • UDP:111, 1058, 2049

因此,需要对Win10的防火墙进行配置,开放这些端口才能实现NFS挂载。(当然,更简单的办法是直接把防火墙关掉…)

  • 第1步,打开控制面板,选择Windows Defender防火墙

    在这里插入图片描述

  • 第2步,选择高级设置->入站规则->新建规则

    在这里插入图片描述

  • 第3步,选择端口->下一步

在这里插入图片描述

  • 第4步,选择TCP->特定本地端口,添加111,1058,2049

在这里插入图片描述

  • 第5步,选择允许连接

在这里插入图片描述

  • 第6步,勾选专用共用

在这里插入图片描述

  • 第7步,为该规则定义一个名字,点击完成

在这里插入图片描述

  • 第8步,仿照刚才TCP端口规则的建立过程,再创建一条UDP端口规则。

3. 挂载

启动开发板Linux系统,执行命令挂载目录:

mount -t nfs -o nolock 192.168.100.200:/nfs /mnt

192.168.100.200是Win10系统的IP地址;

nfs是之前Edit export file时为目录创建的别名

/mnt是指定将远程目录挂载到本地的/mnt目录下。

我手上有两个开发板,一个百问网的IMX6ULL开发板,一个是Xilinx ZYNQ 7100开发板,比较奇怪的是,IMX6ULL只有在Win10关闭防火墙的时候才能挂载上,而ZYNQ7100开发板只需要添加入栈规则就可以,这个问题以后再深究。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐