在Windows和Ubuntu上使用TFTP和NFS
零、介绍
最近在玩Linux开发板,在开发的过程中发现需要用到tftp和nfs来帮助传输文件,故此记录如何使用这两种软件。
TFTP(Trivial File Transfer Protocol) :是一种简化的文件传输协议,设计用于在客户端和服务器之间快速传输文件。轻量级、协议简单、代码量小,适合嵌入式系统、路由器等,基于 UDP 协议,数据明文传输,仅支持基本的文件上传和下载。
NFS(Network File System):是一种分布式文件系统协议,允许不同计算机通过网络共享文件,如同访问本地磁盘。允许用户直接读写远程文件而无需显式下载或上传,通常使用 TCP协议,具备权限管理功能,可在 Linux、Unix、Windows 等系统间共享文件。
壹、Ubuntu上的TFTP
1. 安装
sudo apt-get install tftpd-hpa tftp-hpa
其中,tftpd-hpa为服务器,tftp-hpa为客户端。
(可选)要是可以,顺便安装网络工具,方便检查程序使用情况:
sudo apt install net-tools
2. TFTP服务器
2.1 配置TFTP服务器
编辑
sudo vi /etc/default/tftpd-hpa
文件路径:/etc/default/tftpd-hpa
# /etc/default/tftpd-hpaTFTP_USERNAME="tftp"
# TFTP_DIRECTORY="/srv/tftp"
TFTP_DIRECTORY="/home/yu/share/tftp"
TFTP_ADDRESS="0.0.0.0:69"
# TFTP_OPTIONS="--secure"
TFTP_OPTIONS="-c -s -l" # -l监听模式,-c允许创建文件,-s指定根目录
其中,#
开头的为注释,TFTP_DIRECTORY
为TFTP服务器的共享目录,我的已设置为/home/yu/share/tftp
,此目录建议设置开放的权限避免读写权限问题,TFTP_ADDRESS
为TFTP服务器监听的IP和端口,TFTP_OPTIONS
为TFTP的配置参数,建议设置为"-c -s -l"
。
共享目录建议配置为开放权限
sudo mkdir /home/yu/share/tftp # 创建目录
sudo chmod 777 /home/yu/share/tftp # 配置开放权限
2.2 重启TFTP服务器
编辑配置文件之后需要重启TFTP服务器以使配置生效
sudo systemctl restart tftpd-hpa
2.3 检查TFTP服务器
要是报错,很有可能是端口号被占用了,可以在配置文件中修改端口号,或者可以使用如下命令查看端口占用情况,此条命令也可以检查TFTP服务器是否在运行
sudo netstat -a | grep tftp
正常的结果
yu@Yubuntu:~$ sudo netstat -a | grep tftp
udp 0 0 0.0.0.0:tftp 0.0.0.0:*
2.4 配置TFTP服务器开机启动
要是想让TFTP服务器开机自启,可以使用如下命令
sudo systemctl enable tftpd-hpa
3. TFTP客户端
使用TFTP客户端连接TFTP服务器进行文件传输
3.1 试验环境
建议在一个有文件的目录下执行此试验 ~
我的目录
yu@Yubuntu:~/test$ ls -l
总计 4
-rw-rw-r-- 1 yu yu 11 3月 26 12:02 1.txt
3.2 使用TFPT连接到服务器
服务器在本机,故IP为127.0.0.1
tftp 127.0.0.1
运行结果
yu@Yubuntu:~$ tftp 127.0.0.1
tftp>
3.2 使用TFPT上传文件
命令
put 文件名
举例
yu@Yubuntu:~/test$ tftp 127.0.0.1
tftp> put 1.txt
tftp>
查看服务器上的共享目录
yu@Yubuntu:~/share/tftp$ ls -l
总计 4
-rw-rw-rw- 1 tftp tftp 11 3月 26 15:36 1.txt
上传成功
3.3 使用TFPT下载文件
我们在TFTP服务器上的共享目录中创建一个文件
yu@Yubuntu:~/share/tftp$ vi 2.txt
yu@Yubuntu:~/share/tftp$ cat 2.txt
Hello Yumizie
yu@Yubuntu:~/share/tftp$
从服务器上下载文件
命令
get 文件名
举例
yu@Yubuntu:~/test$ tftp 127.0.0.1
tftp> get 2.txt
tftp> q
yu@Yubuntu:~/test$ cat 2.txt
Hello Yumizie
yu@Yubuntu:~/test$
成功,使用q
命令退出TFTP客户端
贰、Ubuntu上的NFS
1. 安装
sudo apt-get install nfs-kernel-server
2. NFS服务器
2.1 配置NFS服务器
NFS 的配置文件是/etc/exports
,每一行定义一个共享目录及其访问权限。
编辑:
sudo vi /etc/exports
在末尾追加如下配置行:
/home/yu/share/nfs *(rw,sync,no_subtree_check,no_root_squash)
其中:
/home/yu/share/nfs
为共享目录位置,可以根据自己的需要进行更改;
*
表示允许所有 IP/主机名 访问;
rw
表示允许客户端对共享目录进行 读写操作(只读ro
);
sync
表示要求所有写入操作同步到磁盘,确保数据一致性,但会降低性能(异步模式使用async
,速度更快但存在数据丢失风险);
no_subtree_check
表示禁用子树检查,子树检查会验证共享目录的父目录是否存在,若父目录被删除,子目录访问会被拒绝,禁用后可提升性能(需要父目录稳定);
no_root_squash
表示不禁用root权限映射,一般NFS会把客户端的root用户映射为服务器的nobody用户,来增强安全性,此设置允许客户端的root用户以真实root 权限访问共享目录,可能有安全风险。
创建共享目录并分配权限
sudo mkdir -p /home/yu/share/nfs # 创建目录
sudo chmod -R 777 /home/yu/share/nfs # 分配权限
2.2 重启NFS服务器
重启NFS服务器,以使配置生效
sudo systemctl restart nfs-kernel-server
-> 以后若是遇到问题,重启NFS服务能解决大部分问题
2.3 检查NFS服务器
可以使用如下命令查看端口占用情况,检查NFS是否在运行
netstat -a | grep nfs
或者使用服务管理器检查
systemctl status nfs-server
显示active (exited)
即可
2.4 设置开机自动启动NFS服务器
rpcbind
负责将 RPC(远程过程调用)程序号映射到网络端口,是 NFS 服务的基础,故我们需要让它跟NFS服务同时启动。
sudo systemctl start rpcbind # 启动rpcbind服务
sudo systemctl enable rpcbind # 设置rpcbind服务开机自启
sudo systemctl start nfs-server # 启动NFS服务器
sudo systemctl enable nfs-server # 设置NFS服务器开机自启
检查设置状态
sudo systemctl is-enabled rpcbind # 打印enabled
sudo systemctl is-enabled nfs-server # 打印enabled
2.5 NFS服务器的其他说明
Ubuntu 17.10 之后的版本,NFS 服务默认仅支持协议 3和协议 4。,若要使用协议 2,需要在/etc/default/nfs-kernel-server
文件末尾加一句如下内容:
RPCNFSDOPTS="--nfs-version 2,3,4 --debug --syslog"
然后重启NFS服务器即可。
3. NFS客户端
3.1 试验环境
在使用客户端之前,为了方便测试,我们先在NFS服务器共享目录中添加一点东西
yu@Yubuntu:~/share/nfs$ vi 1.txt
yu@Yubuntu:~/share/nfs$ cat 1.txt
Hello NFS
yu@Yubuntu:~/share/nfs$
3.2 列出NFS服务器
可以列出服务器上共享的目录:
showmount -e <服务器IP地址>
示例:
yu@Yubuntu:~$ showmount -e 127.0.0.1
Export list for 127.0.0.1:
/home/yu/share/nfs *
yu@Yubuntu:~$
3.3 挂载NFS服务器
使用如下命令挂载NFS服务器的工作目录到/mnt
(/mnt 一般是用来做临时挂载的目录)
sudo mount -t nfs 127.0.0.1:/home/yu/share/nfs /mnt
其中
mount
为Linux系统中用于挂载文件系统的核心命令。
-t nfs
表示指定挂载的文件系统类型为NFS。
127.0.0.1:/home/yu/share/nfs
为NFS服务器的地址和要共享的目录路径。
/mnt
为本地挂载点,挂载后远程文件系统会在此路径下被共享。
3.4 检查挂载情况
检查目录中的文件是否与NFS服务器工作目录中的一致
yu@Yubuntu:~$ ls /mnt/
1.txt
yu@Yubuntu:~$ cat /mnt/1.txt
Hello NFS
yu@Yubuntu:~$
说明挂载成功!
3.5 取消挂载
sudo umount /mnt
叁、Windows上的TFTP
1. 软件的下载和安装
软件:tftpd64
网站地址:https://pjo2.github.io/tftpd64/
1.1 下载
下载地址:https://bitbucket.org/phjounin/tftpd64/downloads/
点击tftpd64.464.zip
即可开始下载
1.2 解压运行
解压得到的文件,运行tftpd64.exe
2. 软件的使用
在主界面中,Current Directory 为当前的工作目录,文件的上传、下载和共享都在这个目录中,Server interfaces为TFTP服务器监听的IP,要共享给哪个设备即选择与共享设备所在网段一致的IP。
软件打开即启动了TFTP服务器,我们可以在Ubuntu上试一试。
2.1 试验环境准备
在我的当前的工作目录D:\y17mm\Desktop\Ubuntu\tftpd
中创建一个文本文件,写入内容:
D:\y17mm\Desktop\Ubuntu\tftpd>tree /f
卷 井中月 的文件夹 PATH 列表
卷序列号为 FE8F-1AB3
D:.tftpd32.initftpd64.exeTFTPWindows.txt没有子文件夹D:\y17mm\Desktop\Ubuntu\tftpd>type TFTPWindows.txt
Hello
Windows
2.2 作为TFTP服务器使用
打开tftpd64主界面后即开启了TFTP服务器,我们到Ubuntu中使用TFTP客户端上传和下载文件:
2.2.1 Ubuntu客户端
yu@Yubuntu:~/test$ cat 1.txt
Hello TFTP
yu@Yubuntu:~/test$ tftp 192.168.146.1
tftp> put 1.txt
tftp> get TFTPWindows.txt
tftp> q
yu@Yubuntu:~/test$ cat TFTPWindows.txt
Hello
Windowsyu@Yubuntu:~/test$
上传下载都没问题的。
2.2.2 Windows服务器
服务器这边已收到来自客户端的文件,而且也是可以正常查看上传到服务器的文件的。
2.3 作为TFTP客户端使用
开启Ubuntu上的TFTP服务器,目前服务器上只有两个文件:
yu@Yubuntu:~/share/tftp$ ls
1.txt 2.txt
yu@Yubuntu:~/share/tftp$ cat 2.txt
Hello Yumizie
yu@Yubuntu:~/share/tftp$ sudo systemctl restart tftpd-hpa
[sudo] yu 的密码:
yu@Yubuntu:~/share/tftp$ sudo netstat -a | grep tftp
udp 0 0 0.0.0.0:tftp 0.0.0.0:*
yu@Yubuntu:~/share/tftp$
2.3.1 从Ubuntu的TFTP服务器上下载文件
点击“Tftp Client”选项卡,输入好TFTP服务器IP地址和端口号(端口号默认为 69),“Local File”为保存到本机的位置,“Remote File”为服务器上的文件名,点击“Get”开始下载。
下载完成后,会弹出下载结果,同时把下载好的文件保存在“Local File”指定的位置,我们双击打开可以看到文件内容与服务器上的一致。
2.3.2 把文件上传到Ubuntu的TFTP服务器上
与文件下载一样,设置好服务器IP和端口,“Local File”为将要上传的本机文件,“Remote File”为上传到服务器上的文件名,点击“Put”开始上传。
上传完成后,检查服务器上的文件:
yu@Yubuntu:~/share/tftp$ ls -l
总计 12
-rw-rw-rw- 1 tftp tftp 11 3月 26 15:36 1.txt
-rw-rw-r-- 1 yu yu 14 3月 26 15:39 2.txt
-rw-rw-rw- 1 tftp tftp 14 3月 27 12:05 TFTPWindows.txt
yu@Yubuntu:~/share/tftp$ cat TFTPWindows.txt
Hello
Windowsyu@Yubuntu:~/share/tftp$
可以看到,服务器上多出了一个文件“TFTPWindows.txt”,上传成功~
肆、Windows上的NFS
NFS服务器: Windows Server 2016 及以上原生支持 NFS 服务器角色,可通过 “文件和存储服务” 中的 “NFS 服务器” 进行安装。Windows 10/11 家庭版和专业版默认不支持 NFS 服务器角色。这些版本需要使用第三方工具(如 haneWIN NFS Server 或 Vagrant WinNFSd)来部署 NFS 服务器。
NFS客户端: Windows Server 2008 R2 及更高版本原生支持 NFS 客户端,需通过 “添加角色和功能” 手动安装。Windows 10/11 专业版、企业版支持 NFS 客户端,但家庭版不包含此功能。
总之,Windows上有几款NFS相关的软件,有的是系统自带的,有的是第三方的,各个支持情况不一……
1. Windows上自带的NFS软件
1.1 Windows(桌面版)NFS客户端安装
我的Windows11专业版,在“设置”->“系统”->“可选功能”->“更多Windows功能”->“NFS服务”中有自带的NFS客户端和管理工具,若要启用,勾选后点确定即可。Windows 客户端默认支持 NFSv3,不支持 NFSv4。
其中,NFS客户端提供基础的NFS客户端功能,管理工具提供图形化的管理界面方便我们配置。
1.2 Windows NFS客户端的使用
1.2.1 查看远程电脑NFS共享的目录
这条命令的用法与Linux上的用法一致,列出服务器上共享的所有目录:
showmount -e 远程电脑的IP
示例
C:\Users\y17mm>showmount -e 192.168.146.131
导出列表在 192.168.146.131:
/home/yu/share/nfs *C:\Users\y17mm>
1.2.2 挂载NFS服务器
命令行方式
命令格式:
mount -o anon \\<服务器IP>\<共享目录> <盘符>:
-o anon
:匿名访问,即无需身份验证,Windows 客户端默认不发送匿名请求,需显式指定此选项以通过身份验证。
示例:
C:\Users\y17mm>mount -o anon \\192.168.146.131\home\yu\share\nfs Z:
Z: 现已成功连接到 \\192.168.146.131\home\yu\share\nfs命令已成功完成。C:\Users\y17mm>
图形化方式
打开“此电脑”,在工具栏中点击“…”,选择“映射网络驱动器”,在弹出的窗口中输入\\服务器\共享路径
,点击完成即可。
这边我挂载的是我Ubuntu系统中的NFS服务器共享的目录,挂载成功后会自动打开:
1.2.3 检查挂载
执行上面的命令行挂载或图形化挂载的操作之后,打开“此电脑”:
可以在“此电脑”中看到对应的网络位置。
打开后,里面的文件就像本地文件一样,可以很方便的读写。
1.2.4 取消挂载
命令行方式(推荐)
格式
umount <盘符>:
示例
C:\Users\y17mm>umount z:正在断开连接 Z: \\192.168.146.131\home\yu\share\nfs
命令已成功完成。C:\Users\y17mm>
图形化方式
在需要取消挂载的磁盘上“右键”,选择“断开连接”即可。
1.3 Windows Server NFS服务器和NFS客户端安装
命令行方式
命令:
Import-Module ServerManager
Add-WindowsFeature FS-NFS-Service
Import-Module NFS
图形化方式
打开“服务器管理器”,点击“添加角色和功能”,点击“基于角色的安装”,点击“文件和存储服务”,选择“NFS 服务器”。
跟Windows(桌面版)一样的,管理工具提供图形化的管理界面方便我们配置,NFS服务器、NFS客户端提供基础的NFS能力。
1.4 Windows Server NFS服务器的使用
1.4.1 创建NFS服务器共享目录
环境
在我的Windows Server 2025上,在C盘有两个共享文件夹,内容如下:
图形化方式
在“服务器管理器”中,找到左边的“文件和存储服务”,找到“共享”,点击“若要创建文件共享,请启动新加共享向导。”,在弹出的窗口中选择“NFS 共享 - 快速”,下一步,选择“键入自定义路径”,输入我的第一个文件夹路径C:\nfs
。
共享名称保持默认就好,当然,也可以更改成你喜欢的。
身份验证我们依然选择比较开放的方式,勾选“无服务器身份验证”,勾选“启用未映射的用户访问”。
共享权限这边我们需要先点个“添加”,在弹出的面板中选择对所有机器生效的“All Machines”,权限设置为“读/写”权限,点“添加”完成设置。
这样做的好处是快速上手NFS,后面有需要再改。但是注意别在不信任的网络上这样操作(比如公网)。
创建NFS服务器共享目录完成~
命令行方式
格式
New-NfsShare -Name <共享名称> -Path <共享目录> -Permission <权限> -AllowRootAccess <布尔值-是否允许以root权限访问> -EnableUnmappedAccess <布尔值-是否未映射的用户访问>
示例
PS C:\Users\Administrator> New-NfsShare -Name "win_nfs_share" -Path "c:\ymm" -Permission "readwrite" -AllowRootAccess $true -EnableUnmappedAccess $true
警告: 共享上已启用未映射的 Unix 用户访问或匿名访问,但是 AUTH_SYS 身份验证协议已禁用。服务器已在共享上自动启用
AUTH_SYS。Name Availability Path
---- ------------ ----
win_nfs_share Standard (not clustered) c:\ymmPS C:\Users\Administrator>
1.4.2 验证NFS服务器共享目录是否设置成功
命令格式
Get-NfsShare -Name <共享名称>
示例
PS C:\Users\Administrator> Get-NfsShare -Name "nfs"Name Availability Path
---- ------------ ----
nfs Standard (not clustered) C:\nfsPS C:\Users\Administrator> Get-NfsShare -Name "win_nfs_share"Name Availability Path
---- ------------ ----
win_nfs_share Standard (not clustered) c:\ymmPS C:\Users\Administrator>
1.4.3 使用Ubuntu挂载Windows NFS服务器
准备挂载
yu@Yubuntu:~$ showmount -e 192.168.146.136 # 显示Windows NFS服务器上所有的共享目录
Export list for 192.168.146.136:
/nfs (everyone)
/win_nfs_share (everyone)
yu@Yubuntu:~$ sudo mkdir /mnt/windows1 /mnt/windows2 # 创建挂载目录,待会儿挂到这两个文件夹上
[sudo] yu 的密码:
yu@Yubuntu:~$
挂载第一个目录
yu@Yubuntu:~$ sudo mount -t nfs 192.168.146.136:/nfs /mnt/windows1 # 挂载第一个共享目录
yu@Yubuntu:~$ cd /mnt/windows1
bash: cd: /mnt/windows1: 权限不够
yu@Yubuntu:~$ su
密码:
root@Yubuntu:/home/yu# cd /mnt/windows1
root@Yubuntu:/mnt/windows1# ls
windows_nfs_server.txt
root@Yubuntu:/mnt/windows1# cat windows_nfs_server.txt
Windows Server 2025
root@Yubuntu:/mnt/windows1#
成功~
挂载第二个目录
yu@Yubuntu:~$ sudo mount -t nfs 192.168.146.136:/win_nfs_share /mnt/windows2 # 挂载第二个共享目录
[sudo] yu 的密码:
yu@Yubuntu:~$ cd /mnt/windows2
-bash: cd: /mnt/windows2: 权限不够
yu@Yubuntu:~$ su
密码:
root@Yubuntu:/home/yu# cd /mnt/windows2
root@Yubuntu:/mnt/windows2# ls
yu.txt
root@Yubuntu:/mnt/windows2# cat yu.txt
yu nfs windows
root@Yubuntu:/mnt/windows2#
成功~
取消挂载
yu@Yubuntu:~$ sudo umount /mnt/windows1
yu@Yubuntu:~$ sudo umount /mnt/windows2
1.4.4 使用Windows NFS客户端挂载Windows NFS服务器
与上文的“1.2.2 挂载NFS服务器”部分步骤一致,不一样的是这里可能会弹出“输入网络凭据”的认证窗口,需要输入一下Windows Server的账号和密码,例如我这里需要输入账号:Administrator,密码:Qwe123++。
挂载后能正常访问~
2. Windows上的第三方NFS软件
客户端在非服务器版本上有的,若是家庭版,可以改个激活码转换成专业版,这里就不介绍了,这里主要介绍NFS服务器软件。
2.1 haneWIN
2.1.1 下载安装
haneWIN 网站地址:https://www.hanewin.net/nfs-e.htm
不太喜欢安装的,这里需要下载两个文件,一个是程序包,一个语言包。
下载后得到这两个文件:
其中,“nfs1268.zip”为程序包,“nfs-languages.zip”为语言包,解压“nfs1268.zip”到当前目录,会得到一个“nfsd”。
先使用压缩软件打开另外一个文件“nfs-languages.zip”,然后进入解压得到的“nfsd”,进入到里面的“languages”文件夹内,把“nfs-languages.zip”中的“Simplified_Chinese.ini”拖入。
然后我们返回上一层,找到nfsd文件夹下的“nfssrv-64.exe”,启动!
点击“Edit”,选择“Preferences”,切换到“Language”选项卡,点击“简体中文”,点击“确定”,这样界面就变成中文的了~
2.1.2 配置服务器
创建共享文件夹
我在C盘下创建了个文件夹“nfs_hane”。
配置共享文件夹
回到haneWIN,点击“编辑”,选择“首选项”,切换到“导出”面板,点击“编辑输出文件”,开始编辑共享目录条目。
编辑框中的每一行代表一个共享目录,“#”开头的为注释,可以不用管它,我们把原来的一些共享目录条目全部删去,写入如下条目:
c:\nfs_hane -public -name:nfs_hw
其中,c:\nfs_hane
为共享的文件夹路径,我的就刚刚创建的在C盘的文件夹“nfs_hane”,-public
表示为公共权限,-name:nfs_hw
为设置共享名称为“nfs_hw”。
大家根据自己的需要进行更改,更改完成后点“保存”,点“确定”关掉“首选项”窗口。
重启haneWIN
点“文件”,选择“退出”,再重新双击“nfssrv-64.exe”,启动!
2.1.3 检查NFS服务器
haneWIN重启后,设置生效,我们到Ubuntu下验证一下。
yu@Yubuntu:~$ showmount -e 192.168.146.128
Export list for 192.168.146.128:
/nfs_hw -public
yu@Yubuntu:~$ sudo mount -t nfs -o nolock 192.168.146.128:/nfs_hw /mnt
yu@Yubuntu:~$ cd /mnt/
yu@Yubuntu:/mnt$ ls
hw.txt
yu@Yubuntu:/mnt$ cat hw.txt
hw_nfs
yu@Yubuntu:/mnt$
能正常访问NFS服务器上的共享目录,成功~
2.2 WinNFSd
支持NFS V3,Windows挂载测试成功,Ubuntu挂载测试提示“clnt_create: RPC: Can't decode result”和“输入/输出错误”。
2.2.1 下载
开源地址:https://github.com/winnfsd/winnfsd/releases
点击“WinNFSd.exe”即可开始下载。
2.2.2 配置
把“WinNFSd.exe”放到一个文件夹中,在此文件夹中新建文本文件改文件名和后缀为“start.bat”,写入如下内容:
WinNFSd.exe -addr 0.0.0.0 %cd% /nfs
其中,-addr 0.0.0.0
为在所有的网卡上启用监听,%cd%
表示当前目录,/nfs
为共享名称。
2.2.3 运行
双击“start.bat”启动NFS服务器。
2.2.4 测试挂载服务器(Windows)
命令:
mount -o anon \\127.0.0.1\nfs Z:
2.2.5 关闭服务器
在所有客户端取消挂载后,在由“start.bat”打开的小黑窗中输入quit
退出NFS服务器。
若是还有挂载的NFS客户端,它会要求你确认的。
2.3 FreeNFS
官网:https://freenfs.sourceforge.net/
开源地址:https://github.com/digitalarch/FreeNFS
开源免费,支持 NFS v2/v3,已停止维护(最后版本 2012 年),不建议用于生产环境。
2.3.1 下载和运行
下载页链接:http://sourceforge.net/projects/freenfs/files/latest/download
下载后得到一个文件“FreeNFS.exe”,双击后运行,运行后无窗口,需要点开任务栏才能看到。
2.3.2 挂载测试
Windows 挂载失败
C:\Users\y17mm>showmount -e 192.168.146.137
RPC: 程序不可用RPC: 端口映射器故障 - RPC: 已超时。
C:\Users\y17mm>mount -o anon \\192.168.146.137\ Z:
网络错误 - 53有关详细信息,请键入“NET HELPMSG 53”。C:\Users\y17mm>
Ubuntu挂载失败
yu@Yubuntu:~$ showmount -e 192.168.146.137
rpc mount export: RPC: Procedure unavailable
yu@Yubuntu:~$ sudo mount -v -t nfs -o vers=3,proto=tcp,sec=none,timeo=20,soft,intr 192.168.146.137:/ /mnt
[sudo] yu 的密码:
mount.nfs: timeout set for Sat Mar 29 02:07:33 2025
mount.nfs: trying text-based options 'vers=3,proto=tcp,sec=none,timeo=20,soft,intr,addr=192.168.146.137'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 192.168.146.137 prog 100003 vers 3 prot TCP port 2049
mount.nfs: portmap query failed: RPC: Authentication error
mount.nfs: access denied by server while mounting 192.168.146.137:/
yu@Yubuntu:~$
2.3.4 其他版本
FreeNFS还有个专门为嵌入式做的版本,叫“FreeNFSE”
下载地址:https://sourceforge.net/projects/freenfs/files/Current%20Version/Embedded%20System%20Version/
下载完成后得到一个压缩包“FreeNFSE Release 12-12-12.rar”,解压后找到“FreeNFSE.exe”运行,一样的是在状态栏。
再次尝试使用Windows和Ubuntu去链接,一样的结果,仍然不可用,可能是版本不对或者其他原因,欢迎讨论。
伍、参考资料
- 创建 NFS 共享(NFS)| Microsoft Learn --- New-NfsShare (NFS) | Microsoft Learn:https://learn.microsoft.com/en-us/powershell/module/nfs/new-nfsshare?view=windowsserver2025-ps
- 部署网络文件系统:https://learn.microsoft.com/zh-cn/windows-server/storage/nfs/deploy-nfs
- Tftpd64:https://pjo2.github.io/tftpd64/
- windows上搭建NFS服务器--haneWIN:https://blog.csdn.net/paladinzh/article/details/96162270
- WinNFSd:https://github.com/winnfsd/winnfsd
- 欢迎来到 FreeNFS!:https://freenfs.sourceforge.net/
- FreeNFS:https://sourceforge.net/projects/freenfs/
- 11.文件系统 - NFS - 《RT-Thread编程手册》 - 书栈网 · BookStack:https://www.bookstack.cn/read/rtthread-manual-doc/11.7.md