Magisk 刷入失败?清除数据前先诊断 boot 镜像
补丁后出现开机循环,是诊断问题,不是清除数据的问题。常见出错点有六种,症状通常能告诉你是哪一种。

刷入 Magisk 后无法开机,是诊断问题,不是重置问题。常见原因有六种,你看到的症状通常能缩小到一两种,而这些原因清除数据无法解决其中任何一种。在考虑任何破坏性操作之前,先照下面的排除表逐项检查。
六种可能的原因
这些只是候选项,不是定论。可能同时有多个原因,具体是哪个取决于你的设备、固件版本和你刷入的内容。
- boot 镜像来自错误的版本。 镜像所属的固件与设备上安装的不一致,哪怕只差一个安全补丁级别也不行。
- 补丁打错了分区。 有些设备的 ramdisk 在
boot中,有些在init_boot中。打错分区会导致设备无法开机。 - 未满足验证启动或 vbmeta 的要求。 设备的验证链拒绝了被修改的镜像,或者 vbmeta 状态与所刷入的内容不匹配。
- Bootloader 处于锁定状态,或被重新锁定。 锁定的 Bootloader 不会加载被修改的 boot 镜像,对其刷入还会产生别的报错。
- 槽位错误。 在 A/B 设备上,镜像被刷到了非活动槽位,或者活动槽位在两次操作之间发生了变化。
- 模块或开机后的冲突。 补丁生效了,设备也能启动,但开机后运行的某个东西把系统搞崩了。
注意这个列表里没有什么:你的用户数据。这六种原因都不源于 data 分区,擦除它也解决不了其中任何一种。
原因排除表
找到与你实际所见相符的那一行。
| 你看到的现象 | 更可能是 | 可能性较低 | 先检查什么 |
|---|---|---|---|
fastboot flash 返回错误并拒绝执行 | Bootloader 已锁定、分区名错误、工具或驱动问题 | 镜像内容问题 | 完整读一遍报错文本,通常会直接说明原因 |
| 刷入成功,设备停在 Logo 界面,始终不出开机动画 | 镜像版本错误、补丁分区错误、验证被拒绝 | 模块冲突 | 先核对版本,再看 boot 还是 init_boot |
| 刷入成功,设备显示验证或完整性警告后停住 | vbmeta 或验证启动状态不匹配 | 模块冲突 | 你的具体机型对 vbmeta 的要求 |
| 刷入成功,开机动画播放后反复重启 | 模块冲突,或补丁只部分生效 | Bootloader 已锁定 | 禁用模块后开机 |
| 起初能正常开机,装了某个模块后开始循环重启 | 显然是模块冲突 | 此列表中的其他所有原因 | 移除模块,而不是 root |
| 设备启动后仍是之前的状态,好像什么都没变 | 刷入了非活动槽位 | 镜像内容问题 | 检查并设置活动槽位 |
| Samsung设备,刷入打过补丁的 AP 后开机循环 | 该平台特有的分区与 vbmeta 交互 | 通用的 fastboot 建议 | Samsung自己的刷机流程,与 fastboot 设备不同 |
这张表做了编号修复清单做不到的事:在你花一小时去尝试错误方向之前,先根据症状缩小候选范围。
版本必须完全对应
这是最值得花时间的原因,因为它最容易在你以为没错的时候出错。
打过补丁的 boot 镜像是由某个特定固件版本生成的。正确的来源是与你的确切型号和确切版本号(包括安全补丁级别)对应的固件。不是同一型号在其他地区的版本,不是一个月前的同一版本号,而是设备上当前安装的那个确切版本。
常见的出错点:
- 机型变体。 同一个市场名称常常对应多个不同的硬件变体,固件各不相同。同一款手机的Snapdragon版和 Exynos 版,在这件事上就是不同的设备。运营商定制版又是另一回事。
- 地区。 同一型号在不同地区的固件不同,镜像不能互换。
- 版本漂移。 设备在你下载固件之前或之后收到了更新。真正有意义的是设备上的版本号。
- 被重新打包的上传文件。 来自文件托管站的镜像来路不明。请使用厂商自己发布的固件,并在厂商提供校验值时进行校验。
下载任何东西之前,先在 设置 的“关于手机”里查看当前安装的版本。如果设备无法开机,版本号可能显示在 Bootloader 或下载模式界面上,请拍照记录。
我们的可 root 设备列表说明了哪些机型的哪些变体有可用的 root 方法,以及变体上的陷阱在哪里。
boot.img 和 init_boot.img 不能互换
有过成功 root 经验的人也容易在这里栽跟头,因为这条规则在 Android 的演进过程中变过。
Android 开源项目(AOSP)文档直接说明了这一变化:以 Android 13 出厂的设备有一个新的 init_boot 镜像,其中包含通用 ramdisk;而从 Android 12 升级到 Android 13 的设备,沿用的仍是 Android 12 时的架构。
由此得出的实用规则:
| 设备出厂历史 | Ramdisk 位置 | 要打补丁的镜像 |
|---|---|---|
| 以 Android 13 或更高版本出厂 | init_boot | init_boot.img |
| 以 Android 12 或更早版本出厂,后来升级到 13 或更高 | boot | boot.img |
陷阱在于,今天运行 Android 14 的设备,可能属于任意一行,取决于它出厂时的版本。当前安装的 Android 版本并不能告诉你该用哪一行,关键是设备出厂时的版本。
Magisk 官方安装文档介绍了如何判断你的设备属于哪种情况,并注明部分硬件存在例外。请针对你的具体设备去读,不要只凭包装盒上的 Android 版本去推断。
这里出错的结果是:刷入看起来一切正常,设备却无法开机。这正是它应该排在排除列表靠前位置的原因。
vbmeta 问题
Android 验证启动(AVB)会检查 Bootloader 即将加载内容的完整性。被修改的 boot 镜像与预期的哈希不匹配,设备如何应对则取决于厂商的实现。
有些设备要调整验证状态,被修改的镜像才能启动,有些则不需要。在部分设备上,改变这个状态会作为安全措施,在下次开机时强制清除数据。这些行为因设备而异,不同厂商之间,甚至同一厂商的不同机型之间都不一致。
正因为这种差异,本文不提供要你执行的 vbmeta 命令。在不需要的设备上使用错误的验证参数,可能让你丢失数据;而在需要的设备上一个都不用,又会造成你正在设法修复的开机循环。动手之前,请先从厂商文档或针对该设备的资料里查清你确切机型的要求。
破坏性操作警告: 在部分设备上,刷入禁用验证的 vbmeta 会在下次开机时触发完整的用户数据清除,且无法撤销。执行前请先确认你的设备会有什么表现。
恢复到可启动状态
如果设备处于 fastboot 模式,并且你有与当前安装版本对应的正确原版 boot 镜像,刷回它就能撤销改动。这个操作只写入 boot 分区,不会碰用户数据。
按顺序需要满足的条件:
- 设备能进入 fastboot,电脑能识别它。如果不能,请从这里开始。
- 你有对应确切安装版本的、未打补丁的原版镜像,且来自厂商自己的发布渠道。
- 你清楚它该刷入哪个分区(参见上面的表)。
- 如果设备使用 A/B 槽位,你清楚当前的活动槽位是哪个。
以上任何一项缺失,就先停下来补齐,不要凭感觉乱试。把一个大致正确的镜像刷到一个大致正确的分区,就是让本可恢复的状态变得更糟的做法。
问题出在模块上时
如果设备已成功 root、运行正常,只是在你安装某个模块之后才开始循环重启,诊断就很简单,修复完全不涉及 boot 镜像。
Root 框架提供了禁用模块启动的方式,以便你移除出问题的模块。Magisk 文档介绍了开机时按键的操作序列,可在禁用模块的状态下启动系统。KernelSU 也有自己的救援方式,包括在 Recovery shell 里运行其命令行工具来列出、禁用或卸载模块。
两种方式针对的都是模块目录,不会动用户数据。请以你实际安装的 root 方案的最新文档为准,因为这方面的行为在各版本之间有变化,旧论坛帖子里的做法可能已经不存在了。
在开机早期挂钩、替换系统组件或修改设备属性的模块,风险高于其他模块。我们的 Magisk 模块指南说明了哪些类别有过开机问题的先例,以及安装前该检查什么。
并非所有故障都能恢复
把局限说清楚,因为本文其余部分偏乐观,而这些局限是真实存在的:
- 如果在已经刷入被修改的 boot 镜像的情况下把 Bootloader 锁了,设备可能拒绝加载任何东西,也不接受新的刷入。没有厂商工具,这种状态可能很难甚至无法解决。
- 如果刷入在写入分区的中途被打断,结果取决于是哪个分区以及写到了哪一步。
- 如果设备已无法进入 fastboot,在任何模式下都检测不到,那就超出了本文的范围。请阅读 软砖与硬砖的区别,判断设备所处的状态。
- 如果厂商已不再提供你确切版本的原版固件,就可能无法恢复到完全一致的镜像,其他办法通常都要清除数据。
我们不会声称每一次 Magisk 刷入失败都能恢复。有些确实不能,诚实的做法是在你花钱试错之前把话说明白。
常见问题
刷回原厂 boot 镜像会删除我的数据吗? 刷入 boot 分区不会碰用户数据分区。会删除数据的是重置、格式化、清除标志,以及在某些设备上会强制清除的验证状态变更。要看清操作本身,而不是听宽心话。
我能直接再刷一次打过补丁的镜像重试吗? 重刷同一个镜像只会得到同样的结果。如果问题出在镜像上,重复操作没用。先根据排除表改变某个具体的地方,再重试。
设备能开机,但 Magisk 显示未安装。 这通常意味着刷到了非活动槽位,或者设备从另一个槽位启动了。请检查哪个槽位是活动的。也可能是补丁打到了错误的分区,具体见 boot 与 init_boot 一节。
修复这个问题需要 TWRP 或自定义 Recovery 吗? 恢复 boot 镜像不需要,那是 fastboot 操作。自定义 Recovery 在某些移除模块的场景下有用,但在现代分区布局上也会带来兼容性问题。我们的 TWRP 安装指南说明了它适用和不适用的场景。
这个问题只出现在 Magisk 上吗? 不是。版本错误的镜像、分区混淆、验证要求和槽位不匹配,适用于任何对 boot 镜像的修改。KernelSU 和 APatch 的安装会遇到同样类别的故障,诊断思路也相同,在你做选择之前,值得先了解这三种方案的区别。
我该直接恢复出厂设置重来吗? 不要把它当作第一步。这六种原因都不源于 data 分区,所以重置多半解决不了其中任何一个。重置不可撤销,而且在使用基于文件的加密(FBE)的设备上,会连同数据一起销毁密钥材料。先把排除表过一遍。
相关阅读: 不丢数据修复开机循环 · 各种开机界面症状的含义 · 软砖与硬砖 · fastboot 设备检测不到 · 必备 Magisk 模块
资料来源: Android 开源项目的通用 boot 分区文档,Magisk 官方安装文档,KernelSU 官方救援文档。
最后核实时间:2026 年 8 月 24 日。分区布局、验证启动要求和刷机流程因厂商、机型和版本而异。执行任何命令之前,请先对照你设备的官方文档确认。