老柯修机铺

通讯行老师傅的手机软件笔记——每款 App 装过、用过,才敢写下来

APatch 数据退路全梳理:SuperKey、模块、授权记录怎么带走

项目内容
软件APatch
版本11142
平台Android APK
体积5.58M
分类工具
包名me.bmax.apatch
官网APatch 官网
下载一APatch 下载,APatch 下载
下载二APatch 下载,APatch 下载
文档APatch 文档
介绍用 APatch 做 root 之前,先摸清 SuperKey、管理器数据、授权记录的存储位置与迁移路径,避免换机或重装时数据锁死。

先说正事:APatch 是什么

APatch 是一款 Android 内核级 Root 工具——通过修补 boot 分区实现 root 权限,不依赖 su 守护进程,在内核层完成权限授予。相比 Magisk 和 KernelSU,它的 SELinux hook 绕过方案和 SuperKey 密码学凭证系统让 root 对外更隐蔽。适合对 root 检测、银行 App、Google Pay 兼容性有要求的进阶用户。

我之前用过 Magisk,换手机时发现 su 白名单和模块配置没法直接带走,从头折腾花了两天。所以这次上 APatch,先把数据路径摸清楚再动手。毕竟 root 这类操作,数据自主权才是真正的退路。

APatch 标志

数据在哪:APatch 产生的东西都藏哪里

APatch 运行后会在四个位置产生数据,每个位置的性质和可迁移性不一样:

SuperKey(最关键,也最容易丢)

SuperKey 是 APatch 的根密码——它直接存储在修补后的 boot 分区里,是明文写入的。这意味着:

  • SuperKey 跟着 boot 走,刷机前记得备份原厂 boot.img,修补后再备份一份带 SuperKey 的 boot.img
  • 如果你忘了 SuperKey,原厂 boot 重新修补一次就能重置,但之前授权过的所有 App 白名单会清空
  • 新版 APatch(11090 之后)已经改为验证管理器签名而非强制 SuperKey 认证,升级时注意过渡版本的步骤

APatch 管理器界面

管理器 App 数据

管理器的配置、su 授权白名单、模块列表都存在 /data/data/me.bmax.apatch/ 下,具体包括:

  • su 授权记录(哪些 App 被允许 root)
  • KPM 模块清单和启用状态
  • SELinux 策略追加规则(如果启用了 magiskpolicy 补充层)

这部分数据只有 root 权限才能读到,普通 adb shell 也拿不到。

KPM 模块文件

APatch 用 KPM(Kernel Patch Module)替代 Magisk 模块——每个模块是一个独立的内核补丁,存放在 APatch 管理器指定的模块目录里(通常在 /data/adb/ 下,路径以实际管理器为准)。模块文件本身就是二进制 patch,可以单独备份带走。

内核 patch 记录

修补痕迹写在内核符号表里,可以通过 cat /proc/kallsyms | grep -i apatch 验证。这部分不是用户可迁移的数据,只是用来确认内核是否成功被 patch。

怎么备份:每一项对应的操作路径

1. SuperKey + boot 分区

这是最核心的一步。修补完成、验证 root 成功后,第一件事:

# 提取当前 boot 分区
adb shell su -c "dd if=/dev/block/by-name/boot of=/data/local/tmp/boot.img"
adb pull /data/local/tmp/boot.img .

拉到电脑上的 boot.img 里包含了你的 SuperKey,妥善保存。下次重刷这个 boot 就能恢复 root 和原来的 SuperKey。

2. 管理器数据 + su 白名单

需要 root shell 才能拉出来:

adb shell su -c "tar -czf /data/local/tmp/apatch-data.tar.gz -C /data/data/me.bmax.apatch ."
adb pull /data/local/tmp/apatch-data.tar.gz .

恢复时反过来操作——先刷好带 SuperKey 的 boot,再把 tar.gz 推回去解压,管理器就能恢复之前的授权状态。

3. KPM 模块

模块目录路径可以在管理器里查看,常见位置是 /data/adb/apatch/ 或管理器自定义路径。直接把整个目录打包:

adb shell su -c "tar -czf /data/local/tmp/apatch-modules.tar.gz /data/adb/apatch/"
adb pull /data/local/tmp/apatch-modules.tar.gz .

换机后刷入新的修补 boot,再把模块目录解压回去,管理器就能识别。

4. 常规备份提醒

APatch 本身不涉及云端同步——所有数据都在本地分区里。用 PC 端的备份工具也可以,但要确保能拿到 root 权限读取 /data/data/ 和 /data/adb/。

APatch 管理器另一界面

换设备迁移:我帮你走一遍完整流程

假设你换了同品牌或不同品牌的新手机,迁移步骤是这样的:

第一步:新设备先解锁 Bootloader

老设备上的 boot.img 不能直接刷到新设备——每个设备的内核配置不同。你需要:

  1. 在新设备上按品牌流程解锁 Bootloader(参考样本里的三类:官方通道、申请解锁码、无通道)
  2. 解锁会强制恢复出厂设置,确认新设备数据已经迁移好
  3. 绝对不要碰 init_boot 分区——Android 13+ GKI 设备有两个分区,APatch 只修补 boot,碰 init_boot 会导致无法开机

第二步:重新修补新设备的 boot

  1. 从新设备提取原厂 boot.img:adb shell su -c "dd if=/dev/block/by-name/boot of=/data/local/tmp/boot.img"
  2. 在电脑上用 APatch 修补工具处理这份新 boot.img
  3. 修补时你可以选择沿用旧 SuperKey 或设置新的——沿用的话记得保证安全强度(新版强制 8-63 位含数字和字母)

第三步:刷入并恢复数据

  1. fastboot 刷入修补后的 boot:fastboot flash boot patched_boot.img
  2. 重启进系统,安装 APatch 管理器 APK
  3. 验证 SuperKey 通过后,拉回之前备份的管理器数据 tar.gz 解压
  4. 恢复 KPM 模块目录
  5. 所有之前授权过的 su App 应该自动恢复白名单

容易断的环节

  • 跨品牌迁移:小米刷了一加的 boot 肯定开不了机,每个设备必须用自己的原厂 boot 重新修补
  • Android 大版本跨越:从 Android 12 跳到 Android 14,内核 API 可能变了,旧的 KPM 模块不一定兼容,需要找对应新内核版本的模块
  • SuperKey 升级路径:旧版(11090 之前)SuperKey 认证机制和新版不同,跨版本升级需要走过渡版本,跳过会导致卡开机

退路评估:哪天不用了能不能干净撤掉

卸载 APatch

卸载本身很直接——fastboot flash boot 原厂boot.img 刷回原始 boot 就行,内核 patch 痕迹随 boot 分区一并清除。但要注意:

  • 刷回原厂 boot 后,su 授权白名单和模块数据还留在 /data/data/me.bmax.apatch/ 和 /data/adb/ 里——手动删一下才算干净
  • SuperKey 跟着修补 boot 走,刷回原厂就没了,原厂 boot 里没有你的 SuperKey 残留

数据清干净了吗

刷回原厂 boot 后:

  • /proc/kallsyms 里 APatch 符号消失 ✅
  • su 守护进程不存在,App 请求 root 直接失败 ✅
  • 管理器 App 数据目录手动删除即可 ✅

但有一处未验证:SELinux policy 的 hook 痕迹是否会在某些检测工具里残留。默认的 hook 绕过方案不修改 SELinux policy 文件,所以 policy 层面应该干净;但如果你启用了 magiskpolicy 补充层,追加的规则会留在 policy 里,需要额外清理。这点建议停用前用 Root Checker 类 App 跑一遍检测确认。

关于 KPM 模块

卸载前先在管理器里把模块全部禁用再卸载,避免某些模块在内核里残留 patch。直接刷原厂 boot 会硬清内核状态,但模块目录还是手动删一下。

结论:数据自主度怎么样

APatch 的数据自主权整体不错——SuperKey 跟着 boot 走,备份一份修补后的 boot.img 就是最核心的退路。管理器数据和模块目录都是纯本地文件,tar 打包就能带走。主要痛点在跨设备时必须重新修补(没法直接换 boot),以及旧版 SuperKey 到新版的升级路径有门槛。

如果你打算长期用 root,建议养成一个习惯:每次修补完 boot,立刻备份修补后的 boot.img + 管理器数据 tar.gz + 模块目录 tar.gz,三个文件丢同一个网盘目录。换机或者需要救砖时,这三个文件能帮你省掉从零再折腾的两天。

数据这事儿,事前花十分钟备份,总比出事了翻论坛到凌晨强。

本文为个人基于网络公开资料整理编写,非官方内容,仅供学习交流参考;软件版权归原作者所有,请支持正版;使用过程中遇到问题请查阅官方渠道,本文不承担任何责任。

同类文章