[系統(tǒng)進階指南 Vol.4]KernelSu的概念與安裝方法教程

什么是Android內(nèi)核:
內(nèi)核即Linux Kernel,安卓系統(tǒng)為運行在Linux Kernel上的一系列系統(tǒng)服務(wù)進程
KernelSU原理和特性:
原理:通過自定義內(nèi)核,直接在內(nèi)核中賦予目標進程Root權(quán)限
特性:基于內(nèi)核的SU和權(quán)限管理,基于overlayfs的模塊系統(tǒng)
*在以前版本的KernelSU中,由于Android碎片化嚴重以及LinuxKernel不同版本沒有兼容性且KernelSU沒有鑒權(quán)系統(tǒng)導(dǎo)致實現(xiàn)和使用困難,但GKI2.0(Gerneric Kernel Image,通用內(nèi)核鏡像)帶來了內(nèi)核的通用性,使得KernelSU能夠通用
KernelSU的優(yōu)缺點:
優(yōu)點:可在WSA使用,GKI設(shè)備無需自行修補鏡像,可躲避Root檢測(僅限于su,但使用模塊會檢測overlayfs)
缺點:僅支持GKI2.0設(shè)備(內(nèi)核版本5.10以上)4.14+以上的舊內(nèi)核需自行編譯,KernelSU啟用模塊后Magisk無法工作(但只使用KernelSU的su可同時工作)
如何安裝KernelSU:
1.檢查設(shè)備是否支持KernelSU
下載并安裝管理器,若管理器提示"不支持"則設(shè)備不支持KernelSU,需自行編譯內(nèi)核,若管理器提示"未安裝"則設(shè)備支持KernelSU
2.查看KMI(Kernel Module Interface)
KMI必須相同,因相同KMI的內(nèi)核才能夠兼容,刷入不同KMI的內(nèi)核會導(dǎo)致死機
內(nèi)核及KMI版本:
Version.PatchLevel.Sublevel-AndroidRelease_
內(nèi)核版本:w.x.y-zzz_
KMI版本:w.x-zzz
*內(nèi)核版本不一定與Android系統(tǒng)版本相同,請認準內(nèi)核版本
3.安裝KernelSU
3.1.使用第三方Rec安裝
下載與手機內(nèi)核版本匹配的以AnyKernel3開頭的zip刷機包
進入第三方Rec(如TWRP),選擇刷機包刷入以安裝
3.2.使用fastboot刷寫KernelSU提供的boot.img
需下載文件名與設(shè)備內(nèi)核相同且內(nèi)核壓縮格式與設(shè)備內(nèi)核相同的boot.img鏡像
請先備份boot.img!
測試boot.img是否可用:
fastboot boot boot.img
刷入boot.img:
adb reboot bootloader
fastboot flash boot boot.img
3.3.使用內(nèi)核刷寫APP(如Franco Kernel Manager)安裝
3.4.手動修補boot.img安裝