在OK6410上实现NFS启动内核

一、使Uboot支持网络。(非必要)

  1. 在OK主页上有支持tftp的uboot驱动下载。(我直接下载,估计飞凌没提供是想用户自己学习一下移植。)

  2.在主机上装tftp服务器。查看一下转载的文章。

 

二、挂载NFS文件系统(参考手册内容,FORLINX_6410_yaffs2_v1.0.tgz这个根据不同内核版)

1. 准备NFS文件系统目录
启动nfs 服务之前,必须在Ubuntu 上准备好NFS 共享目录。
例如我们采用Ubuntu 的“/forlinx/root”作为NFS 共享目录,就需要将光盘中的“linux2.6.28/filesystem/FORLINX_6410_yaffs2_v1.0.tgz”压缩文件拷贝
到这个目录下,然后解压缩,得到根文件系统所需要的目录。
在Ubuntu 上打开一个终端,输入以下命令:
#mkdir /forlinx/root
将FORLINX_6410_yaffs2_v1.0.tgz 文件拷贝到该目录下,解压:
#tar –zxf FORLINX_6410_yaffs2_v1.0.tgz
2. 设置主机IP
这里我们将Ubuntu 的IP 设置为192.168.0.231
3. 配置NFS服务
在Ubuntu 上新建一个终端,依次输入以下命令:
#sudo apt-get install portmap
#sudo apt-get install nfs-kernel-server
#sudo gedit /etc/exports
在弹出的文本编辑器中编辑exports 文件,在最后一行添加:
/forlinx *(rw,sync,no_root_squash)
4. 启动NFS服务
#sudo /etc/init.d/portmap restart
#sudo /etc/init.d/nfs-kernel-server restart
5. 在开发板上设置并保存启动参数(这里可以利用UBOOT变量。自己定义几个不同的启动项,保存起来。)
在u-boot 命令行下输入以下命令设置U-boot 启动参数:
#setenv bootargs "root=/dev/nfs nfsroot=192.168.0.231:/forlinx/root
ip=192.168.0.232:192.168.0.231:192.168.0.201:255.255.255.0:witech.com.
cn:eth0:off console=ttySAC0,115200"
保存:
#saveenv
重新启动开发板,Linux 内核启动后会自动挂载NFS 文件系统。
在这,解释一下bootargs 参数中IP,以上述设置为例。在实际使用过程当中,请以实际
网络环境进行修改:
192.168.0.231 PC 端Ubuntu 的IP
192.168.0.232 开发板IP
192.168.0.201 网关
255.255.255.0 子网掩码
nfs 挂载成功,需要开发板网络设置、PC Linux 网络设置、硬件网线连接、开发板mount
这几部分都没有问题。如果没有成功挂载,需要从这几部分查找原因。如果是使用虚拟机安装
Linux,在挂载nfs 的时候,建议关闭Windows 的杀毒软件和防火墙。

 

三、启动。

1、配置、编译支持NFS启动的内核。

  A可以放在TFTP服务器上启动。

tftp 50008000 zImage

bootm 50008000 

启动完成后OK。   

  B可以烧到flash中去。

   UBOOT启动参数设置好后自然从NFS服务器上启动内核。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值