《嵌入式开发》解决ubuntu系统无法通过nfs服务挂载上位机rootfs根文件系统

该方案适用于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
再次检查根文件系统是否正确,启动参数是否正确,上位机与下位机之间网络是否连通。
若一切大吉,将挂载成功。
创作不易,如果有帮到你,请支持作者,有助于营造良好的学习交流环境。
在这里插入图片描述

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要通过NFS挂载文件系统,你需要做以下步骤: 1. 在电脑上安装并配置NFS服务器。 2. 在FS4412上安装并配置NFS客户端。 3. 在电脑上创建一个根文件系统的镜像。可以使用BusyBox等工具创建。 4. 将根文件系统的镜像文件放到NFS服务器的共享目录下。 5. 在FS4412上挂载NFS共享目录,并将其作为根文件系统启动。 具体步骤如下: 1. 在电脑上安装并配置NFS服务器。 可以使用以下命令安装NFS服务器: ``` sudo apt-get install nfs-kernel-server ``` 安装完成后,编辑/etc/exports文件,添加共享目录的配置信息。例如,如果要共享/home目录,可以在/etc/exports文件中添加以下行: ``` /home *(rw,sync,no_subtree_check) ``` 这表示/home目录对所有客户端都可读写。 然后重启NFS服务器: ``` sudo systemctl restart nfs-kernel-server ``` 2. 在FS4412上安装并配置NFS客户端。 可以使用以下命令安装NFS客户端: ``` sudo apt-get install nfs-common ``` 安装完成后,编辑/etc/fstab文件,添加挂载NFS共享目录的信息。例如,如果NFS服务器的IP地址为192.168.1.100,共享目录为/home,可以在/etc/fstab文件中添加以下行: ``` 192.168.1.100:/home /nfs/home nfs defaults 0 0 ``` 这表示将NFS服务器的/home目录挂载到本地的/nfs/home目录,并设置为默认挂载选项。 然后重启FS4412: ``` sudo reboot ``` 3. 在电脑上创建一个根文件系统的镜像。 可以使用BusyBox等工具创建。具体步骤略。 4. 将根文件系统的镜像文件放到NFS服务器的共享目录下。 假设根文件系统的镜像文件名为rootfs.img,可以将其拷贝到NFS服务器的/home目录下。 5. 在FS4412上挂载NFS共享目录,并将其作为根文件系统启动。 首先,创建一个空目录作为挂载点: ``` sudo mkdir /nfs/rootfs ``` 然后,挂载NFS共享目录到该目录: ``` sudo mount 192.168.1.100:/home/rootfs.img /nfs/rootfs ``` 最后,启动FS4412,并将/nfs/rootfs作为根文件系统启动: ``` sudo sh -c "echo '/dev/nfs / nfs rw,nolock 0 0' >> /etc/fstab" sudo reboot ``` 重启后,FS4412将会从NFS共享目录中挂载文件系统,并启动。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值