小米新机型 ROOT 、隐藏 ROOT 的方法

269

0. 前言

对于小米较新的、拥有 A / B 分区机型来说(Mi11 之后),使用传统的第三方 Recovery 刷入 Magisk Root 的方法已经不适用。所以需要使用新的,修补启动镜像 Boot.img 的方法来获得 Root 权限。

1. 解锁 BootLoader

解锁 BootLoader,才能读写手机 System 分区,获取 ROOT 权限需要写入 System 分区,所以这是 ROOT 的前置步骤。因为小米官方提供了 MiLock 工具解锁 BootLoader,所以下载后按照软件提示操作即可。
需要注意的是:

  • 由于官方限制,使用 MiLock 解锁前需要提前 7 天将小米账户与小米手机做绑定操作
  • 解锁操作后,Data 分区会被格式化,所有用户数据会丢失,手机会重置,需要提前备份

操作步骤如下:

  1. 插入手机卡,使用流量
  2. 设置 -> 我的设备 -> 全部参数 -> 连点 6 次 MIUI 版本,提示成功打开开发者模式
  3. 设置 -> 更多设置 -> 开发者选项
  4. 打开 USB 调试和设备解锁状态,操作绑定账号和设备
  5. 重启手机,按住锁屏键和音量下键,进入 fastboot 模式
  6. 连接数据线,在 PC 端操作 MiLock 解锁

2. 使用刷机包刷机、提取 Boot.img

由于后面步骤需要用系统匹配的 Boot.img 打补丁,所以要保证刷机包提取的 Boot.img 版本与系统一致,建议使用刷机包刷机再提取里面的 Boot.img 备用,刷机过程不详述,但要注意,使用 MiFlash 刷机时,右下角选项选第一个,防止刷机后上锁 BootLoader。提取 Boot.img 的步骤:

  1. 解压压缩包,进入 images 目录
  2. 复制 boot.img 或 init_boot.img (如有,优先选择) 到手机存储中备用

3. 安装 Magisk 、修补 Boot.img 并刷入

Magisk 在 Github 上开源,在 Releases 页下载 apk 并安装。操作步骤:

  1. 打开 Magisk APP,点击安装,选择“选择并修补一个文件”,选择上一个步骤存储到手机的 boot.img
  2. 修补完成后,将文件复制到 PC 端
  3. 在 Miflash 工具中找到 fastboot.exe 文件
  4. 手机进入 fastboot 模式,连接数据线至 PC,运行 fastboot devices 命令检测连接状态
  5. 运行 fastboot flash boot xxx.img 或 fastboot flash init_boot xxx.img
  6. 刷入完成后重启,进入系统后打开 Magisk APP,查看 Root 状态并在设置菜单

4. 使用 Magisk 刷入 LSPosed

LSPosed 是一个 hook 框架,需要在 Magisk APP 中刷入,在 Releases 页下载 zip 。操作步骤:

  1. 打开 Magisk APP,选择模块选项卡,选择从本地安装,选择 zip 文件并刷入
  2. 在 Magisk 的设置中,启用 Zygisk 选项

5. 对 APP 隐藏 ROOT

某些 APP 会检测 ROOT 行为来禁止使用,如银行类、游戏 APP,因此有必要对 ROOT 环境进行隐藏。这里使用到 Shamiko ,操作步骤:

  1. 在 LSPosed APP 中刷入 Shamiko 的 zip 包
  2. 在 Magisk 设置中确保“遵守排除列表”选项关闭,在“配置排除列表”中勾选需要隐藏的 APP
  3. 在 Magisk 设置中“隐藏 Magisk 应用”
  4. 下载安装 Hide My Applist ,注意在 LSPosed 中的作用域中只勾选系统框架
  5. 启动 Hide My Applist,进入“模板管理”,点击“创建黑名单模板”,第一个编辑列表中勾选需要隐藏对系统、对其他 APP 有侵入性的 APP,如 Magisk ,xx助手等,保存
  6. 返回 Hide My Applist 主界面,进去“应用管理”,选择需要隐藏 ROOT 行为的 APP,启动“启动隐藏”,在“已启动 0 个模板”的选项中勾选上一步骤创建的模板