CentOS 7中解包打包Android(2.3之后)系统包system.img
昨天对平板进行刷机后发现有内置应用且字体图标过小,需要对system.img进行修改。于是下载了某大师和某助手对system.img进行修改,去掉了内置应用的同时又强制增加了推广app。钟爱纯净版的我,怎样忍受这种行为。于是就自己动手学习解包打包。
在Android 2.3版本之前,system.img使用的是yaffs文件系统,通过“file system.img”命令显示的结果是”VMS Alpha executable”,而Android 2.3之后,使用的ext4文件系统,通过执行file命令显示为data。我解包的system.img,Android系统版本为4.4.4,所以文件系统为ext4,需要用到的工具是simg2img和make_ext4fs。Android2.3版本之前用的工具是unyaffs和mkyaffs2image。
一、工具准备
下载simg2img和make_ext4fs后,增加可执行属性,确认可执行后,移动到/usr/bin/中。
chmod +x simg2img make_ext4fs #增加可执行属性
./simg2img #测试simg2img,确认可执行
./make_ext4fs #测试make_ext4fs,确认可执行
mv simg2img make_ext4fs /usr/bin #移动到/usr/bin/中,方便在系统各处调用。
二、解包system.img
查看system.img文件类型
file system.img

转换文件格式。
simg2img system.img system.img.ext4
稍等几分钟就会在当前目录下生成system.img.ext4文件。

查看system.img.ext4文件类型。
file system.img.ext4

创立挂载点,挂载system.img.ext4。
mkdir system #创立挂载点,也就是在当前目录下创立system文件夹
mount -t ext4 -o loop system.img.ext4 system/ #挂载system.img.ext4.
cd system #进入system目录
ll #查看目录
查看目录能看到以下目录结构(Android系统system目录结构),说明挂载成功,解包步骤完成,接下来可以根据需要直接修改system文件夹下面的内容。

三、重新打包system.img
打包步骤很简单,一条命令完事。退出到system的上级目录,执行下面这条命令。
make_ext4fs -s -l 1024M -a system system_new.img system
# -s:去掉空余的内容,生成的文件是实际大小,不加这个参数生成的文件和-l参数指定的大小。
# -l 1024M : 要刷机的Android分区的大小,参考值,比system.img大就行,一般分区都有这个大小,小了会出错。
# -a system 说明打包的是Android的system文件。

等待几分钟,system_new.img就打包好了。接下来重命名为system.img,替换刷机包中的system.img,正常刷机就可。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » CentOS 7中解包打包Android(2.3之后)系统包system.img