用nfs挂载rootfsnfs是一种网络通讯协议,由服务器(提供nfs服
  

sailyang 2281

{{ttag.title}}
用nfs挂载rootfs
nfs是一种网络通讯协议,由服务器(提供nfs服务的一套软件)和客户端(通过nfs这种协议来和服务器进行通信来工作的一个软件)构成。利用nfs协议可以做出很多直接性应用,我们这里使用开发板中运行kernel做nfs客户端,来挂载服务器的rootfs。nfs方式启动不用制作rootfs镜像,这种方式一般作为产品开发阶段调试使用。
1
主机ubuntu中搭建nfs服务器,搭建完成后在服务器上进行测试:
mount -t nfs -o nolock 服务器IP地址 :存放linuxrc的路径(譬如/home/nfs/rootfs) 挂载路径(譬如/mnt)
例如:mount -t nfs -o nolock 172.16.104.33:/home/nfs/rootfs /mnt
cd /mnt 后就能考到/home/nfs/rootfs下内容;(此时在/mnt下创建一个文件,若进入/home/nfs/rootfs后也能看到,就证明挂载成功)
2)进入开发板的uboot设置nfs启动方式的bootargs(IP根据实际使用更改)设置完成后重启。
setenv bootargs root=/dev/nfs nfsroot=服务器IP地址:存放linuxrc的路径譬如/home/nfs/rootfs ip=开发板的IP地址:服务器IP地址:网络网管地址:255.255.255.0::服务器网卡譬如eth0ff initi=linuxrc(linuxrc在/home/nfs/rootfs下) console=控制台使用的串口譬如ttySAC2,115200
例如:setenv bootargs root=/dev/nfs nfsroot=172.16.104.33:/home/nfs/rootfs ip=172.16.104.10:172.16.104.33:172.16.104.1:255.255.255.0::eth0ff init=/linuxrc console=ttySAC2,115200

3)配置:


4)编译得到新的内核,重启开发板
最好设置bootcmd的参数为tftp下载的方式启动,这样的话重启开发板后,就可以直接下载更新后的内核,直接启动了,非常便于开发中的调试,重启后从打印信息中就能看出是否挂载成功。这种方式内核就“好像在远程服务器上一样“,可以供我们实时下载;而根文件系统却一直在服务器上,当下载到开发板这边的内核启动后通过网线去挂载服务器上的根文件系统(一定要有网线,这个时候的开发板工作时候是离不开服务器的)

5):NFS方式挂在的是文件夹,不用制作rootfs的镜像(rootfs有2种格式:nfs方式启动的文件夹形式的rootfs和用来烧录的镜像形式的rootfs),这种方式一般作为产品开发阶段使用,开发完成后才会把这个根文件系统文件夹里的内容制作成镜像,烧录到产品中去(如烧录到开发板,让其在开发板上挂载启动)。另外若不用的话还要 umount /mnt 卸载掉,省的这个文件夹一直被占用

打赏鼓励作者,期待更多好文!

打赏
1人已打赏

发表新帖
热门标签
全部标签>
2025年技术争霸赛
每日一问
标准化排查
GIF动图学习
功能体验
新版本体验
纪元平台
产品连连看
高手请过招
【 社区to talk】
信服课堂视频
2023技术争霸赛专题
每周精选
2024年技术争霸赛
社区新周刊
安全效果
畅聊IT
答题自测
专家问答
技术笔记
技术圆桌
在线直播
MVP
网络基础知识
安装部署配置
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
排障笔记本
产品预警公告
玩转零信任
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
卧龙计划
华北区拉练
天逸直播
以战代练
秒懂零信任
技术晨报
平台使用
技术盲盒
山东区技术晨报
文档捉虫
齐鲁TV
华北区交付直播
北京区每日一练
场景专题
故障笔记
排障那些事
西北区每日一问
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力
专家说
热门活动
产品动态
行业实践
产品解析
关键解决方案

本版达人

feeling

本周分享达人

新手29676...

本周提问达人