KernelSU
外观
此條目需要补充更多来源。 (2025年8月3日) |
| 原作者 | 维术(tiann) |
|---|---|
| 開發者 | 维术及其他开发者 |
| 首次发布 | 2022年12月9日 |
| 编程语言 | C++、Java、Kotlin、C、Rust |
| 操作系统 | Android |
| 平台 | x86_64、x86、arm、arm64 |
| 语言 | 多语言 |
| 类型 | 自由软件、免费软件 |
| 许可协议 | GPL 3.0 |
KernelSU,有时简称ksu,是一个Android上的内核级root方案。[1][2][3]
特性
[编辑]KernelSU运行在内核空间,有以下优点:
- 和运行在用户空间的Magisk相比,检测难度更大。
- 它可以提供以前从未有过的内核接口。例如在内核模式下为任何进程添加硬件断点,在任何进程的物理内存中访问,在内核空间拦截任何系统调用等。
KernelSU还提供了一个基于OverlayFS的模块系统,兼容社区大部分Magisk模块,但部分模块可能需要做出兼容性更改。 但是,KernelSU不提供Zygisk支持,需要用户自行刷入社区提供的Zygisk解决方案(如ZygiskNext,NeoZygisk等)。
安装
[编辑]尽管KernelSU相比Magisk有诸多优势,但它的安装难度显著高于Magisk。
GKI2.0内核
[编辑]GKI模式
[编辑]直接刷入由KernelSU提供的通用内核,优点是保留了KernelSU的难以探测的特性,但部分厂商会对内核进行修改,在刷入后可能造成续航缩短、部分功能不可用甚至是无法开机。
LKM模式
[编辑]在KernelSU 1.0.0后,KernelSU提供LKM注入方式,通过可加载内核模块将KernelSU的模块直接加载到系统中,优点是可以直接利用原厂内核,兼容性更高,但这一过程需要对ramdisk进行修补,使得KernelSU更容易被检测到。
非GKI2.0内核
[编辑]由于非GKI内核的碎片化极其严重,因此通常没有统一的方法来编译它。在这种情况下,需要将KernelSU集成到内核源码中并编译内核。如果内核不开源,无法使用此方法。此方法最低支持到4.14版本的内核,更低的版本则需要手动移植。
参考文献
[编辑]- ^ 为什么KernelSU是未来root的最终解决方案?. 知乎. 2023-01-02.
- ^ Zachary Wander. Kernel Assisted Superuser (KernelSU) - The Final Frontier for SafetyNet and an Essential Developer Tool. 2018-12-10 [2024-05-19] (英语).
- ^ kernel-assisted-superuser - Kernel assisted means of gaining a root shell for Android. [2024-05-19].