这是一份 Pixel 8a 从 LineageOS 22 手动升级到 23 的实操记录,目标是在升级系统的同时补装 Gapps,并在系统启动后使用 APatch 获取 Root。文章的价值不在于替代官方文档,而在于补充真实操作中容易误判的现象:ADB sideload 停在约 47% 不一定代表失败、附加包签名警告在特定条件下属于预期,以及升级后调试设置需要重新开启。
适用范围与前置条件
原作者使用 Pixel 8a(设备代号 akita),升级包为 lineage-23.2-20260805-nightly-akita-signed.zip。电脑运行 Arch Linux,不过只要能正确安装并调用 ADB、Fastboot,理论上不限定发行版。手机需要已经解锁,并已安装 LineageOS 官方 Recovery;此外还需要可靠的数据线与稳定网络。
这不是从原厂系统开始的完整刷机教程,而是从既有 LineageOS 22 环境升级到 23 的经历。作者也明确建议以 LineageOS 的 akita 官方页面为主。升级过程包含格式化用户数据,执行前必须自行备份;原帖未说明备份、恢复及降级方法,也没有给出 Gapps 的具体发行版、下载地址或校验值。
第一步:清理账户并确认 ADB
LineageOS 的全新安装文档提醒用户移除已登录的 Google 账户,以避免 Factory Reset Protection。手动更新文档虽未特别要求,作者仍先移除了 Google 账户;eSIM 也被一并删除,属于个人的保守操作,并非原帖证明的强制步骤。
因为要额外安装 Gapps,需要把系统恢复到没有用户修改的状态,也就是清除用户数据。开始前先开启 USB 调试,并永久允许当前电脑调试,然后用下面的最小命令确认设备可见:
adb devices
adb reboot recovery
进入 Recovery 后,使用音量键和电源键依次选择 Factory reset > Format data/factory reset。完成后返回首页,进入 Apply update > Apply from ADB。
第二步:侧载 LineageOS 与 Gapps
在电脑端执行:
adb -d sideload /path/to/lineage.zip
把路径替换成实际下载的 LineageOS 包。这里有一个很容易造成误判的现象:电脑端进度可能停在约 47%,随后出现 adb: failed to read command: Success,但手机端实际上已经进入下一步确认界面。判断是否成功应同时观察 Recovery 端状态,不要只看电脑百分比。
作者随后在手机端确认继续安装附加组件,再次进入 Apply update > Apply from ADB,用同样的 sideload 方式加载 Gapps。由于附加组件没有使用 LineageOS 官方密钥签名,Recovery 会提示签名验证失败;在已经核实包来源与用途的前提下,这个提示属于预期。原帖未给出包的哈希校验方法,因此不能据此判断任意同名文件都安全。
安装完成后选择 Reboot system now。作者顺利进入新系统,但开发者模式和 USB 调试等设置需要重新开启,这也是验证数据清除确已生效的一个侧面信号。
第三步:检查 APatch 前提并修补 boot
进入系统后,作者先通过 ADB Shell 检查内核配置:
zcat /proc/config.gz | grep CONFIG_KALLSYMS
只有输出同时包含 CONFIG_KALLSYMS=y 与 CONFIG_KALLSYMS_ALL=y,才符合这次 APatch 修补所需的内核条件。随后安装 APatch,从 LineageOS 官方构建页面下载与当前系统版本完全对应的 boot.img,在 APatch 中设置密钥并修补镜像,再把修补后的文件传回电脑。
最后进入 bootloader 并刷入修补镜像:
adb reboot bootloader
fastboot flash boot /path/to/patched-boot.img
fastboot reboot
重启后在 APatch 中输入先前设置的密钥完成启用。这里最关键的是系统构建版本与 boot.img 必须匹配;原帖没有说明刷错镜像后的救援流程,也没有验证 SafetyNet、Play Integrity、银行应用或 OTA 后的兼容性,因此不应把一次成功经历外推为所有环境都适用。
可以复用的经验
第一,刷机时同时观察电脑和手机两端,传输百分比或带有 Success 的报错文本不能脱离 Recovery 状态单独判断。第二,系统包、Gapps 与修补镜像应按固定顺序处理,避免在数据状态不一致时混合排障。第三,Root 前先检查内核能力,并确保 boot 镜像与当前构建精确对应。第四,这类经验帖适合作为故障提示清单,真正执行仍应以设备对应的 LineageOS 与 APatch 官方文档为准。
原作者:Gramerch
原帖:https://linux.do/t/topic/2726589