感谢支持
我们一直在努力

APPRO DM368x IPNC 2.0 配置设备从NFS启动

以下操作均在Ubuntu 10.04 操作系统上进行。


1.NFS服务器安装配置


1.1配置portmap
sudodpkg-reconfigure portmap , 对Shouldportmap be bound to the loopback address? 选N


sudo gedit/etc/default/portmap 末行 OPTIONS=”-i127.0.0.1″改为OPTIONS=,即删除”-i127.0.0.1″


1.2配置hosts.deny为阻止所有链接
sudo gedit/etc/hosts.deny


文本末添加


### NFSDAEMONS


portmap:ALL


lockd:ALL


mountd:ALL


rquotad:ALL


statd:ALL


1.3配置hosts.allow添加允许链接的ip地址
sudo gedit/etc/hosts.allow


文本末加入


### NFSDAEMONS


portmap:192.168.0.


lockd:192.168.0.


rquotad:192.168.0.


mountd:192.168.0.


statd:192.168.0.


1.4重启portmapdaemon
sudo/etc/init.d/portmap restart


1.5配置NFS路径
安装nfs服务器


sudoapt-get install nfs-kernel-server


配置


sudo gedit/etc/exports


添加nfs路径:


/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/target/filesys192.168.0.1/24(rw,no_root_squash,no_all_squash,sync)


使用命令sudoshowmount -e查看nfs导出目录


显示 clnt-create : RPC :Program not registered


sudoexportfs -va 使exports文件生效


sudoexportfs -r更新


sudoshowmount 192.168.0.46 -e


显示


Export list for 192.168.0.46:


/nfsboot/filesys 192.168.0.*


1.6重启NFS服务器
sudo/etc/init.d/portmap restart


sudo/etc/init.d/nfs-kernel-server restart


1.7防火墙开放所有端口
请用如下命令暂时开放所有端口


sudoiptables -P INPUT ACCEPT


sudoiptables -P OUTPUT ACCEPT


或使用下列命令关闭防火墙


sudoiptables -F


1.8 NFS测试
使用命令


sudomount -t nfs 127.0.0.1:【解压路径】Release/Source/ipnc_rdk/target/filesys


在本地挂载nfs目录,如果没有错误,表示NFS已OK.

2.编译配置内核支持从NFS启动
切换到内核源码目录


cd/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/ti-davinci


2.1清除原来内核配置
makeARCH=arm CROSS_COMPILE=arm_v5t_le- mrproper


makeARCH=arm CROSS_COMPILE=arm_v5t_le- distclean


makeARCH=arm CROSS_COMPILE=arm_v5t_le- clean


2.2使用默认配置
makeARCH=arm CROSS_COMPILE=arm_v5t_le- davinci_dm368_ipnc_defconfig


makeARCH=arm CROSS_COMPILE=arm_v5t_le- checksetconfig


2.3配置内核
使用命令


makeARCH=arm CROSS_COMPILE=arm_v5t_le- menuconfig


进入内核配置:


修改


DeviceDrivers —>Network device support —> Ethernet (10 or100Mbit) —>


按空格,修改为


<*> Generic Media Independent Interface device support <*>TI DaVinci EMAC Support


修改


Filesystems —> Network File Systems —>


按空格,修改为:


[*] Provide NFSv3 client support


[*]Root file system on NFS


保存配置,退出。


2.4编译内核
方式1:


切换到ipnc目录:


cd/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc或cd..


使用下面命令进行内核编译


makelspbuild MAKE_TARGET=uImage


编译完成后,会自动将内核映像文件复制到tftp目录下。


方式2:


在linux内核源码目录下使用命令


makeARCH=arm CROSS_COMPILE=arm_v5t_le- uImage


编译完成后,内核映像文件uImage在arch/arm/boot目录下,需手动复制到tftp目录下。

3.NFS根文件系统配置
切换到nfs目录的父母录


cd/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/target


如果该目录下已经存在filesys文件夹,将其删除。


将cramfsImage_ipnc_dm368_2.0.0复制到当前目录下。


3.1基于已有的压缩的文件系统制作根文件系统
第一步:


mkdirtmpdir


sudo mountcramfsImage_ipnc_dm368_2.0.0 tmpdir -o loop


cd tmpdir


tar -cvf../cramfsImage_ipnc_dm368.tar ./ 将tmpdir中的内容打包放在其父目录下


cd ..


sudo umounttmpdir


rm -Rftmpdir


tmpdir目录是不可改写的,因为只读。所以要把它里面的东西导出到新的目录下。


第二步:


mkdir filesys


tar -xvfcramfsImage_ipnc_dm368.tar -C filesys


修改filesys目录中的内容,以符合自己的需要。


3.2基于已有的根文件系统制作cramfs压缩文件系统
切换到nfs目录的父母录


cd/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/target


mkcramfsfilesys cramfsImage_ipnc_dm368.cramfs


cramfsImage_ipnc_dm368.cramfs即为制作好的文件系统。

4.目标板uboot环境变量配置
配置如下


setenvserverip 192.168.0.46


setenvnetmask 255.255.255.0


setenvgatewayip 192.168.0.254


setenvipaddr 192.168.0.168


setenvethaddr 90:3D:5A:10:3D:52


setenvdnsip 222.172.200.68


setenvbootdelay 1


setenvnfshost 192.168.0.46


setenvrootpath /ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/target/filesys


使用静态ip启动内核


setenvbootargs ‘console=ttyS1,115200n8 noinitrd rwip=192.168.0.168:192.168.0.46:192.168.0.254:255.255.255.0:DM368_IPNC:eth0:offroot=/dev/nfsnfsroot=192.168.0.46:/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/target/filesys,nolockmem=46M’


使用dhcp启动内核


setenvbootargs ‘console=ttyS1,115200n8 noinitrd rw ip=dhcp root=/dev/nfsnfsroot=192.168.0.46:/ipnc_dev/DM36x_IPNC_DEV/2.0/Lab/ipnc/target/filesys,nolockmem=46M’


这里将参数nfsroot配置为$(nfshost):$(rootpath),nolock不能启动,原因未知。


ip参数的格式为ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>


client-ip:你正在使用的这块板子,你要为它设置的ip


server-ip:提供nfs服务的服务器的ip地址。如不需要NFS服务于板子,则此项可以空置


gw-ip:网关的ip地址,如果nfs与目标板在同一个网段内,则此项可以空置


netmask:子网掩码,如此项为空,则子网掩码为默认值255.255.255.0


hostname:你希望给目标板设置的主机名,在linux的shell中的如bash,命令行最开始有一个形如blacksword@laptop2:~ $这样的一个提示符,blacksword指当前的用户,而laptop2就是一个hostname.此项可以留空


device:如果目标板上仅一个网卡,且只接了一个PHY,同时电路的设计没有将PHY拉出两个地址来,则此项为空。如果不指有一个网卡,则可以指定要设置的ip地址是作用于哪一个网卡的。如指定给第一块网卡,则该参数为eth0.第二块为eth1,依此类推。


autoconf:


自动配置未明确指定参数的方式,可以是dhcp,rarp, bootp。如果不希望使用自动配置则可以使用off值来关闭 autoconf参数可以独立作用于ip参数,如ip=dhcp即表示由dhcp服务器给内核的ip参数提供所有数据。ip=off则表示所有参数都不配置,留待系统启动进行配置。


从tftp下载内核映像启动


setenvbootcmd ‘tftpboot 0x80700000 uImage_ipnc_DM368; bootm 0x80700000’


从flash复制内核启动


setenvbootcmd ‘nand read 0x82000000 0x700000 0xD00000;nboot 0x80700000 00×500000;bootm 0x80700000’


保存配置


saveenv


重启设备


reset

赞(0) 打赏
转载请注明出处:服务器评测 » APPRO DM368x IPNC 2.0 配置设备从NFS启动
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏