该方案适用于ubuntu 22.04
嵌入式开发中,最重要的一部分是使用nfs服务,挂载上位机的rootfs根文件系统到我们的下位机。这样我们在开发过程中就不必每次编写完程序后烧录到下位机后再检查代码问题。
但是,应该有不少同学注意到,自己电脑上安装的ubuntu系统无法实现这一目的。其根本原因可能是由于ubuntu版本太新,导致上位机nfs服务版本和下位机nfs版本不同,从而导致无法挂载。
所以本教程,仅适用于nfs服务版本不同导致的挂载问题。
一、 修改下位机启动参数
//在我框起来的那部分,添加参数:
proto=tcp,nfsvers=3
用来指定nfs服务中的客户端与服务器之间的传输协议和nfs版本号。
二、修改上位机的nfs配置
使用一下命令,打开上位机的nfs配置文件。
sudo vim /etc/nfs.conf
将udp 和tcp vers2 的前面的#去掉并置为y,保存退出。
使用命令:
sudo vi /etc/default/nfs-kernel-server
打开nfs配置文件
找到下面的命令,改为如下所示,注意去掉#号
RPCNFSDCOUNT = "8 -V 2"
保存退出。
三、重启上位机nfs服务
sudo service nfs-kernel-server restart
再次检查根文件系统是否正确,启动参数是否正确,上位机与下位机之间网络是否连通。
若一切大吉,将挂载成功。
创作不易,如果有帮到你,请支持作者,有助于营造良好的学习交流环境。