一般开发都事基于NFS,所以,Beagleboard-XM也不例外。
我的环境:Beagleboard-XM板子一块;laptop一台,一个USB移动硬盘,因为laptop硬盘不够大,所以,rowboat关于bb的代码和编译生成的文件系统均放在引动硬盘里面的一个分区里面。
挂载USB移动硬盘,有权限限制:
sudo umount 200-1
sudo /sbin/mount.ntfs /dev/sdb1 /media/200-1 -o rw,nosuid,nodev,uhelper=udisks,uid=1000,gid=1000,dmask=0022,fmask=0022
目录起码应该有755,文件有755的权限,不然可能有如下的问题
Init: cannot execve('/system/bin/keystore'): Permission denied
init: cannot execve('/system/bin/dbus-daemon'): Permission denied
其实这个事权限的问题,如果不是在外置的移动硬盘或者U盘上,直接进入NFS挂载的那个文件系统里面,chmod 777 某些bin文件就可以了,但是因为我的是移动硬盘,并且是ntfs的,所以,被限制了,所以,重新umount,然后mount上,给与足够的权限,NFS才可能正常工作。
NFS挂载分区:/media/200-1/tftpboot/rootfs/bb/froyo
froyo的代码编译过后,执行命令
“cp -a /media/200-1/lntsz/beagleboard/rowboat/froyo-dsp/froyo/out/target/product/beagleboard/root/* /media/200-1/tftpboot/rootfs/bb/froyo”
“rm -rf /media/200-1/tftpboot/rootfs/bb/froyo/system”
“mv /media/200-1/lntsz/beagleboard/rowboat/froyo-dsp/froyo/out/target/product/beagleboard/system /media/200-1/tftpboot/rootfs/bb/froyo”
“ln -s /media/200-1/tftpboot/rootfs/bb/froyo/system /media/200-1/lntsz/beagleboard/rowboat/froyo-dsp/froyo/out/target/product/beagleboard/system”
“cd /media/200-1/tftpboot/rootfs/bb/froyo”
编辑init.rc文件,把mkdir /system注释掉。
编辑笔记本上系统里面的/etc/exports 文件,在后面添加一行
/media/200-1/tftpboot/rootfs/bb/froyo *(rw,sync,no_root_squash,no_subtree_check)
最后重新启动NFS服务。
sudo /etc/init.d/nfs-kernel-server restart
BB的启动参数
touch bb
编辑bb文件,添加如下几行:
if fatload mmc 0 80200000 uImage
then
echo ***** Kernel: /dev/mmcblk0p1/uImage *****
fi
echo ***** RootFS: /dev/mmcblk0p2 *****
setenv bootargs 'console=ttyS2,115200n8 androidboot.console=ttyS2 mem=256M init=/init omap_vout.vid1_static_vrfb_alloc=y omapdss.def_disp=dvi omapfb.mode=dvi:720x480MR-16 mpurate=1000 root=/dev/nfs rw nfsroot=192.168.0.56:/media/200-1/tftpboot/rootfs/bb/froyo ip=192.168.0.59:192.168.0.1:255.255.255.0 rootdelay=1 rootwait'
bootm 0x80200000
然后执行命令
mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Beagleboard-xM boot script" -d bb boot.scr
最后把boot.scr件放到SD卡里面的boot分区,替换原来的boot.scr文件。
再未替换NFS文件系统的boot.src文件之前,一定先给BB设置固定IP:192.168.0.59,不要使用dhcp。接着把sd卡取出插到电脑,替换带有NFS的boot.src,插上网线,插上SD卡,重新启动BB,就可以开始NFS 开发了。
标签:NFS Beagleboard-XM boot.scr rowboat boot develop

沒有留言:
張貼留言