1. 建立目录
用gedit建立一个叫create_rootfs_bash的可执行脚本文件。
命令:
gedit create_rootfs_bash
拷贝如下内容到此文件内:
#!/bin/sh
echo "------Create rootfs directons start...--------"mkdir rootfs
cd rootfs
echo "--------Create root,dev....----------"
mkdir root dev etc boot tmp var sys proc lib mnt home usr bin
mkdir etc/init.d etc/rc.d etc/sysconfig
mkdir usr/sbin usr/bin usr/lib usr/modules
echo "make node in dev/console dev/null"
mknod -m 666 dev/console c 5 1
mknod -m 666 dev/null c 1 3
mkdir mnt/etc mnt/jffs2 mnt/yaffs mnt/data mnt/temp
mkdir var/lib var/lock var/run var/tmp
chmod 1777 tmp
chmod 1777 var/tmp
echo "-------make direction done---------"
保存后,赋予其可执行权限:
chmod +x create_rootfs_bash
执行后生成跟文件系统的目录:
./create_rootfs_bash
2. 安装开发板模块
源代码下编译模块,并指定安装模块路径
make modules ARCH=arm CROSS_COMPILE=arm-linux-
make modules_install INSTALL_MOD_PATH=/home/dhma/rootfs
安装完以后会在rootfs/lib/目录下出现相应的模块出现。
3. 配置busybox
进入busybox目录执行make menuconfig
选择Build options ->build busybox as a static binary
Cross Compile peifix :输入交叉编译器的路径。
我的是 /usr/local/arm/4.5.1/bin
Installation Options->busybox installation perfix 选择根文件系统目录
我是/home/dhma/rootfs
然后 make 编译 make install安装
这样 rootfs/bin/下就会出现很多链接文件。
4.配置内核
配置内核支持 Root file system on NFS
uboot命令行下输入 :setenv bootargs root=/dev/nfs nfsroot=192.168.1.10:/home/dhma/rootfs ip=192.168.1.20 rw console=ttySAC0,115200
别忘了 save一下
编辑/etc/exports文件,把跟文件目录输出
gedit /etc/exports
加上一句 :/home/dhma/rootfs/ 192.168.1.*(rw,sync,no_root_squash)
建立/etc/inittab文件,内容如下
#etc/inittab
::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r
建立/etc/fstab文件,内容如下
#device mount-point type option dump fsck order
proc /proc proc defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
none /tmp ramfs defaults 0 0
sysfs /sys s ysfs defaults 0 0
mdev /dev ramfs defaults 0 0
测试一下是否可以挂载
mount -t nfs 192.168.1.10:/home/dhma/rootfs /mnt