深刷提取备份刷入(救砖)教程

本文档适用于大多数安卓设备,特别是基于MTK和高通平台的设备。请注意,高通设备在9008模式下大多需要拆机寻找工程模式触点(Test Point)。

一、工具和备份系统准备

二、通过GSI提取boot获取Root权限 (Userdebug版本系统)

提示:在操作之前需要用 Treble Check底层探测器查看是否支持 Project Treble 功能。

在开始之前,必须先分辨清楚设备的分区类型,以便提取正确的文件进行修补。

1. 准备软件

2. 了解分区类型

重要警告:A-only分区刷入GSI后会覆盖原系统,在刷入之前要注意备份原系统及重要数据!

  • PT功能: Project Treble 安卓通用镜像标准。支持的设备可以刷入GSI。安卓8.0引入,安卓9.0强制要求支持。
  • A-only分区: 不支持无缝系统更新 (AB System Updates),使用 boot.img 来获取Root。
  • AB/VAB分区: 支持无缝系统更新,系统有两个槽位 (A和B)。需要使用 boot_a.imgboot_b.img 来获取Root。
  • AB/VAB分区 (出厂安卓13+): 支持无缝系统更新,且启动流程变更。需要使用 init_boot_a.imginit_boot_b.img 来获取Root。
  • SAR (System-as-root): 如果设备支持SAR,即便它不是AB分区,刷入GSI时也需要下载带有 "ab" 标识的GSI刷机包。

3. 刷入GSI并获取临时Root

确保设备已解锁Bootloader。然后重启到Bootloader模式,执行以下命令:

刷入GSI系统:(GSI.img为下载解压出来的gsi系统)

fastboot boot system GSI.img

清除用户数据:

fastboot erase userdata

进入GSI系统后,打开USB调试,使用ADB命令行获取临时的root权限:

adb shell su

※ 重点:提取分区命令 ※

  • 不支持无缝更新 (A-only),需要提取 boot
  • 支持无缝更新 (AB/VAB),需要提取 boot_aboot_b
  • 支持无缝更新且出厂安卓13及以上,需要提取 init_boot_ainit_boot_b

eMMC 闪存设备

获取分区位置的`by-name`目录:

find /dev/block/platform/ -name 'by-name' -type d

该命令会返回一个路径,不同机型路径可能不同。进入该路径:

cd [上一步返回的路径]

查看boot分区对应的块设备(通常以 mmcblk 开头):

ls -l boot

UFS 闪存设备

路径通常是固定的,直接进入即可:

cd /dev/block/by-name/

查看boot分区对应的块设备(通常以 sd 开头):

ls -l boot

执行提取

确认分区实际位置后,使用 dd 命令导出分区文件到手机的内置存储。命令格式如下:

dd if=[分区实际位置] of=[要保存的位置/文件名]

例如,提取一个AB分区的 boot_a

dd if=/dev/block/sda56 of=/sdcard/boot_a.img

4. 修补并刷入分区

将提取出的 .img 文件(如 boot.img, init_boot.img 等)拷贝到电脑,使用Magisk或KernelSU等工具进行修补,然后将修补后的文件刷回设备。以下提供两种刷入方式。

Fastboot模式刷入

重启到fastboot模式:

adb reboot bootloader
  • A-only分区:
    fastboot flash boot [修补后的文件].img
  • AB分区:
    fastboot flash boot_a [修补后的文件].img fastboot flash boot_b [修补后的文件].img
  • AB分区 (安卓13+):
    fastboot flash init_boot_a [修补后的文件].img fastboot flash init_boot_b [修补后的文件].img

DD命令刷入 (开机状态)

将修补后的文件传回手机,进入ADB Shell并获取root权限 (su)。然后从哪里提取的就刷回哪里:

dd if=[修补后的文件路径] of=[boot分区的实际位置]

这种方式不区分分区类型,只需确保源和目标正确即可。

三、通过DSU Sideloader侧载GSI提取boot

DSU Sideloader应用可以将GSI以动态系统更新的方式安装到手机。重启后会进入一个临时的GSI系统(类似PE),我们可以在这个系统里提取分区。再次重启则会回到原版系统。

DSU Sideloader 下载:点击下载

  1. 将下载好的GSI文件解压后放入手机存储。
  2. 打开DSU Sideloader应用,选择GSI文件路径后直接安装。
  3. 点击"查看命令"开始部署,部署完成后,在系统通知栏中点击"重启"切换到GSI系统。
  4. 进入GSI后,按照上方"提取分区命令..."的步骤进行提取、修补和刷入操作。
  5. 操作完成后,在通知栏中再次点击"重启",即可返回原版系统。
  6. 回到原版系统后,安装Magisk或KernelSU应用即可获得Root权限。

四、刷写全量系统包注意事项

A-only 分区机型

这类设备没有 super 动态分区,可以直接在 fastboot 模式下刷入 system.img

AB 分区(动态分区)机型

system, vendor 等小分区被合并到了一个名为 super.img 的大分区中。

  • 刷写整个 super.img 大分区,请在 fastboot 模式下进行。
  • 如果需要单独刷写 system, vendor 等小分区,必须进入 fastbootd 模式(也称为用户空间fastboot)进行。

进入fastboot/fastbootd模式的命令

开机状态:

  • 进入fastboot模式:
    adb reboot bootloader
  • 进入fastbootd模式:
    adb reboot fastboot

fastboot状态:

  • 从fastboot进入fastbootd模式:
    fastboot reboot fastboot