RV1126网络环境TFTPNFS搭建(四)
四、RV1126 挂载系统
4.1、网络环境
已经完成网络环境 ping 测试,完成 TFTP 和 NFS 环境搭建和验证。
4.2、内核与设备树文件准备
将SDK包中编译出来的的 zImage 文件和 rv1126.dtb 设备树拷贝到Ubuntu 的 tftp 工作目录下。
赋予这两个文件可读可写可执行权限
sudo chmod 777 zImage rv1126.dtb
4.3、文件系统准备
将SDK包中的编译生成的文件系统copy到NFS目录中
sudo cp –rf rv1126_sdk/buildroot/output/ rv1126/target /home/xxx/linux/nfs
到目录/home/xxx/linux/nfs下修改target文件夹名为rootfs
cd /home/xxx/linux/nfs
sudo mv target rootfs
进入rootfs目录查看文件如下
cd rootfs
ls
4.4、TFTP 挂载内核、设备树
开发板uboot设置地址
setenv ipaddr 192.168.111.50
setenv ethaddr 00:05:9f:06:e3:57
setenv gatewayip 192.168.111.1
setenv netmask 255.255.255.0
setenv serverip 192.168.111.13
saveenv
测试下 uboot 是否能 ping 虚拟机
ping 192.168.111.13
注意,uboot 阶段,虚拟机 ping 开发板是没有反馈的,这里不用虚拟机去 ping 开发板。
设置环境变量 bootcmd 来挂载 tftp 目录下的内核、设备树文件到开发板内存中。
setenv bootcmd 'tftp 7AFF6C80 zImage;tftp 7C000000 rv1126.dtb; bootz 7AFF6C80 - 7C000000'
saveenv
注意,bootz 7AFF6C80 - 7C000000 指令这里,bootz 中的-符号是英文的,两边各有一个空格,示例中用绿色标注空格。建议手动输入指令,直接复制可能有格式问题。
4.5、NFS 挂载文件系统
设置环境变量 bootargs 来挂载 nfs 共享目录下的 rootfs 文件系统到开发板内存中
setenv bootargs 'console=ttyFIQ0,1500000 root=/dev/nfs nfsroot=192.168.111.13:/home/xxx/ linux /nfs/rootfs,v3,proto=tcp rw ip=192.168.111.50:192.168.111.13:192.168.111.1:255.255.255.0::eth0:off'
saveenv
请务必将设备树chosen下的bootargs更改如下:
bootargs = "earlycon=uart8250,mmio32,0xff570000 snd_aloop.index=7";
以上,基本可以正确挂载系统。
详细的uboot参数配置见下链接:
https://download.csdn.net/download/wq690968346/90663400