内核级 root 方案是什么——KernelSU 与传统方案的本质区别
一句话定义
KernelSU 是面向 Android GKI 设备的 root 解决方案,它工作在内核模式,直接在内核空间中为用户空间的应用授予 root 权限。名字里的 Kernel(内核)就是它的核心身份标识。
内核态和用户态,差别在哪
Android 系统里,普通应用都跑在「用户态」,权限受框架层层层约束;而内核是整个系统的仲裁者,握有最高控制权。传统 root 方案(如 Magisk)在用户空间提供 su 程序和守护进程,而 KernelSU 把 su 的授权逻辑直接实现在内核里。这意味着:
- 内核接口更底层:可以在内核模式下为任意进程添加硬件断点、拦截系统调用、访问进程物理内存——这些能力是用户态方案给不了的。
- 授权由内核强制执行:权限判断不依赖应用或守护进程的「自觉」,而是内核层面的强制规则,改不掉、绕不过。
- 普通应用察觉不到:只有被授权的应用才能访问或看到
su,其他应用完全无感。
三大核心能力
- 基于内核的 su 与 root 授权管理:授权列表由内核维护,未授权应用既用不了也看不见 su。
- 元模块(metamodule)系统:可插拔的模块基础设施,把「如何挂载、如何修改系统」从核心剥离出来交给独立的元模块(例如官方参考实现 meta-overlayfs),实现对
/system分区的无系统修改(systemless)。 - App Profile 权限配置:可以自定义 su 的 uid、gid、补充组、capabilities 与 SELinux 规则,按需只授予「部分 root 权限」,把权力关进笼子。
适合谁来用
- 设备内核为 5.10 及以上(出厂 Android 12 的 GKI 设备)、已经或准备解锁 bootloader 的玩家;
- 不满足于「全有或全无」的 root 授权、想对每个应用精细化限权的用户;
- 想写系统模块、需要稳定启动脚本环境的开发者。
KernelSU 的定位不是替代 Magisk——官方明确表示用户空间 root 方案已经足够好,KernelSU 的目标是给用户内核接口。两者关系与共存可能性见 与 Magisk 的关系与兼容性 附近的模块章节,以及 KernelSU 与 Magisk 兼容吗 一页。