bootimg的详细介绍&使用
adb的强大之处在于可以在PC端直接操控手机,可以说是通用的工具!那么今天带来的这款工具的强大,估计会让爱好者灰常之兴奋,用好这款工具你就可以动手修改boot.img了,而不是简简单单的精简ROM或者美化美化加加字体等每个人都可以完成的工作!
个人常用功能
1、解包/打包boot.img/recovery.img
2、解包/打包ramdisk
3、解包data/system.img
4、解密/生成rle加密图片(开机第二屏图片,不是开机动画哦)
另外:还支持解包updata.app(本人未用过)
背景知识
一、Android手机的文件系统
Android手机的文件系统有许多存储器组成,以下是在adb shell下面的输出:
#
您首先应该要做的事情是使用您的recovery对您的ROM进行备份,以免操作失误照成数据的丢失!
二、boot和recovery映像的文件结构
boot和recovery映像并不是一个完整的文件系统,它们是一种android自定义的文件格式,该格式包括了2K的文件头,后面紧跟着是用gzip压缩过的内核,再后面是一个ramdisk内存盘,然后紧跟着第二阶段的载入器程序(这个载入器程序是可选的,在某些映像中或许没有这部分)。
boot的ramdisk映像是一个最基础的小型文件系统,它包括了初始化系统所需要的全部核心文件,例如:初始化init进程以及init.rc(可以用于设置很多系统的参数)等文件。
以下是一个典型的ramdisk中包含的文件目录列表:
│ default.prop
│ init
│ init.goldfish.rc
│ init.rc
│ init.swift.rc
│ initlogo.rle //开机第二屏图片
│ ueventd.goldfish.rc
│ ueventd.rc
│ ueventd.swift.rc
│
├─data
├─dev
├─proc
├─sbin
│ adbd
│
├─sys
└─system
recovery的ramdisk映像包含了一些额外的文件,例如一个叫做recovery的二进制程序,以及一些对该程序支持性的资源图片文件(当您按下home+power组合键的时候就会运行这个recovery程序)。典型的文件列表如下:
│ default.prop
│ init
│ init.rc
│ initlogo.rle //开机第二屏图片
│ ueventd.goldfish.rc
│ ueventd.rc
│ ueventd.swift.rc
│
├─data
├─dev
├─etc
│ recovery.fstab
│
├─proc
├─res
│ │ keys
│ │
│ └─images
│ icon_clockwork.png
│ icon_error.png
│ icon_installing.png
│ indeterminate1.png
│ indeterminate2.png
│ indeterminate3.png
│ indeterminate4.png
│ indeterminate5.png
│ indeterminate6.png
│ progress_empty.png
│ progress_fill.png
│
├─sbin
│ adbd
│ e2fsck
│ fix_permissions
│ killrecovery.sh
│ mke2fs
│ nandroid-md5.sh
│ parted
│ recovery
│ sdparted
│ tune2fs
│
├─sys
├─system
│ └─bin
└─tmp
三、system系统镜像的文件结构
请点击:Android系统文件夹结构解析
四、data、cache、sdcard
个人认为没有介绍的必要!