解包system.img, cache.img,修改并重新打包

这篇博客详细介绍了如何在Linux环境下解包三星手机官方线刷包中的system.img和cache.img,将其转换为ext4格式,进行修改,然后使用make_ext4fs工具按需重新打包。过程包括解压tar包、转换文件格式、挂载并修改内容,以及最后的打包步骤。此外,还提到odin刷入包含cache.img的tar包会引导手机进入recovery模式,并可以通过修改cache/recovery/command实现特定效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,解包

三星的galaxy s2/S3/note等手机的官方odin线刷包是tar压缩,里面的system.img与cache.img等如果在linux下用file命令看,都是data格式。所以解包成有如下几个步骤

> tar -xvf KIES_HOME_I9300ZSDLK4.tar  解压tar包

simg2img cache.img cache.img.ext4 从data格式转成ext4格式

> mkdir tmp 新建临时文件夹

> sudo mount -o loop cache.img.ext4 tmp 将ext4文件挂载到tmp目录

2,按照需要修改tmp目录中的内容

3,打包
先ls -l cache.img.ext4看大小,假设是1073741824,这个参数后边用到。

> make_ext4fs -s -l 1073741824 -a cache new_cache.img ./tmp

-s是个很重要的参数,不加的话生成的new_cache.img的大小直接就是1073741824(1个G),加上的话是按需生成。

-l刷到机器后的分区大小,-a挂载点(cache.img开机时会挂载到/cache),new_cache.img输出文件名,/tmp文件内容。

上述的simg2imgmake_ext4fs是android自带的工具,如果有android源码而且编译通过的话, 这些工具可以在/out/host/linux-x86/bin中找到。

=================================
附赠小知识,odin在刷tar包的时候,如果tar包里面有cache.img,刷机成功后手机会重启到recovery模式,然后recovery将会解析cache/recovery/command命令来执行。修改这个command文件可以达到很多有趣的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值