一、移植BusyBox
1、下载BusyBox的源代码
下载地址:http://www.busybox.net/downloads/,此处下载busybox-1.20.2.tar.bz2。
2、解压并进入目录
#tar -xvf busybox-1.20.2.tar.bz2
#cd busybox-1.20.2
3、修改Makefile中的体系结构ARCH和交叉编译器前缀CROSS_COMPILE
#VIM Makefile
CROSS_COMPILE = arm-linux-
ARCH = arm
4、配置BusyBox
#make menuconfig
其他选项都是一些Linux基本命令选项,自己需要哪些命令就编译进去,一般用默认的就可以了,配值好后退出并保存。
5、编译BusyBox
#make -j 2
6、安装
#make install
在BusyBox-1.20.2目录下可以找到_install子目录,这就是刚才的安装目录。
7、分析
#ls -l /bin
#ls -l _install/bin
二、加入必要的目录与文件
1、改_install为mini_rootfs
#mv _install mini_rootfs
#cd mini_rootfs
下面的操作都是在mini_rootfs目录里进行的。
2、创建必要的目录和文件
建立一个名为create_rootfs.sh的脚本文件
#vim create_rootfs.sh
内容见下载链接中的create_rootfs.sh文件;
执行该脚本以生成必要的目录与文件:
#source create_rootfs.sh
#rm create_rootfs.sh
3、拷贝交叉编译器的动态链接库到lib目录
#cp /usr/local/arm/arm-2009q3/arm-none/linux/gnueabi/libc/armv4t/lib/*so* lib -rdf
4、对lib目录下的动态链接库进行裁剪
#arm-none-linux-gnueabi-strip lib/*so*
5、修改脚本文件
内容详见下载链接中的S5PV210的根文件系统制作.PDF文件
三、构建根文件系统
1、获得mkyaffs2image工具的源码包
下载地址:http://fatplus.googlecode.com/files/yaffs2-source.tar
2、编译mkyaffs2image工具
#tar xvf yaffs2-source.tar
#cd yaffs2/utils
#make
#cd mkyaffs2image /usr/local/bin
3、制作根文件系统镜像
回到busybox那个目录:
#mkyaffs2image mini_rootfs rootfs.img
四、根文件系统镜像rootfs.img下载与烧写
下面的操作在u-boot上进行:
SMDKV210#nand erase 0xe00000 0xF200000
SMDKV210#tftp 0x40000000 rootfs.img
SMDKV210#nand write.yaffs 0x40000000 0xe00000 0x6aa340
五、用户管理
六、NFS配置
1、#cp /root/build_rootfs/busybox-1.20.2/mini_rootfs/ / -rdf
2、#vi /etc/exports
内容如下:
/mini_rootfs *(rw,sync,no_root_squash)
启动NFS服务器:
#service nfs restart
3、测试NFS服务器
#mount -t nfs 192.168.0.41:/mini_rootfs /mnt
其中192.168.0.41是你的虚拟机系统的IP地址
#ls /mnt
#umount /mnt
4、配置内核以支持NFS启动
详细文档及源码下载链接:http://download.csdn.net/detail/klcf0220/5759771