配置制作nfs文件系统

准备:开发板与宿主机都通过交叉网线连接到路由器

1,编译内核
1)清除原有配置文件 make distclean
2)配置内核
a:   cp FORLINUX6410_CFG .config
b:   make menuconfig ARCH=arm   进入File systems选项,进入Network File systems选       项,确认root file system on nfs选中   保存退出
c: vi .config   搜索CMD   /CMD   更改CONFIG_CMDLINE="console=ttySAC0 root=/dev/mtdblock2 rootfstype=cramfs init=/linuxxrc"   为  CONFIG_CMDLINE="root=/dev/nfs nfsroot=192.168.12.163:/xh/work/rootfs ip=192.168.12.126 rw console=ttySAC0 mem=256M"

3)编译内核
make uImage ARCH=arm CROSS_COMPILE=arm-linux-
2,配置宿主机
  1)vi /etc/exports
添加 /xh/work/rootfs 192.168.12.* (rw,sync,no_root_squash) 开放目录
  2)解压rootfs_nfs.tar.gz 至 /xh/work/rootfs目录下,或自己制作根文件系统。
  3)把编译好的内核拷到tftpboot下   cp .../arch/arm/boot/uImage /tftpboot

3,配置开发板并启动
  1)用SD卡把带网络功能的uboot烧写到开发板后,nandflash启动
  2)设置uboot环境变量 
setenv ipaddr 192.168.12.126   // 开发板ip
setenv serverip 192.168.12.163 //宿主机ip
setenv gatewayip 192.168.12.1 //网关
setenv bootargs root=/dev/nfs nfsroot=192.168.12.163:/xh/work/rootfs ip=192.168.12.126 rw console=ttySAC0,115200 mem=256M     //设置bootargs环境变量
saveenv   //保存环境变量
  3)从宿主机下载内核映像
tftp c0008000 uImage
  4) 启动开发板
bootm

PS:
        a,uboot中设置自动启动:setenv bootcmd tftp c0008000 uImage \;bootm c0008000
                          saveenv
        b,如果开发板启动时停在了  Uncompressing Linux... done,booting the kernel;说明console 输出的串口指定不对。 cmdline / console=ttyO0这个参数,看看你的2.6.37内核的config下cmdline里面的console指定的是哪个?应该与uboot下设置的一样。通常有人会把SAC0(数字0)误写为SACO(英文字母O)
 
PS:nfs启动时可能比较慢或出错rpc错误,解决方法见http://blog.sina.com.cn/s/blog_636a55070101puam.html
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值