根文件系统制作过程
一.创建文件系统的基本目录:
可运行以下脚本自动创建:
#!/bin/sh echo "------Create rootfs start--------" mkdir rootfs cd rootfs echo "--------Create root, dev ....----------" mkdir root dev etc boot tmp var sys proc lib mnt home usr 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" sudo mknod -m 600 dev/console c 5 1 sudo mknod -m 600 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 "-------Create done---------"
二.加入配置文件(inittab rcS ....)
三.编译安装Busybox(嵌入式开发中的瑞士军刀), 步骤如下:
1) make menuconfig
2) 进入busybox setting->build options,开启build static binary静态编译
3) install options 选择don't use /usr以免影响到主机的文件系统
4) busybox installation prefix 选择rootfs
5) build compile 设置为arm-linux-
6) make
7) make install
四.挂载文件系统(NFS方式):
1.配置好主机NFS服务器: 修改配置文件/etc/exports为:xx/x/x(rootfs的地址) *(rw,sync,no_root_squash) 2.配置bootloader的启动参数: console=ttySAC0,115200 init=/sbin/init root=/dev/nfs rw nfsroot=(开发板的IP):(rootfs的地址) ip=(PC的IP):(开发板的IP):(网关):255.255.255.0::eth0:off
五.挂载文件系统(Jffs2方式)
编译安装mtd-util工具:
安装成功后,在mtd文件夹中找到mkfs.jffs2工具并使用以下命令(我当初用的这个命令,具体参数自行修改)生成jffs2文件.
mkjffs2 -n -s 2048 -e 128KiB -d rootfs -o rootfs.jffs2 --pad=0x14a0000 -r, -d, --root=DIR 指定要做成image的源文件夹 -s, --pagesize=SIZE 节点页大小(默认: 4KiB) -e, --eraseblock=SIZE 设定擦除块的大小为(默认: 64KiB) -p, --pad[=SIZE] 用16进制表示所要输出文件的大小
OK,到这里一份热腾腾的系统映像就制作好了,然后设置Linux支持Jffs2,再写入NandFlash文件系统分区.搞定(如果遇到问题可以与我交流 ^_^).
相关推荐
dongfangxiaozi 2020-02-12
pointfish 2019-12-12
csdnyasin 2019-12-12
昭君出塞 2010-06-14
hcr 2011-02-08
Will0 2015-07-23
Astray 2015-07-21
不断攀登的梦想 2011-09-25
ShadowBurn 2011-11-04
downtown 2012-05-28
aotou 2012-05-13
wenjs00 2012-04-28
linux爱好者 2012-04-28
ice00 2012-04-28
Summer的小屋 2015-07-23
bluecarrot 2015-07-21
展翅飞嵌入式之路 2015-07-17
海绵宝宝的欧尼 2010-07-15