如何使用Odin解压缩,修改,打包和刷新`system.img.ext4`文件?

时间:2019-10-24 12:07:45

标签: linux root android-source samsung-mobile flashing

我有一个system.img.ext4.lz4文件,该文件与我的Samsung S10 5G(Qualcomm)设备兼容。我已经使用system.img.ext4命令从system.img.ext4.lz4中提取了unlz4 system.img.ext4.lz4文件。

我想玩它的内容。因此,我分两步做出了决定:

  1. Flash system.img.ext4未经修改

    • 使用tar -cvf AP.tar system.img.ext4命令,我创建了一个AP.tar文件。
    • 使用Odin3 v3.13刷新了AP.tar文件。
    • 成功闪烁。
  2. 带有修改的Flash system.img.ext4

a)修改

  • 使用simg2img system.img.ext4 system.img,您将获得一个名为system.img的原始图像文件
  • 使用mkdir system,创建目录以挂载system.img
  • 使用sudo mount -t ext4 -o loop system.img system/,您将获得system.img文件夹中system的所有文件
  • 具有ls -l system/init.rc注释权限:750
  • 使用sudo chmod 777 system/init.rc授予写权限
  • 使用sudo echo "#MODIFICATION " >> system/init.rcinit.rc中进行了一些修改
  • 通过sudo chmod 750 init.rcinit.rc重置为注明的权限

b)计算系统扇区大小

  • 使用tune2fs -l system.img | grep "Block size\|Block count",您将获得块大小和计数
  • 使用echo $((1553064 * 4096))将两个结果相乘。我有6361350144

c)包装

  • 使用sudo make_ext4fs -s -l 6361350144 -a system system_new.img sys/,您将获得system_new.img个具有所有更改的“ Android稀疏图像”
  • 使用sudo umount system卸载系统目录
  • 使用rm -fr system删除系统目录

d)焦油压缩

  • 通过rm system.img.ext4删除原始的system.img.ext4,请放心,您应该在lz4文件中备份它
  • 使用mv system_new.img system.img.ext4将system_new.img重命名为system.img.ext4,以使用Odin3 v3.13进行刷新
  • 使用tar -cvf AP.tar system.img.ext4,您将获得AP.tar,可以使用Odin3 v3.13进行刷新。
  • 它失败,并显示 FAIL! (验证)错误。

请提出如何解决此问题的建议? 我将非常感谢您提出的任何建议。

1 个答案:

答案 0 :(得分:0)

您无法解决此错误。原因很简单。这是修改后的.IMG文件。由于您拥有Qualcomm Snapdragon,因此不允许将自定义/修改的软件闪存到手机上。原因是因为它的引导加载程序已锁定。您没有办法解锁它。一个叫做AP.IMG的代码之所以起作用,是因为它根本没有被修改。