APatch 中文文档 下载 App

MIUI / HyperOS 用户特别注意 — 自动备份原厂 boot 的缺失

问题背景

在所有主流 root 方案里,Magisk 有一个贴心设计——修补 boot.img 时,会自动把原厂 boot.img 备份一份(放在 /data/adb/magisk/ 下)。APatch 没有这个功能。

对于 MIUI / HyperOS 用户,这个差异会导致 OTA 更新时的麻烦。

为什么 MIUI 特别敏感

MIUI / HyperOS 的 OTA 更新有严格的校验机制——它会检查 boot 分区的完整性:

  1. OTA 更新包下载完成后,系统会检查当前 boot 分区
  2. 发现 boot 分区被修改过(被 APatch 修补了),校验不通过
  3. OTA 提示"系统分区已修改,无法增量更新"
  4. 只能被迫下载完整 OTA 包(几个 GB,比增量包大很多)

Magisk 用户遇到同样的校验失败后,可以用 Magisk 自动备份的原厂 boot 快速恢复再 OTA。APatch 用户因为没有自动备份,恢复原厂 boot 就多了一步——需要手动准备好原厂 boot。

解决方案

方案一:OTA 前手动恢复原厂 boot(推荐)

OTA 更新前,先刷回原厂 boot,再 OTA,再重新修补:

# 1. 刷回原厂 boot
adb reboot bootloader
fastboot flash boot stock-boot.img
fastboot reboot

# 2. 在系统里执行 OTA 更新(正常流程)
# 3. OTA 完重启后,APatch 管理器里执行"安装到未使用槽位"(会自动修补新槽位)
# 或者手动修补新的原厂 boot.img

OTA 恢复原厂 boot 后,校验通过,增量更新包就能用了。

方案二:直接用 OTA 保 root 功能

如果你准备了新系统版本的原厂 boot.img,可以跳过恢复原厂这步,直接用 APatch 管理器的"安装到未使用的槽位(OTA 后)"功能——它本质上就是在新槽位上修补原厂 boot。

关键是你要有新版本系统的原厂 boot.img,而不是旧版本的。这个可以从 OTA 更新包里提前提取。

方案三:忍受全量 OTA 包

如果上面两种方案都嫌麻烦,就让 MIUI 用全量包更新——缺点是下载慢(几个 GB)、安装时间长、更新完还得重新修补 boot。

具体操作建议

如果你是 MIUI/HyperOS 用户,建议把这些操作记下来:

  1. APatch 安装好后,立刻备份原厂 boot.img 到电脑上(不要只放手机上)
  2. 每次 OTA 前,确认能拿到新版本的原厂 boot.img(从 OTA 增量包里提取,或等完整刷机包出来)
  3. OTA 时要么先恢复原厂 boot 再 OTA,要么直接用"安装到未使用槽位"功能
  4. OTA 完如果开不了机,先刷回原厂 boot 排查

关于开发版

如果你用的是 MIUI 开发版或 HyperOS 开发版,强烈建议每次 OTA 前先恢复原厂 boot——开发版更新频率高、boot.img 变化大,直接修补旧版本 boot 刷到新系统上很容易出问题。