android文件系统制作

第一种就是通过build android source得到,source build结束之后,会产生大部分的android文件系统,位置在你的android source build目录下的out/target/product/generic/。其中root/就是你的root fs, 你需要将system/拷贝到root/system下,这样root/就是你得到的一个基本的文件系统。但是,现在root/dev下面是空的,所以,我们需要创建所需要的device, 你可以到系统 /dev下, 把所有的device打一个包,拷贝到 dev下面(最省事的做法);或者使用mknod来自己建所需要的device。

 第二种方法,是通过android镜像文件来得到文件系统。

android源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中,是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数 据,emulator加载这3个映像文件后,会把和 userdata分别加载到 ramdisk文件系统中的system和 userdata目录下。 ramdisk.img system

 所以,可以通过下面的方法来建立我们自己的文件系统:

1.       从android SDK的SDK/ platforms/android-1.5/images下面得到Ramdisk.img

2.       解开 ramdisk.img

$ mv ramdisk.img ramdisk.cpio.gz

$ gzip -d ramdisk.cpio.gz

$ mkdir rootfs

$ cd tmp

$ cpio -i -F ../ramdisk.cpio

*** 此时 rootfs 目录下的就是 ramdisk.img 的文件和目录了,也就是你的root file system根目录了。

 3.      启动android模拟器,从模拟器里面取出data/ 和 system/两个文件夹

4.      将这两个文件夹拷贝到rootfs里面,覆盖掉里面相应的那两个同名文件夹。

5.      最后一步,同第一种方法一样,创建dev/,这里不再赘述

 

首先先给andriod装上busybox,方法如下:

http://blog.csdn.net/heltstar/article/details/7478978

接下来创建tarball for /system and /data

#/data/busybox/busybox tar cvf /data/data.tar /data

#/data/busybox/busybox tar cvf /data/system.tar /system

 

最好,提取

adb pull /data/system.tar system.tar

adb pull /data/data.tar data.tar

最好需要将提取出的tar文件转换为img文件,这时候就要用到mkyaffs2image工具了。

首先,编译yaffs2镜像制作工具:mkyaffs2image

下载:http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/

//点击左下角的 Download tarball 下整个tar包

解压,进入utils目录,编译

生成 mkyaffs2image 及 mkyaffs

命令格式

#./mkyaffs2image system/ system.img


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值