CentOS 7中解包打包Android(2.3之后)系统包system.img

作者 : 开心源码 本文共1269个字,预计阅读时间需要4分钟 发布时间: 2022-05-12 共135人阅读

昨天对平板进行刷机后发现有内置应用且字体图标过小,需要对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

CentOS 7中解包打包Android(2.3之后)系统包system.img

转换文件格式。

simg2img system.img system.img.ext4

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

CentOS 7中解包打包Android(2.3之后)系统包system.img

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

file system.img.ext4

CentOS 7中解包打包Android(2.3之后)系统包system.img

创立挂载点,挂载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文件夹下面的内容。

CentOS 7中解包打包Android(2.3之后)系统包system.img

三、重新打包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文件。

CentOS 7中解包打包Android(2.3之后)系统包system.img

等待几分钟,system_new.img就打包好了。接下来重命名为system.img,替换刷机包中的system.img,正常刷机就可。

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

发表回复