備 4.14+ 內(nèi)核 root:KernelSU 舊內(nèi)核適配完整指南)
老設(shè)備 4.14 內(nèi)核 rootKernelSU 舊內(nèi)核適配完整指南【免費(fèi)下載鏈接】KernelSUA Kernel based root solution for Android項(xiàng)目地址: https://gitcode.com/GitHub_Trending/ke/KernelSUKernelSU 是運(yùn)行在內(nèi)核空間的 Android root 方案官方只認(rèn) GKI通用內(nèi)核鏡像一套內(nèi)核通吃多設(shè)備5.10 的設(shè)備。你的老設(shè)備內(nèi)核 ≥ 4.14手動(dòng)集成后照樣能拿到 root。這是 KernelSU 舊內(nèi)核適配路線。30 秒自檢3 個(gè)問(wèn)題定位你的處境3 個(gè)問(wèn)題問(wèn)完路線就定了。bootloader 能解鎖嗎不能常見于華為系→ 停止所有路線都走不通能 → 問(wèn) 2。裝上 KernelSU 管理器后顯示 Not installed 嗎顯示 → 你的設(shè)備被官方支持直接走路線 A顯示 Unsupported → 問(wèn) 3。內(nèi)核版本 ≥ 4.14 嗎執(zhí)行adb shell uname -r看版本號(hào)前兩段如4.19.191-android11-8就是 4.19。低于 4.14 → 停止在官方回移基線之下不建議動(dòng)手≥ 4.14 → 先去社區(qū)列表搜機(jī)型搜到現(xiàn)成預(yù)編譯內(nèi)核走路線 C搜不到走路線 B本文主體。支持邊界速覽一張表官方基線是 5.10 的 GKI 內(nèi)核4.14–5.3 能跑但必須自己動(dòng)手4.14 以下不建議新手碰。設(shè)備場(chǎng)景結(jié)論推薦路線說(shuō)明出廠 Android 12 的 GKI 設(shè)備5.10官方支持A管理器里直接刷零編譯非 GKI 設(shè)備內(nèi)核 4.14–5.3可用需自行集成B官方已回移到 4.14手動(dòng)掛進(jìn)內(nèi)核即可社區(qū)列表里搜到你的機(jī)型可用C別人編譯并集成好的內(nèi)核拿來(lái)就用內(nèi)核低于 4.14未達(dá)基線無(wú)穩(wěn)妥路線得自己回移核心模塊翻車成本高邊界依據(jù)見 官方 FAQ 關(guān)于舊內(nèi)核的說(shuō)法最低支持到 4.14更老的版本需手動(dòng)回移。路線選擇三條適配路徑及怎么選多數(shù)老設(shè)備走 B動(dòng)手前花 1 分鐘查 C能省一整天的編譯。路線 A官方鏡像直刷只適合 GKI 設(shè)備5.10 內(nèi)核。成本幾乎為零下載對(duì)應(yīng) boot.img 直接刷或在管理器里用 LKM可加載內(nèi)核模塊模式不替換原內(nèi)核打補(bǔ)丁。老設(shè)備走不到這條跳過(guò)。路線 B舊內(nèi)核手動(dòng)移植判斷標(biāo)準(zhǔn)就兩條內(nèi)核 ≥ 4.14且內(nèi)核源碼公開、你能編出可啟動(dòng)的 boot 鏡像。滿足就按第 6 節(jié)的最小步驟做。非 GKI 集成教程是官方參照注意它明確要求用 v0.9.5——v1.0 起官方已放棄非 GKI 支持。路線 C社區(qū)補(bǔ)丁 / 預(yù)編譯非官方支持設(shè)備列表收錄了上百臺(tái)老設(shè)備的現(xiàn)成內(nèi)核Redmi、Poco、OnePlus、Pixel 都有。按機(jī)型代號(hào)搜索搜到就用省下自己編譯搜不到走 B。實(shí)戰(zhàn)最小可行移植步驟用 kprobe內(nèi)核自帶的掛鉤機(jī)制方式集成5 步跑通每步都有驗(yàn)收點(diǎn)。目的先有一個(gè)能編譯的基線。動(dòng)作拿到你設(shè)備的公開內(nèi)核源碼原樣編出一個(gè)可啟動(dòng)的 boot 鏡像。預(yù)期不加任何修改就能正常開機(jī)。目的把 KernelSU 掛進(jìn)內(nèi)核源碼樹。動(dòng)作在內(nèi)核源碼根目錄克隆倉(cāng)庫(kù)并切到最后一個(gè)支持非 GKI 的版本git clone https://gitcode.com/GitHub_Trending/ke/KernelSU cd KernelSU git checkout v0.9.5然后回到內(nèi)核源碼根目錄執(zhí)行bash KernelSU/kernel/setup.sh v0.9.5。預(yù)期setup 腳本自動(dòng)建好drivers/kernelsu軟鏈并在 Makefile、Kconfig 中加好CONFIG_KSU條目。 3.目的打開內(nèi)核鉤子。動(dòng)作在內(nèi)核配置里確認(rèn)CONFIG_KPROBESy、CONFIG_HAVE_KPROBESy、CONFIG_KPROBE_EVENTSy并在你的 defconfig 設(shè)CONFIG_KSUy選項(xiàng)定義見 kernel/Kconfig。預(yù)期kprobe 全開無(wú)需手動(dòng)改 4 個(gè)內(nèi)核文件。 4.目的裝一個(gè)自救開關(guān)。動(dòng)作按官方教程給drivers/input/input.c的input_handle_event打安全模式補(bǔ)丁。預(yù)期開機(jī)畫面出現(xiàn)后連按音量減 3 次以上可進(jìn)安全模式、禁用模塊防啟動(dòng)循環(huán)。 5.目的驗(yàn)證。動(dòng)作編出新 boot 鏡像先f(wàn)astboot boot boot.img臨時(shí)測(cè)試fastboot 是 bootloader 模式下的刷機(jī)工具此命令只寫內(nèi)存、不落分區(qū)。預(yù)期正常開機(jī)、管理器顯示 Not installed、su可用。全過(guò)再進(jìn)入安全刷寫。翻車排查啟動(dòng)循環(huán)與失效自救翻車就兩類刷進(jìn)去起不來(lái)或者起來(lái)了但沒(méi)生效。按癥狀對(duì)號(hào)入座。刷入新鏡像后卡在 logo啟動(dòng)循環(huán)→ 最可能原因鏡像壓縮格式與原 boot 不一致或內(nèi)核 kprobe 本身有問(wèn)題。30 秒自救立即重刷備份的 stockboot.img恢復(fù)開機(jī)再核對(duì)壓縮格式啟動(dòng)循環(huán)自救指南列了全部情況。能開機(jī)但管理器仍顯示 Unsupported 或su無(wú)反應(yīng)→ 最可能原因CONFIG_KSU沒(méi)設(shè)為y或誤用了 v1.0 之后的主線版本。30 秒自救查 defconfig 和 checkout 的 tag重新編譯先別動(dòng)分區(qū)。裸集成能開機(jī)一裝模塊就循環(huán)重啟→ 最可能原因模塊與老內(nèi)核的掛載機(jī)制沖突。30 秒自救開機(jī)畫面處連按音量減進(jìn)安全模式禁用或刪除問(wèn)題模塊。fastboot flash成功重啟后內(nèi)核版本卻沒(méi)變→ 最可能原因A/B 設(shè)備沒(méi)刷到活動(dòng)槽或刷錯(cuò)了分區(qū)。30 秒自救重刷后adb shell uname -r核對(duì)版本A/B 設(shè)備確認(rèn)當(dāng)前 slot。安全刷寫清單驗(yàn)證 回滾先臨時(shí)、后永久、留后路三點(diǎn)齊了再碰分區(qū)。刷寫前備份 boot 分區(qū)從系統(tǒng)導(dǎo)出 stockboot.img沒(méi)有 ADB root 就從官方固件包提取存到電腦上。先以fastboot boot boot.img臨時(shí)測(cè)試只寫內(nèi)存重啟即恢復(fù)原狀確認(rèn)能開機(jī)、su生效。確認(rèn)無(wú)誤后再永久刷寫fastboot flash boot boot.img然后fastboot reboot。留好回滾路徑啟動(dòng)循環(huán)時(shí)重刷第 1 步的 stockboot.img即可恢復(fù)出廠內(nèi)核。刷好后別裝來(lái)路不明的模塊——root 權(quán)限的模塊是變磚頭號(hào)原因。結(jié)尾行動(dòng)清單先做 30 秒自檢確認(rèn)走 A、B 還是 C動(dòng)手前備份 boot 分區(qū)一切驗(yàn)證用fastboot boot臨時(shí)跑集成只用 v0.9.5開CONFIG_KSUy和安全模式補(bǔ)丁。社區(qū)入口非 GKI 集成教程與非官方支持設(shè)備列表。翻車前先搜一遍大概率有人踩過(guò)同樣的坑。【免費(fèi)下載鏈接】KernelSUA Kernel based root solution for Android項(xiàng)目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考