虽然说 Magisk 只是修改了 boot 分区,通过重新刷入官方 ROM 的 boot.img 可以重新开机,但是这样开机之后,是没有 root 权限的,就没有办法删除 Magisk 里面不兼容的 Module;然后手动重新给 boot.img 打上 root 补丁,又会陷入无法开机的死循环中,最后没办法只能格式化data,清空所有数据。
开启USB调试
刷入原始Boot镜像,root掉了,模块自然就禁用了。进入系统后打开开发者选项,打开USB 调试,USB调试(安全设置),USB安装和停用adb授权超时功能。
有TWRP可以直接重启到REC进行删除
建议先关闭锁屏密码,避免TWRP无法解密data分区
没有TWRP
情况1:没有禁用ADB shell的root权限。
重新刷入修补后的boot镜像,开机虽然卡第二屏,但是可以连接ADB。通过ADB删除故障模块。
adb shell
su # 提权 root
cd /data/adb/modules #进入Magisk模块目录,找到错误模块删除
adb reboot #重启
情况2:adb没有root权限
进入手机的安全模式,Magisk会自动禁用所有模块,具体方法请自行Google。一般方法是:
- 设备关机状态下,按电源键开机
- 待出现 bootloader 已解锁的安全提示后,直接按住“音量减”键,直到进入桌面
- 屏幕左下方显示“安全模式”即表示成功
如果上述方法不可用(博主就不行),那只能删除所有模块了,至少不用格式化data。
adb wait-for-device shell magisk --remove-modules
adb reboot # 重启后应该就可以正常进入桌面了,保留root权限