(一). 主机 nfs 环境搭建
1.1).虚拟机安装nfs-kernel-server

$ sudo apt install nfs-kernel-server

1.2).编辑nfs-server 配置文件

$ sudo gedit /etc/exports

配置主机nfs 访问路径,增加内容

/home/robot/coolKe/rootfs *(rw,sync,no_subtree_check)  #rootfs 文件系统
/home/robot/coolKe/image *(rw,sync,no_subtree_check)   #uImage 内核镜像

1.3).重启 nfs-kerne-server 服务

$ sudo /etc/init.d/nfs-kernel-server restart
[ ok ] Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.service.

(二). 验证主机NFS环境

$ sudo mount -t nfs 192.168.19.129:/home/robot/coolKe/rootfs /mnt
 error info:
 mount: can't find /mnt in /etc/fstab

解决办法,在fstab中增加 /mnt nfs :

sudo gedit /etc/fstab 
 # add new nfs configure to file end
 none /mnt nfs default 0 0

再次验证确认

sudo mount -t nfs 192.168.19.129:/home/robot/coolKe/rootfs /mnt
 is okay.

(三).配置开发板env环境参数
3.1). 配置开发板网络参数
开发板与主机在相同路由器下,配置开发板参数,IP地址要与实际搭建环境相符

ifconfig eth0 192.168.0.249 up
route add default gw 192.168.0.1
$ifconfig

确认eth0 启动正常,ping 主机确认网络

3.2).验证开发板 NFS
在开发板上输入如下命令,注意更换你的主机地址和路径。

mount -t nfs -o nolock 192.168.0.218:/home/robot/coolKe/rootfs /mnt

3.3). 配置nuc980 nfs 的env.txt环境变量文件

baudrate=115200
bootdelay=2
stderr=serial
stdin=serial
stdout=serial
setspi=sf probe 0 30000000
loadkernel=sf read 0x7FC0 0x200000 0x760000
# 增加 nfs 需要使用的参数
ethact=emac
ethaddr=00:00:00:11:22:33 #MAC addr
ipaddr=192.168.0.249	  #开发板IP
serverip=192.168.0.1	 #网关
loaderNFS=nfs 0x7fc0 192.168.0.218:/home/robot/coolKe/image/980uimage
             # DDR     主机 ip 地址   uimage路径
bootargs=noinitrd root=/dev/nfs rw nfsroot=192.168.0.218:/home/robot/coolKe/rootfs nolock 
                               # 主机 ip 地址             rootfs路径                     
ip=192.168.0.249 console=ttyS0,115200n8 init=/linuxrc mem=64M
# 开发板IP        CONSOLE                 INIT          DDR
bootcmd=run loaderNFS;bootm 0x7fc0

3.4). 烧写 env.txt 文件至nuc980的spi flash的 0x80000. 参考nuc980烧写flash相关说明。

3.5). 内核配置
配置内核支持NFS文件系统,并重新编译内核.
Networking support
Networking options
[] TCP/IP networking
[
] IP: kernel level autoconfiguration
[] IP: DHCP support
[
] IP: BOOTP support
[*] IP: RARP support

File systems —>
[] Network File Systems —>
<
> NFS client support
<> NFS client support for NFS version 2
<
> NFS client support for NFS version 3
[*] Root file system on NFS

3.6). 拷贝文件
把编译好的980uImage和 rootfs文件拷贝至 /home/robot/coolKe/ 路径下,
分别 image & rootfs 文件夹,重新启动开发板。
注意:此处路径与 配置/etc/exports 路径一致。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐