返回顶部
首页 > 资讯 > 精选 >Android super.img的解包和重新组包
  • 515
分享到

Android super.img的解包和重新组包

androidsuper解包动态分区打包super.img 2023-08-16 17:08:40 515人浏览 泡泡鱼
摘要

Android super.img的解包和重新组包 Android10开始使用动态分区,system、vendor、 odm等都包含在super.img里面,可以按如下方式对super.img进行解包和组包。 super.img解包 sup

Android super.img的解包和重新组包

Android10开始使用动态分区,system、vendor、 odm等都包含在super.img里面,可以按如下方式对super.img进行解包和组包。

super.img解包

super的解包需要工具lpunpack,但是默认没有编译,源码目录位于:system/extras/partition_tools/ ,需要手动编译生成;
在android根目录下执行

make lpunpack

编译后生成 out/host/linux-86/bin/lpunpack

开始解包:
第一步,格式转换,转化为ext4

simg2img super.img super_ext4.img

第二步,创建目录super_ext4/ 存放解包后的文件

mkdir super_ext4

第三步,解包super_ext4.img

out/host/linux-86/bin/lpunpack       super_ext4.img   super_ext4/

解包后在super_ext4/存放着是哪个完整的system.img vendor.img product.img 是ext4格式的,也可以通过mount挂载为文件目录

打包super.img

打包需要的工具lpmake,工具在out/host/linux-86/bin/lpmake
第一步,确认各个img的大小
上面解包出来super_ext4目录下的img文件,需要重新打包成super.img,在super_ext4/目录下执行

@sys2_206:~/5_Android11_sdk_78/rockdev/Image-rk3568_r/super_ext4$ stat -c '%n %s' *odm.img 626688product.img 213348352system_ext.img 123666432system.img 980586496vendor.img 315723776

第二步,开始打包super.img
按如下命令打包

out/host/linux-86/bin/lpmake \--metadata-size 65536 --super-name super \--metadata-slots 2 \--device super:3263168512 \--group rockchip_dynamic_partitions:3258974208 \--partition system:readonly:980586496:rockchip_dynamic_partitions --image system=out/target/product/rk3568_r/system.img \--partition system_ext:readonly:123666432:rockchip_dynamic_partitions --image system_ext=out/target/product/rk3568_r/system_ext.img \--partition vendor:readonly:315723776:rockchip_dynamic_partitions --image vendor=out/target/product/rk3568_r/vendor.img \--partition product:readonly:213348352:rockchip_dynamic_partitions --image product=out/target/product/rk3568_r/product.img \--partition odm:readonly:626688:rockchip_dynamic_partitions --image odm=out/target/product/rk3568_r/odm.img \--sparse \--output out/target/product/rk3568_r/super.img

这个命令可以在编译android的时候通过编译log获取,log保存在out/verbose.log.gz中,可以通过如下命令显示所有log,然后在里面找lpmake

gzip -cd out/verbose.log.gz|less

来源地址:https://blog.csdn.net/weixin_43245753/article/details/131071766

--结束END--

本文标题: Android super.img的解包和重新组包

本文链接: https://www.lsjlt.com/news/371844.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作