制作ext2根文件系统
Posted zhengmeifu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了制作ext2根文件系统相关的知识,希望对你有一定的参考价值。
2.构建文件系统(部分需要root权限)
2.1.mkdir rootfs (后面文件系统就挂载在这里)
2.2.dd if=/dev/zero of=rootfs.ext2 bs=1k count=512000(制作500MB大小的根文件系统,实际文件系统空间不能超出这个范围)
2.3.losetup /dev/loop0 rootfs.ext2 (如果loop0已被使用,可以使用loop1等。)
2.4.mke2fs -m 0 /dev/loop0 512000
2.5.mount -t ext2 /dev/loop0 ./rootfs/
接下来进入rootfs/目录,可以看到里面已经有了一个lost+found目录.在rootfs/目录中添加相关的文件和目录,完成根文件系统的构建.
以下步骤为把根文件系统拷贝到./rootfs文件夹下,若已经制作好,可以直接跳到2.11步骤。
2.6.cp –avrf (busybox目录)/_install/* rootfs
2.7.cp –avrf (busybox目录)/example/bootfloppy/etc rootfs
etc里面的是启动init相关的设置,这里以最简单来设置,同时修改ect下inttab,保留前2行,如下
::sysinit:/etc/init.d/rcS
::respawn:-/bin/sh
2.8.建立剩下需要的文件夹mkdir lib dev proc
2.9.复制lib库,这个要简单的话直接复制板子提供的文件系统里的lib即可,我就是直接复制的.如果没有,则需要拷贝交叉编译器中的uclibc库,进入交叉编译器的lib目录,然后拷贝必要的库.
2.10.创建dev库,在busybox目录/example/bootfloppy下有一个mkdevs.sh,
sh mkdevs.sh rootfs/dev/
可以用它来快捷建立需要的设备.也可以根据需要来使用mknod建立.
至此,最基本的基于ext2的根文件系统制作完成~
2.11打包压缩
umount /dev/loop0
losetup -d /dev/loop0
gzip -v9 rootfs.ext2
最后制作出来的rootfs.ext2.gz就是需要的了.
亲亲台宝: http://qinqintaibao.taobao.com以上是关于制作ext2根文件系统的主要内容,如果未能解决你的问题,请参考以下文章
[架构之路-30]:目标系统 - 系统软件 - Linux OS根文件系统rootfs的概念组成制作以及用busybox制作根文件系统