魅族 18s 升级 Flyme 系统保留 TWRP 和 Magisk(Root) 教程

正常魅族系统通过增量更新有很大风险将系统的 magisk 以及 TWRP 搞丢,因为 flyme 系统的 magisk 是通过 patch 补丁的方式打入 boot.img 的,而升级系统可能会覆盖该区域内容,最好是通过全量更新的方式刷入,并且从升级系统包中提取 boot.img ,再通过系统打入 TWRP 和 Magisk 的补丁。

此文是更新系统的方式,并且你已经有 Magisk 的情况下升级系统可参考,否则先直接查看第六步 "打 Magisk 启动分区补丁"。

基本流程如下:

  1. 下载全量升级包 update.zip

  2. 从 payload.bin 中提取 boot.img

  3. 升级系统

  4. 重启前保留面具 root

  5. 通过脚本打入 TWRP 补丁

  6. 再次打入 Magisk 补丁

  7. 刷入打补丁的 boot.img

1.下载全量升级包 update.zip

https://www.flyme.com/firmwarelist-191.html

通过官网下载最新的全量升级包。

2.从 payload.bin 中提取 boot.img

下载 OTA Payload 解包工具

windows python 打包版本:https://androidfilehost.com/?fid=818070582850510260

Python 原版及 Docker 用法:https://github.com/vm03/payload_dumper

另外一款 golang 版本的解包工具:https://github.com/ssut/payload-dumper-go

无论哪个能解包就行,我这里使用的是 windows 打包的版本。

解压 update.zip ,得到 payload.bin,将其复制到 payload_input 中。

复制之后的截图:

双击 payload_dumper.exe 进行解包镜像

当 boot 解包完毕后就可以关闭这个程序了,出现 boot 之后的第二个其他镜像名字就代表 boot 解包成功。

暂时保留这个 boot.img ,稍后用到。

3.升级系统

复制 update.zip 到系统存储中,通过系统内置的 文件管理工具找到 update.zip 进行更新。

通过 adb 复制文件到系统存储根目录:

通过系统文件管理器,找到 update.zip 并点击进行立即更新

无網路連接,請檢查網路設定

如果出现 “无網路連接,請檢查網路設定“:

检查系统屏蔽广告的设置,或者 hosts 等,可以将其临时关闭,如果是通过 systemless hosts 屏蔽了魅族 flyme 的 host,将模块临时关闭,并重启系统。

4.重启前保留面具 root

开始安装后,打开 magisk manager ,选择安装 Magisk.

安装方式:安装到非使用中的槽位(在 OTA 更新后)

暂时不要点击开始执行

提醒:一定要赶在系统安装完成后重启前的时间进行操作,否则安装完成后会强制立即重启,丢失 Magisk。

通过通知栏查看更新进度条满的时候(变成一整个圆圈),再去选择 开始执行

5.打 TWRP 启动分区补丁

到这一步你的系统应该拥有 root 权限才行,如果上一步正常则可以通过 magisk 授予 root 权限,否则你可能需要先打一遍 magisk 的补丁给 boot 重启激活获取 magisk 加载后再来进行当前步骤。

你需要将刚才解压的原生 boot.img 复制到系统中

adb push boot.img /sdcard/boot.img

再将 rec_install_tools 用于打补丁的目录复制到系统中

adb push rec_install_tools /sdcard/

创建所需的 input 和 output 目录,因为目录是空的,push 时没有将空目录推送进去。

adb shell mkdir /sdcard/rec_install_tools/input
adb shell mkdir /sdcard/rec_install_tools/output

再将刚刚的 boot.img 放入 input 目录

adb shell mv /sdcard/boot.img /sdcard/rec_install_tools/input

移动目录到 /data/local/tmp 中,因为只有这里拥有执行权限

adb shell
mv /sdcard/rec_install_tools /data/local/tmp

赋予权限并执行脚本打入补丁

cd /data/local/tmp/rec_install_tools
chmod + install
./install

此时得到一个 new_boot.img 就是拥有 TWRP 的 boot 镜像文件,此时将文件复制到 /sdcard/ 给 magisk 再打一遍,让其拥有 magisk 启动加载的能力。

一定要先打 TWRP 补丁,再去打 Magisk,否则会丢失其一。

mv /data/local/tmp/rec_install_tools/output/new_boot.img /sdcard/

6.打 Magisk 启动分区补丁

打开 Magisk manager,点击 Magisk 中的安装:

安装方式:

选择并修补档案

同时在弹出的选择框中选择刚刚导出的 new_boot.img

然后点击右上角的 “开始执行

生成的新补丁 boot 文件在 /sdcard/Download 目录里,这个 boot 分区镜像包含了 TWRP 和 Magisk 双功能。

提取最终的镜像到电脑端,

adb pull /sdcard/Download/magisk_patched-25100_dStRZ.img .

有需要,也可以将其顺便改个名,比如:

adb pull /sdcard/Download/magisk_patched-25100_dStRZ.img boot_9.3.0.0A-with-twrp-magisk.img

7.刷 boot.img 到 启动分区

你也可以以任何方式进入到 fastboot 模式进行刷机

开机状态下进入 fastboot

adb reboot fastboot

刷入镜像到 a/b 分区

fastboot flash boot_a boot_9.3.0.0A-with-twrp-magisk.img
fastboot flash boot_b boot_9.3.0.0A-with-twrp-magisk.img

重启到系统

fastboot reboot

Comments

  • avatar
    扣肉

    18x 不行:SECOND_SZ;RECOV_DTBO_SZ;DTB_SZ;CMDLINE; cgroup.memory=nokmem,nosocker reboot=panic_warm buildvariant-user [脚本多的] 可以拉我进群吗?

    2023-02-02 10:14
    • avatar
      Eller

      @扣肉 701101268

      2023-02-02 10:46

  • avatar
    扣肉

    18x 机子按照教程 出现 卡在twrp 界面 3.5.2_11-0 如何处理?

    2023-01-29 11:33

  • avatar
    扣肉

    18x 机子按照教程 出现 卡在twrp 界面 3.5.2_11-0 如何处理?

    2023-01-29 11:33
    • avatar
      Chauncey Eller

      @扣肉 想办法进fastboot,刷官方同版本 boot.img 先恢复正常再重刷。

      2023-01-30 09:21
    • avatar
      扣肉

      @Chauncey Eller 我已经用的是root_boot.img (带 magisk 不带twrp)刷入 恢复了。 我是刷入root_boot 后制作的带twrp的boot.img. 需要用原厂boot.img 制作吗?

      2023-01-31 05:40
    • avatar
      扣肉

      @Chauncey Eller 刷完twrp_boot.img 后 系统启动卡在twrp 界面。twrp_root_boot.img 制作是否正确?

      2023-01-31 13:58
    • avatar
      Eller

      @扣肉 用原厂 boot.img 先打 TWRP补丁,刷入,如果没问题。再用magisk打上magisk补丁,再刷入。 如果你用原厂+TWRP的补丁刷机(A,B分区都要刷),起不来系统,可能是TWRP的脚本或者补丁有问题了。建议别刷了,寻求群里别的人帮助。

      2023-01-31 14:04

  • avatar
    叫啥名好

    非常好的帖子,谢谢分享

    2023-01-11 18:27

  • avatar
    扣肉

    重新分享一下,你的TWRP_magisk.img 制作脚本

    2022-10-26 13:06
    • avatar
      ELLER

      @扣肉 https://drive.google.com/file/d/1Z7KuYbsvluBXpFIK0RzvAZ7H1bY6ctxl/view?usp=sharing

      2022-10-26 13:17

  • avatar
    扣肉

    有人分享的root_boot.img 和你提到的twrp_magisk.img 相同吗?可以替换使用吗?

    2022-10-26 11:40
    • avatar
      ELLER

      @扣肉 不知道,你得去试。

      2022-10-26 13:00

  • avatar
    扣肉

    可以通过 9008 qfil frp unlock 线刷包,解吗?还是用其它方法

    2022-10-26 11:28
    • avatar
      ELLER

      @扣肉 都需要9008线刷解锁的,只能花钱解。

      2022-10-26 13:01

  • avatar
    扣肉

    请教一下,这些操作是在解BL后操作的吗?

    2022-10-26 09:17
    • avatar
      ELLER

      @扣肉 对,必须先解BL,否则BOOT刷不进去

      2022-10-26 09:21

  • avatar
    扣肉

    TWRP 制作脚本再分享一下,谢谢

    2022-10-26 08:52

  • avatar
    CoolGuci

    你好请问图文中的twrp是哪一款?我想要这个文件,试一下手动解密data是否成功,谢谢了。如果可以的话将twrp下载链接发我邮箱或者twrp文件发我邮箱。

    2022-09-24 05:37
    • avatar
      Chauncey Eller

      @CoolGuci TWRP的制作脚本发给你了,只有24小时 https://t.wss.ink/f/9d9yvo1q2tn 复制链接到浏览器打开

      2022-09-24 12:44