Android手机如何解锁Bootloader并修补内核刷上Magisk

本文最后更新于:2022年11月26日 下午

前言

现在,Android手机获取Root,基本已经和Magisk画上等号。借助Magisk,大家还可以安装丰富多彩的模块,在不真实修改系统文件的情况下,实现换字体、修改CPU频率调度等功能。

但是,Android手机刷上Magisk呢?本篇文章,以OPPO手机为演示机,教大家如何操作。(其他Android手机,如:小米、魅族等,可能步骤类似,但是最好阅读本文章同时,配合其他多篇文章进行操作)。

辅助视频

嘿嘿,做教程视频不易(B站根本不会推荐引流),请务必一键三连嗷~B站视频地址:https://www.bilibili.com/video/BV14e4y1U7nj

OEM解锁

在Android手机刷Magisk前,我们首先就要解决OEM解锁问题。其实说OEM解锁比较宽泛。

我们这里说的OEM解锁,更多的是解锁Bootloader,也就是我们俗称的BL锁。

在解锁完成后,我们可以使用ADB的Fastboot命令,刷写第三方的镜像;这个时候,我们才可以刷上用Magisk Manager APP修补后的boot.img镜像文件。

不同手机的OEM解锁流程不一样,举一下例子(部分图片来源于网络)。

小米手机解锁

小米手机 BL 解锁步骤,参考:https://miuiver.com/how-to-unlock-xiaomi-phone/

在解锁操作前,先确认自己的小米帐号是否可以解锁(即每月最多解锁 1 台手机,每年最多 4 台,超过需要更换帐号)。

帐号没问题后即可开始下面解锁步骤:

  • 备份手机数据,BL 解锁会清除手机数据,有数据的请先外置备份数据
  • 手机已插入 SIM 卡,关闭 WiFi 连接,启用数据联网方式(后面操作需要用到数据联网)
  • 依次点击 手机设置 -> 我的设备 -> 全部参数 -> 连续点击几次“MIUI 版本” 打开开发者选项(图解如下)

打开开发者选项

  • 依次点击 手机设置 -> 更多设置 -> 开发者选项 -> 设备解锁状态 -> 绑定帐号和设备(图解如下)

MIUI设备解锁绑定帐号

  • 如果首次绑定手机,需要在绑定帐号后等待 7 天,期间不要退出小米帐号,以满足解锁条件(不然后面会提示绑定时间太短…… 图片如下)

小米BL解锁账号绑定设备时间太短

  • 电脑下载小米 BL 解锁工具,完整解压后运行里面的miflash_unlock.exe 程序,按提示登录小米帐号
  • 将手机关机,按住音量下键 + 开机键进入 Fastboot 模式,用数据线连接电脑(如果显示未连接,请检测安装电脑驱动,如下图)

MiUnlock检测电脑驱动安装

小米手机进入Fastboot

  • 识别手机连接后,点击“解锁”按钮,稍等片刻就会看到 BL 解锁结果,然后重启手机(开机可看到 BL 锁状态)

小米开机界面显示 BL 锁状态

到此,BL 解锁就完成了,之后可以按需使用线刷方式刷机或者 Root 手机等操作

注:如果解锁过程中遇到问题,需要重启手机,可以长按开机键 10 秒退出 Fastboot 模式。

OPPO手机解锁

部分发布满一年的OPPO手机,可以在特定大版本进行解锁。解锁后,可以正常升级到高版本系统,且不影响Bootloader的状态。

举个例子,一台OPPO Reno 6 Pro+的手机,官方只提供了Color 11的解锁工具;当前手机在Color 12,我们就需要降级到Color 11上进行解锁。解锁后,升级到Color 12,此时还是会处于开锁状态,没有回锁。

OPPO解锁BL,需要加入深度测试,并且用深度测试的软件提交申请后,持续等待1个月(期间,手机需要停留在当前手机的大版本上)。参考:https://www.oppo.cn/thread-397164526-1

总的来说:

  • 手机降级到支持深度测试的版本,降级工具下载,可以到ColorOS升级助手微信公众号内:

ColorOS升级助手

  • 降级后,安装对应版本的深度测试软件,等待一个月。
  • 等待一个月后,用深度测试软件进入Bootloader界面,手机连接电脑,准备开始解锁。
  • 电脑上配置ADB套件,之后运行解锁命令即可解锁。

解锁命令为:

1
fastboot flashing unlock

解锁命令

此时,手机会进入确认状态:
确认解锁

用音量键选择,电源键确定即可。

确认解锁后,会强制格式化系统,请注意⚠️

如果你不知道如何安装和配置ADB套件,可以看看下个小目录。

配置ADB套件

首先,电脑上如果没有配置ADB套件,输入ADB命令是没有用的,比如:
Windows上没有ADB套件

我们需要配置ADB。接下来就配置看看。

下载ADB套件

下载ADB套件的地址有很多,个人比较推荐去Google官方进行下载:
https://developer.android.com/studio/releases/platform-tools?hl=zh-cn

根据系统版本,选择ADB

比如:我这里下载Windows版本的ADB:
下载好后,解压出的内容

配置到环境变量

为了更方便使用,我们配置到环境变量内。首先解压到自己知道的目录内(路径内最好不要有中文):
解压到知道的路径内

右键此电脑,选择属性,再选择高级系统设置,最后选择环境变量
找到环境变量

双击Path,将ADB的路径追加到其中,保存并退出即可:
追加环境变量

现在,重新打开CMD或者Powershell,就可以使用我们的ADB命令了:
使用ADB命令

修补内核

修补内核的方法很简单,我们首先需要提取内核文件,通常需要提取:

  • boot.img:系统的内核文件,负责启动和驱动手机
  • vbmeta.imng:系统的分区验证分区镜像

获取这两个的方法很多,一般在全量包内获取,比如OPPO手机的全量包内:
全量包内的vbmeta.img

这里就不再过多赘述,

我们提取了内核,丢到手机内。手机上安装Magisk Manager APP并打开,之后,文件进行修补即可。

最后,回传到电脑,手机重启进入Bootloader,使用ADB先刷入:

1
fastboot flash boot 「boot.img」

其中,「boot.img」为修补后回传到电脑上的内核地址文件。

刷入后,再使用ADB命令,配合vbmeta.img关闭分区效验:

1
fastboot flash vbmeta --disable-verity --disable-verification 「vbmeta.img」

其中,「vbmeta.img」为上文提取的系统的分区验证分区镜像。

系统更新

如果我的手机需要系统更新怎么办呢?以下方法,均不需要重复执行解锁操作

有多种方法,通常的方法,一般是Magisk的直接安装或者全量更新手机系统后,重新重新刷入新系统修补后的内核:

  • 全量更新手机并提取手机的Boot.img进行修补,之后重新修刷入。不过,不同方法获取全量更新包的途径不一样,小米手机应该是最简单的。
  • A/B分区的手机,可以使用系统更新软件更新后,在Magisk Manager APP上,选择将Magisk刷到B面分区,重启手机更新完成后,手机自动有Magisk

这里介绍一下,一些特殊手机获取全量更新包的方法。

OPPO获取全量包

已经刷上Magisk的OPPO手机,还是可以收到OPPO的更新推送,但是一般接受的都是全量包。

这个时候,我们可以先获取并下载安装包,之后使用MT管理器等类软件,访问/data/data/com.oplus.ota/databases/

打开
打开ota.db里面就有下个版本的全量包下载直链,复制到电脑上即可下载并解压:

解压后的效果

之后,我们重新把boot.img发送到手机进行修补,得到magisk_patched-XXXXX.img文件,回传到电脑进行ADB刷入:
刷修补后的Boot

刷修补后的Vbmeta

Q&A

等待补充


若对文章很感兴趣,可以B站关注我ヾ(≧▽≦*)o

点此跳转“爱发电”页面(○` 3′○)