0d70cc8e58fc0a0efb719e8717a49dd20081452f
This is done like how vfs_read_hook, input_hook and execve_hook is disabled.
While this is not exactly the same thing, this CAN achieve the same results.
The complete disabling of all KernelSU hooks.
While this is likely unneeded, It keeps feature parity to non-kprobe builds.
adapted from upstream:
kernel: Allow to re-enable sucompat - 4593ae81c7
Rejected: https://github.com/tiann/KernelSU/pull/2506
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
SukiSU Ultra
基于 KernelSU 的安卓设备 root 解决方案
实验性! 使用风险自负!
这是非官方分支,保留所有权利 @tiann
但是,我们将会在未来成为一个单独维护的 KSU 分支
如何添加
在内核源码的根目录下执行以下命令:
使用 susfs-dev 分支(已集成 susfs,带非 GKI 设备的支持)
curl -LSs "https://raw.githubusercontent.com/ShirkNeko/SukiSU-Ultra/main/kernel/setup.sh" | bash -s susfs-dev
使用 main 分支
curl -LSs "https://raw.githubusercontent.com/ShirkNeko/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main
如何集成 susfs
- 直接使用 susfs-stable 或者 susfs-dev 分支,不需要再集成 susfs
钩子方法
- 此部分引用自 rsuntk 的钩子方法
-
KPROBES 钩子:
- 用于可加载内核模块 (LKM)
- GKI 2.0 内核的默认钩子方法
- 需要
CONFIG_KPROBES=y
-
手动钩子:
- 标准的 KernelSU 钩子:https://kernelsu.org/guide/how-to-integrate-for-non-gki.html#manually-modify-the-kernel-source
- backslashxx 的 syscall 手动钩子:https://github.com/backslashxx/KernelSU/issues/5
- 非 GKI 内核的默认挂钩方法
- 需要
CONFIG_KSU_MANUAL_HOOK=y
KPM 支持
- 我们基于 KernelPatch 去掉了和 KSU 重复的功能,仅保留了 KPM 支持
- 我们将会引入更多的兼容 APatch 的函数来确保 KPM 功能的完整性
开源地址: https://github.com/ShirkNeko/SukiSU_KernelPatch_patch
KPM 模板地址: https://github.com/udochina/KPM-Build-Anywhere
更多链接
基于 SukiSU 和 susfs 编译的项目
使用方法
普适的 GKI
请全部参考 https://kernelsu.org/zh_CN/guide/installation.html
Note
- 适用于如小米、红米、三星等的 GKI 2.0 的设备 (不包含魔改内核的厂商如魅族、一加、真我和 oppo)
- 找到更多链接里的 GKI 构建的项目。找到设备内核版本。然后下载下来,用TWRP或者内核刷写工具刷入带 AnyKernel3 后缀的压缩包即可
- 一般不带后缀的 .zip 压缩包是未压缩的,gz 后缀的为天玑机型所使用的压缩方式
一加
1.找到更多链接里的一加项目进行自行填写,然后云编译构建,最后刷入带 AnyKernel3 后缀的压缩包即可
Note
- 内核版本只需要填写前两位即可,如 5.10,5.15,6.1,6.6
- 处理器代号请自行搜索,一般为全英文不带数字的代号
- 分支和配置文件请自行到一加内核开源地址进行填写
特点
- 基于内核的
su和 root 访问管理 - 基于 5ec1cff 的 Magic Mount 的模块系统
- App Profile:将 root 权限锁在笼子里
- 恢复对非 GKI 2.0 内核的支持
- 更多自定义功能
- 对 KPM 内核模块的支持
许可证
kernel目录下的文件是 GPL-2.0-only。- 除
kernel目录外,所有其他部分均为 GPL-3.0 或更高版本。
赞助名单
- Ktouls 非常感谢你给我带来的支持
- zaoqi123 请我喝奶茶也不错
- wswzgdg 非常感谢对此项目的支持
- yspbwx2010 非常感谢
- DARKWWEE 感谢老哥的 100 USDT
如果以上名单没有你的名称,我会及时更新,再次感谢大家的支持
贡献
- KernelSU:原始项目
- MKSU:使用的项目
- RKSU:使用该项目的 kernel 对非GKI设备重新进行支持
- susfs4ksu:使用的 susfs 文件系统
- kernel-assisted-superuser:KernelSU 的构想
- Magisk:强大的 root 工具
- genuine:APK v2 签名验证
- Diamorphine:一些 rootkit 技能
- KernelPatch: KernelPatch 是 APatch 实现内核模块的关键部分
Languages
Kotlin
67.1%
C
20%
Rust
11.1%
Shell
0.9%
Makefile
0.4%
Other
0.4%