文档详情

根文件系统实验指导.doc

发布:2017-08-19约1.89万字共15页下载文档
文本预览下载声明
嵌入式系统根文件系统制作 一、主机环境?Linux vm-dev 2.6.9-42.EL RedHatEL4, VMWare6.0.3; ?gcc version 3.4.6(Red Hat 3.4.6-3) Thread model: posixgcc version 3.4.6 ?所需源文件:?busybox-1.12.2.tar.bz2; 二、用Busybox创建nfs文件系统 1、解压busybox-1.12.2.tar.bz2,路径为[root@vm-dev rootfs]# ls busybox-1.12.0.tar.bz2 [root@vm-dev rootfs]# tar -vxjf busybox-1.12.2.tar.bz2 [root@vm-dev rootfs]# cd busybox-1.12.2 [root@vm-dev busybox-1.12.2]# pwd /opt/develop/lyj/common/porting/rootfs/busybox-1.12.2 [root@vm-dev busybox-1.12.2]# vi Makefile [root@vm-dev busybox-1.12.2]# 修改Makefile中的ARCH和CROSS_COMPILE与本机的路径一致: CROSS_COMPILE ?= arm-linux- ... ARCH ?= arm 2、编译busybox。先make menuconfig,修改以下: [root@vm-dev busybox-1.12.2]# make menuconfig Busybox Settings ????Build Options ????????[*] Build BusyBox as a static binary (no shared libs) ????????//直接编译成静态库,省事点 ????????(/opt/crosstool/bin/arm-s3c2410-linux-gnu-) Cross Compiler prefix ????????//这里和Makefile里保持一致,应该写一处就行了 ????Installation Options ????????[ ] Dont use /usr ????????//使用usr目录Busybox Library Tuning [*] Fancy shell prompts //一定要选上,否则很多转意字符无法识别 Shells ????Choose your default shell (ash) ????//这里选择shell为ash,应该是默认选中的 ???????? ash ????????//把ash这档的选项全部选上Miscellaneous Utilities [ ] inotifyd //不选 保存退出,直接make,make install。 [root@vm-dev busybox-1.12.2]# ls _install/ bin linuxrc sbin usr [root@vm-dev busybox-1.12.2]# 3、用shell脚本创建根文件系统的目录结构,并在想要建立根文件系统的地方运行此脚本。我是用root用户登陆的,直接创建了设备节点。[root@vm-dev root_stand]# cat build_fs.sh #!/bin/sh echo makeing rootdir mkdir rootfs cd rootfs echo makeing dir: bin dev etc lib proc sbin sys usr mkdir bin dev etc lib proc sbin sys usr #8 dirs mkdir usr/bin usr/lib usr/sbin lib/modules #Dont use mknod, unless you run this Script as mknod -m 600 dev/console c 5 1 mknod -m 666 dev/null c 1 3 echo making dir: mnt tmp var mkdir mnt tmp var chmod 1777 tmp mkdir mnt/etc mnt/jiffs2 mnt/yaffs mnt/data mnt/temp mkdir var/lib var/lock var/log var/run var/tmp chmod 1777 var/tmp echo making dir: home root boot mkdir
显示全部
相似文档