目 录CONTENT

文章目录

小米手机安装 KernelSU 教程:boot 与 init_boot 刷入命令详解

Violet
2026-10-26 / 0 评论 / 0 点赞 / 1 阅读 / 13908 字

本文以小米手机为例,完整讲一遍 KernelSU 的安装与刷入流程,并把 boot 和 init_boot 两种情况的刷入命令分开说明。内容基于 2026 年 10 月的 KernelSU 官方文档与 v3.3.1 版本。

⚠️ 风险提示:解锁 Bootloader 会清空手机全部数据,刷错镜像可能导致无法开机(卡第一屏、反复重启)。操作前请备份数据,并确认你清楚每一步在做什么。由此带来的保修、数据损失风险需自行承担。


一、KernelSU 是什么

KernelSU 是一个面向 Android GKI 设备的 Root 方案。和 Magisk 不同,它工作在内核态,直接在内核里给用户空间的应用授予 Root 权限。

从 0.9.0 开始,KernelSU 在 GKI 设备上有两种运行模式:

模式 原理 适合
LKM 模式 不替换原内核,以可加载内核模块的形式加载 KernelSU 手机首选(官方推荐)
GKI 模式 用 KernelSU 提供的通用内核镜像替换原内核 模拟器、WSA、Waydroid,或 LKM 用不了的设备

LKM 模式的好处:不动原内核、升级 KernelSU 可直接在管理器里装、系统 OTA 后可「安装到未使用的槽位」,也能临时卸载。

💡 关于新版本的注意点:KernelSU 从 v3.0.0 开始,GitHub Release 里只提供管理器 APK、ksud 命令行工具和各 KMI 的 LKM 模块(.ko),不再附带 GKI 的 boot.img 和 AnyKernel3 刷机包(最后一次附带是 v2.1.2)。所以对小米手机来说,LKM 模式是现在的主流做法,本文也以 LKM 为主。另外,3.0 之后修改 /system 的模块需要先装「元模块」(如官方的 meta-overlayfs)。

社区还有 KernelSU-Next、SukiSU-Ultra 等分支,功能各有扩展,但刷入思路相同,本文只讲官方版。


二、准备工作

1. 解锁 Bootloader(小米解锁工具)

这是整个流程的前提,也是小米手机最难的一步:

  • 中国大陆版:小米在 2025 年 9 月 30 日发布公告,社区解锁不再开放新的答题场次,自 2025 年 12 月 31 日起关闭社区解锁申请通道和解锁工具下载入口,停止解锁服务。也就是说,目前还没解锁的国行澎湃 OS 设备,已经无法通过官方途径解锁。在此之前,国行需要小米社区等级达标并答题,通过后每个账号每年只能解锁 1 台设备。
  • 国际版:在小米社区 App 里申请解锁权限(无需答题),同样每个账号每年限 1 台。

已经拿到权限的话,官方解锁流程是:

  1. 手机插入有效的 SIM 卡,登录有解锁权限的小米账号;
  2. 进入「设置 → 开发者选项 → 设备解锁状态」,点「绑定账号和设备」;
  3. 等待官方要求的时长(MIUI 时代一般为 168 小时,部分账号会更长),期间保持联网、不要换账号;
  4. 关机后按住 音量下 + 电源键 进入 Fastboot(屏幕出现 FASTBOOT 字样);
  5. 在电脑上打开小米解锁工具(Mi Unlock),登录同一账号,连接手机,点「解锁」。

⚠️ 解锁会清空手机数据!另外,已解锁的国行设备要注意官方公告中提到的「检测是否解锁的系统更新」,安装后可能无法进入系统,解锁状态下请谨慎升级系统。

2. 电脑端工具

下载 Google 官方的 Android SDK Platform-Tools(含 adb 和 fastboot),解压后在该目录打开终端:

adb version
fastboot --version

手机端打开「开发者选项 → USB 调试」,连接电脑后确认:

adb devices

3. 安装 KernelSU 管理器,检查是否支持

从 KernelSU GitHub Releases 下载管理器 APK(当前最新为 v3.3.1)并安装:

  • 显示 未安装(Not installed):设备官方支持,可以继续;
  • 显示 不支持(Unsupported):需要自己编译内核,KernelSU 不会提供现成镜像。

4. 查看内核版本(KMI)

adb shell uname -r

例如 5.10.101-android12-9-g30979850fc20,它的 KMI 是 5.10-android12-9,其中前缀 android12-5.10 决定了用哪个 LKM 模块。注意:内核版本 ≠ Android 版本,一台升级到 Android 14 的手机,内核可能仍是 android12-5.10,一切以内核版本为准。

当前 KernelSU(v3.3.1)的 LKM 支持以下 KMI(可用 ksud supported-kmis 查看):android12-5.10、android13-5.10、android13-5.15、android14-5.15、android14-6.1、android15-6.6、android16-6.12、android17-6.18。


三、关键:我的小米是 boot 还是 init_boot?

按 Android 官方文档:出厂搭载 Android 13 的 GKI 设备,把通用 ramdisk 从 boot 镜像里拆了出来,放进独立的 init_boot 分区;而从 Android 12 升级上来的设备,ramdisk 仍在 boot 里,没有 init_boot。

KernelSU 的 LKM 模式修改的正是 ramdisk,所以:

对比项 boot init_boot
适用设备 出厂 Android 12 的 GKI 设备(含后来升级到 13+ 的) 出厂 Android 13 及以上的 GKI 设备
小米示例 小米 12(cupid),出厂 Android 12 小米 13(fuxi)、小米 14 系列,出厂 Android 13/14
LKM 要修补的镜像 boot.img init_boot.img
镜像里有什么 内核 + ramdisk 只有通用 ramdisk(内核仍在 boot 里)
刷入命令 fastboot flash boot ... fastboot flash init_boot ...
能否 fastboot boot 临时启动 可以(设备支持时) 不行,只能直接刷入

最直接的判断方法是看分区表:

adb shell ls /dev/block/by-name | grep init_boot
  • 输出 init_boot_a、init_boot_b:有 init_boot,修补 init_boot.img;
  • 没有任何输出:修补 boot.img。

💡 GKI 模式(替换内核)则永远操作 boot 分区,与是否有 init_boot 无关。


四、从小米官方 ROM 里提取镜像

一定要用和手机当前系统版本完全一致的官方 ROM(在「设置 → 我的设备」里核对 OS 版本号和地区代码,比如小米 13 国行是 ...CNXM,国际版是 ...MIXM)。

线刷包(Fastboot ROM,.tgz):直接拿

解压线刷包,images 文件夹里就有 boot.img,新机型还会有 init_boot.img,直接复制出来即可。目录结构大致是:

fuxi_images_OS2.x.x.x.xxxCNXM_15.0/
├── flash_all.bat / flash_all.sh
├── flash_all_except_data_storage.bat / .sh
├── flash_all_lock.bat / .sh
└── images/
    ├── boot.img
    ├── init_boot.img   ← 出厂 Android 13+ 的机型才有
    └── ...

卡刷包(OTA zip,内含 payload.bin):用 payload-dumper-go

# 先列出包里的分区
payload-dumper-go -l ota.zip

# 只提取 boot 和 init_boot 到 out 目录
payload-dumper-go -p boot,init_boot -o out ota.zip

把提取出来的原版镜像另外存一份,后面卸载、救砖都要用。


五、修补镜像(LKM 模式)

方法 A:用 KernelSU 管理器修补(推荐)

  1. 把 boot.img(小米 12 这类)或 init_boot.img(小米 13 这类)传到手机:
adb push init_boot.img /sdcard/Download/
  1. 打开 KernelSU 管理器,点右上角安装图标,选「选择一个文件」,选中刚才的镜像,管理器会自动修补。
  2. 3.3.0 起,首次无 Root 安装时可以勾选「备份为原厂镜像」,以后卸载时可一键还原。
  3. 按管理器提示的输出路径,把修补后的文件拉回电脑:
adb pull /sdcard/Download/<修补后的文件名>.img

方法 B:用 ksud 命令行修补

在 GitHub Release 下载对应电脑系统的 ksud(Windows、macOS、Linux 都有),然后:

# boot 机型(如小米 12,内核 android12-5.10)
ksud boot-patch -b boot.img --kmi android12-5.10

# init_boot 机型(如小米 13,按你的 uname -r 填 KMI)
ksud boot-patch -b init_boot.img --kmi android13-5.15

不指定 -o 时输出到当前目录,可用 --out-name 指定输出文件名。--kmi 一定要和 uname -r 查到的一致,不确定就先用 ksud supported-kmis 核对。


六、刷入命令(boot 与 init_boot 分开看)

先进入 Fastboot:手机关机后按住 音量下 + 电源,或者开机状态下执行:

adb reboot bootloader
fastboot devices

查看当前槽位(小米 12、13 都是 A/B 分区):

fastboot getvar current-slot

默认情况下,fastboot flash boot / fastboot flash init_boot 会写入当前活动槽位,一般不需要手动写 _a / _b。

6.1 boot 机型(以小米 12 为例)

# 刷入修补后的 boot 镜像(写入当前槽位)
fastboot flash boot kernelsu_patched_boot.img

# 也可以明确指定槽位,例如当前槽位是 a
fastboot flash boot_a kernelsu_patched_boot.img

# 重启
fastboot reboot

先临时启动试一下(可选):boot 机型如果支持 fastboot boot,可以不写入分区、只从内存启动一次,有问题直接重启就恢复:

fastboot boot kernelsu_patched_boot.img

注意:并不是所有设备都支持 fastboot boot;临时启动成功后,可以在管理器里用「直接安装」把 KernelSU 正式装进去。

6.2 init_boot 机型(以小米 13 为例)

# 刷入修补后的 init_boot 镜像(写入当前槽位)
fastboot flash init_boot kernelsu_patched_init_boot.img

# 或明确指定槽位
fastboot flash init_boot_a kernelsu_patched_init_boot.img

# 重启
fastboot reboot

⚠️ init_boot 只有 ramdisk、没有内核,不能用 fastboot boot 临时启动,只能直接刷入。所以刷之前务必确认原版 init_boot.img 已备份。

⚠️ 千万别刷错分区:init_boot 机型把修补后的 init_boot 镜像刷进 boot(或反过来),都会导致无法开机。

6.3 A/B 槽位小贴士

fastboot getvar current-slot   # 查看当前槽位:a 或 b
fastboot set_active a          # 切换活动槽位(救砖时可能用到)

系统 OTA 之后,可以在管理器里选「安装到未使用的槽位」,重启后直接带着 KernelSU 进入新系统,不用重新手动刷。


七、备选方案:GKI 模式与第三方 Recovery

如果 LKM 用不了,官方文档还提供 GKI 模式:

  • fastboot 刷 GKI boot.img:fastboot flash boot boot.img(GKI 模式永远刷 boot 分区,要选对 KMI、安全补丁级别和压缩格式,小米通常是 gz 或未压缩);
  • 第三方 Recovery(如 TWRP)刷 AnyKernel3 包:进入 TWRP 后执行
adb sideload AnyKernel3-<版本>.zip

或者把 zip 放到 /sdcard 在 TWRP 界面里安装; - 已有 Root 时也可以用 Kernel Flasher 等 App 刷 AnyKernel3 包。

再次提醒:官方从 v3.0.0 起已不再在 Release 中附带 GKI 镜像和 AnyKernel3 包,新版本使用 GKI 模式需要自己编译或另找来源,普通用户直接用 LKM 即可。


八、验证是否成功

  1. 开机后打开 KernelSU 管理器,首页不再显示「未安装」,而是显示已工作的状态和版本号,即为成功;
  2. 用命令行确认 Root:
adb shell
su
id

输出里出现 uid=0(root) 即可。如果 su 被拒绝,到管理器的「超级用户」列表里给 Shell 授权后再试。


九、卸载 / 恢复原厂镜像

方法一:管理器一键还原。在管理器里选「卸载 → 恢复原厂镜像」。如果之前通过「直接安装」或「备份为原厂镜像」留有备份(保存在 /data/adb/ksu/ksu_backup_<SHA1>),会直接还原。

方法二:ksud 生成原版镜像:

ksud boot-restore -b kernelsu_patched_init_boot.img

方法三:fastboot 刷回原版(最稳):

# boot 机型(小米 12)
fastboot flash boot boot.img

# init_boot 机型(小米 13)
fastboot flash init_boot init_boot.img

fastboot reboot

十、变砖了怎么办

1. 刷完镜像无法开机

常见原因:镜像格式不对、刷错分区、KMI 不匹配、用了和系统版本不一致的 ROM 提取的镜像。按第九节刷回原版 boot / init_boot 即可,这也是为什么一开始要备份原版镜像。

2. 装了模块后无法开机

  • 安全模式:开机看到第一屏后,连续按音量下键 3 次以上(按一下松一下,不是长按),KernelSU 会禁用所有模块;进系统后在管理器里卸载问题模块。
  • ADB 处理(还能拿到 Root Shell 时):
adb shell
su
ksud module list
ksud module disable <模块ID>
ksud module uninstall <模块ID>
reboot
  • TWRP 手动清理(完全进不了系统时):
mount /data
rm -f /data/adb/ksud
mount /metadata
rm -f /metadata/ksu/modules.rc
rm -f /metadata/watchdog/ksu/modules.rc
reboot

3. 终极方案:小米线刷包 / MiFlash

如果以上都不行,用和机型对应的官方线刷包整包刷机。手机进入 Fastboot,在线刷包根目录运行脚本(或用 MiFlash 选择线刷包根目录,不要选 images 子目录):

脚本 作用
flash_all.bat / flash_all.sh 刷全部分区,清空数据,保持 BL 解锁
flash_all_except_data_storage.bat / .sh 刷全部分区,保留数据
flash_all_lock.bat / .sh 刷全部分区并重新锁定 Bootloader

🛑 不要用 flash_all_lock! 一是重新上锁后想再 Root 就得重新解锁,而国行官方解锁通道已关闭,锁上就很难再解开;二是系统和锁状态不匹配时上锁,可能直接导致手机无法开机。


总结

  • 先用 adb shell ls /dev/block/by-name | grep init_boot 判断机型:有 init_boot 就刷 init_boot,没有就刷 boot;
  • 小米 12 这类出厂 Android 12 的机型:修补 boot.img,用 fastboot flash boot;
  • 小米 13/14 这类出厂 Android 13+ 的机型:修补 init_boot.img,用 fastboot flash init_boot;
  • 镜像必须来自与当前系统完全一致的官方 ROM,原版镜像务必留好;
  • 恢复优先刷回原版镜像,实在不行再用 flash_all 或 flash_all_except_data_storage,别用 flash_all_lock。

参考资料:KernelSU 官方安装文档、KernelSU 救砖文档、Android 官方 Generic boot 分区说明。

0

评论区