以下内容基于 KernelSU 官方文档。官方中提供了非常详细的说明,同时我会根据自己的经验以及当前的情况,对官方文档中的内容做部分修改,方便大家理解。
建议大家优先阅读官方文档。
https://kernelsu.org/zh_CN/guide/what-is-kernelsu.html
什么是 KernelSU?
KernelSU 是 Android GKI 设备(以下简称为手机)的 root 解决方案,它工作在内核模式,并直接在内核空间中为用户空间应用程序授予 root 权限,这是它最大的功能性特点。
(图源开发者)
KernelSU 还提供了一个基于 overlayfs 的模块系统,允许您加载自定义插件到系统中。它还提供了一种修改 /system 分区中文件的机制。
因此,KernelSU 可以使用大部分 Magisk 模块,你也可以在 KernelSU 中安装 Lsposed 框架进而使用 XPosed 模块。此外,由于这是一个基于内核的 ROOT 解决方案, KernelSU 拥有极强的屏蔽第三方软件 ROOT 检测的能力。
(图源开发者)
初次安装 KernelSU 的步骤如下
① 解除手机的 BootLoader 锁定(简称BL锁)
② 下载 KernelSU 提供的内核文件
③ 使用电脑,通过 Fastboot 命令刷入内核
* 和 Magisk 框架的刷入步骤比较类似
前提
打开手机系统设置,找到硬件信息,确定当前系统的内核版本是 5.10 及其以上的版本。
如果你的设备官方内核低于 5.10 ,那就需要自己去编译适用于 KernelSU 的内核,过程较为复杂,本篇不做介绍。详细的可以看官方介绍的内核编译教程:
https://kernelsu.org/zh_CN/guide/unofficially-support-devices.html
下面是 KernelSU 的安装攻略。
一、备份手机的数据
将当前手机下的所有重要数据备份到电脑中
二、解除设备的 BootLoader 锁定
请去手机厂商的官网找到申请解锁的入口,并进行解锁操作(此过程会清除所有数据)
小米手机申请解锁入口:
https://www.miui.com/unlock/index.html
三、备份手机原厂的 boot.img
在进行刷机操作之前,你必须先备份好自己的原厂 boot.img,最好记住官方的内核版本版本号。如果你后续刷机出现了任何问题,你都可以通过使用 fastboot 刷回原厂 boot 来恢复系统。(如果出现问题,在解锁之后,也可以通过直接线刷官方刷机包的形式恢复。)
四、下载安装 KernelSU 应用
下载地址
https://www.coolapk.com/apk/me.weishu.kernelsu
五:下载 KernelSU 提供的内核文件
进入下载地址:
https://github.com/tiann/KernelSU/releases
找到和你当前系统内核版本相同的文件。比如 Redmi K50Ultra 的内核版本是 5.10.101,那么你就应该下载下图所示的文件(注意是 android 单词开头的文件),把这三个文件都下载到本地。
如果某些机型的官方内核版本过于特别,导致在下载列表中没有找到完全一致的,那就下载版本差别最小的。比如你的内核版本是 5.10.128,那可以试试下载 5.10.101或者 5.10.136 的,理论上来说,5.10.XXX 都可以试试,优先考虑版本差别最小的。
请注意:内核版本与 Android 版本并不一定相同!
如果您发现您的内核版本是 android12-5.10.101,然而你 Android 系统的版本为 Android 13 或者其他;请不要觉得奇怪,因为 Android 系统的版本与 Linux 内核的版本号不一定是一致的;Linux 内核的版本号一般与设备出厂的时候自带的 Android 系统的版本一致,如果后续 Android 系统升级,内核版本一般不会发生变化。如果你需要刷机,请以内核版本为准!!
三个文件,用哪一个?
下图箭头所指位置的英文 .lz4、.gz,代表官方 boot.img 内核的两种不同的压缩格式,如果没有这两个英文,就说明没有压缩。请检查官方 boot.img 的内核压缩格式,然后使用和官方压缩格式相同的文件。例如 lz4、gz;如果是用不正确的压缩格式,刷入 boot 后可能无法开机。
如何知道自己手机内核的压缩格式?
您可以通过 magiskboot 来获取你原来 boot 的压缩格式;当然您也可以询问与您机型相同的其他更有经验的童鞋。另外,内核的压缩格式通常不会发生变化,如果您使用某个压缩格式成功开机,后续可优先尝试这个格式。
按照官方以及网友的说法,小米设备通常使用 gz 格式或者不压缩的。此外,采用高通骁龙处理器的一般压缩格式是不压缩的,采用联发科处理器的一般是 .gz 格式压缩。
如果一个格式的文件无法开机,可以换用另外一个格式的。
如果使用某个压缩格式可以成功开机,后续升级可继续用这个格式。
谷歌 Pixel 系列手机在这个步骤中有些特殊,但是由于国内用户量太少,这里不做说明,想了解的请去看官方教程。
六:在电脑上解压缩 KernelSU 提供的内核文件
一定要记得解压缩!!!
(解压缩之后得到的文件)
七、准备Fastboot相关工具
下载谷歌官方 Fastboot 工具
https://cookfans.lanzouw.com/igrtO10x8w4j
解压缩上述工具,得到如下图所示的文件列表
将解压缩之后的 KernelSU 提供的内核文件移动到谷歌官方 Fastboot 工具的这个列表中。(如下图所示)
为了方便后续操作,请将这个解压缩之后的 KernelSU 提供的内核文件的文件名重命名为 boot.img(如下图所示)
手机进入 FastBoot 模式(同时按下电源键和音量键 –),然后使用数据线链接上电脑