感谢本文的作者:Alansj, DarkriftX, RyeBrye, Will, Try OP9, Tonyb486, Timmmm, Lxrose还有好多不知名的作者们在wiki上的不懈努力。
来源:http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-Pack_Boot_Images
目录1、背景知识
2、boot和recovery映像的文件结构
3、对映像文件进行解包、编辑、打包的常规方法
3.1、另一种解包、编辑、打包的方法
4、将新的映像刷回到手机
5、解包、编辑、打包为我们带来了什么
6、本文讲的内容与使用update.zip刷机包不是一码事
正文
1、背景知识
Android手机的文件系统有许多存储器组成,以下是在adb shell下面的输出:
#cat
/
proc
/
mtd
dev: size erasesize name
mtd0: 00040000 00020000 " misc "
mtd1: 00500000 00020000 " recovery "
mtd2: 00280000 00020000 " boot "
mtd3: 04380000 00020000 " system "
mtd4: 04380000 00020000 " cache "
mtd5: 04ac0000 00020000 " userdata "
dev: size erasesize name
mtd0: 00040000 00020000 " misc "
mtd1: 00500000 00020000 " recovery "
mtd2: 00280000 00020000 " boot "
mtd3: 04380000 00020000 " system "
mtd4: 04380000 00020000 " cache "
mtd5: 04ac0000 00020000 " userdata "
在本向导中,我们主要描述对"recovery"和"boot"的存储设备进行操作;"system"存储设备保存了android系统目录的所有数据(在系统启动后会挂载到“system/”目录);“userdata”存储设备将保存了android数据目录中的所有数据(在系统启动后会挂载到“data/”目录,里面是会有很多应用数据以及用户的preference之类的配置数据)。
从上面的输出可以看出来,recovery和boot分区对应着/dev/mtd/mtd1和/dev/mtd/mtd2,在你您开始做任何修改之前一定要做两件事情,第一件事情,一定要先对这两个分区进行备份。
可以使用如下命令进行备份: