您的位置:首页 > 运维架构 > Shell

【转】如何解包分析Gphone的文件系统

2010-06-24 17:06 197 查看
为了要分析G1的文件系统,用实际的手机上的文件系统来分析最有说服力。所以如何来提取的解包分析Gphone的文件系统呢?通过网上查找资料,很容易得到解决方法!

一、提取镜像文件。

要提取镜像文件,你同手机的超级终端连接必须得有root权限。也就是你用"adb shell"登录手机后的提示符为“#”,如果没有,你就运行su命令来获取。但是没有刷过机的一般没有这个权限。我的G1一到手就是刷上安卓网的2.2系统的,所以本上就有Root权限。

先在G1上插入SD卡,然后把G1和电脑通过USB相连。下载SDK,解包后,通过shell在tools目录下运行:

sudo ./adb kill-server

sudo ./adb shell
* daemon not running. starting it now *
* daemon started successfully *
# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00040000 00020000 "misc"
mtd1: 00500000 00020000 "recovery"
mtd2: 00280000 00020000 "boot"
mtd3: 05a00000 00020000 "system"
mtd4: 01e00000 00020000 "cache"
mtd5: 059c0000 00020000 "userdata"
mtd6: 10000000 00020000 "msm_nand"
# cat /dev/mtd/mtd1 > /sdcard/mtd1.img
# cat /dev/mtd/mtd2 > /sdcard/mtd2.img

这样 recovery和boot镜像都在你的SD卡上了。

二、释放镜像中的文件

以上提取的两个文件,其实内容是差不多的,但是 recovery是在boot被破坏时恢复系统用的,所以进入 recovery不会进入GUI,而是一个字符的恢复模式,并且比boot多了恢复时用的程序,这些对比我会在以后写出。因为这两个镜像差不多,所以解压也是一样。释放镜像要使用以下小工具:split_bootimg.pl 。将镜像和以上四个工具放在同一个文件夹下,然后解压。

解压方法:

./split_bootimg.pl boot.img
mkdir ramdisk
cd ramdisk
gzip -dc ../boot.img-ramdisk.gz | cpio -i
cd ..

这样,在这个文件夹下,你会看到

ramdisk文件夹,就是释放出的启动用的ramdisk。

boot.img-kernel,就是系统的Linux内核了。

明天对比recovery和boot镜像的不同。

后天介绍镜像的制作和如何刷机。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/tekkamanitachi/archive/2009/06/23/4292479.aspx

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐