三步装好 meta-overlayfs 元模块:让 KernelSU 模块真正改到 /system【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSUKernelSU 模块对 /system 的修改,要靠元模块(负责挂载的插件组件)完成挂载才会落地,没装它,模块里的 system 目录重启后不会生效。读完这篇文章,你能用 3 步装好 meta-overlayfs 元模块,并自己完成生效验证。🎯 装完元模块,你得到什么先说结论:装好之后,模块 system 目录里的文件替换、预装应用移除、整目录替换,都会在设备上体现出来,而 /system 分区本身一个字节都不动,重启后随时可以还原。为什么还要装一个东西?因为 KernelSU 核心自己不干挂载这活,它把这件事外包给一个"挂载承包商"——元模块。官方参考实现 meta-overlayfs 就是这样的承包商:开机 post-fs-data 阶段,它会把 /system、/vendor、/product、/system_ext、/odm、/oem 这些分区"垫上副本"。系统好比一本厚书,元模块给每一章垫一页新纸,你翻到的总是新纸,原纸毫发无损。这种做法叫 systemless(只改叠加层、不碰原始分区)。架构细节可看元模块指南。两个常用手法值得记住:删文件:在模块里执行mknod filename c 0 0生成同名零字节占位符,相当于在新纸那个位置打个洞——洞里看不到内容,原文件就此"隐身",但 /system 分区里它还在。这个洞叫 whiteout。整目录替换:对模块内的同名目录执行setfattr -n trusted.overlay.opaque -v y <TARGET>,把它标成 opaque(不合并)目录,叠加后该目录只保留模块内容,不再和系统侧合并。懒人做法:在customize.sh里声明REMOVE(删除列表)或REPLACE(替换列表)变量,KernelSU 会自动帮你建占位符、打标记。📋 先判断:你需要 meta-overlayfs 吗对照模块用到的能力,别盲目安装:模块用到的能力需要元模块?说明修改 /system 文件(换应用、去预装、换目录)需要system 目录没被挂载,改动就不会落地只用开机脚本(post-fs-data.sh、service.sh 等)不需要脚本由核心在对应阶段触发,与挂载无关sepolicy.rule 策略规则不需要核心直接加载策略规则system.prop 属性文件不需要属性被系统直接读取还有一条硬规则:同一时间只允许一个元模块在岗。系统只认一个"值班主管",装第二个会被直接拦下。真要换,顺序是:卸载全部普通模块 → 卸载当前元模块 → 重启 → 装新的 → 重装普通模块 → 再重启。⚡ 三步刷入 meta-overlayfs 并重启拿到安装包。下载 meta-overlayfs 模块 ZIP(常见文件名meta-overlayfs.zip)。它是官方参考实现,模块文件用 ext4 镜像存放,上面六类分区全覆盖。Manager 里装。打开 KernelSU Manager 应用,点屏幕上的悬浮加号按钮(➕),选中刚下载的 ZIP,确认安装。元模块装法和普通模块没有区别。重启等完成。开机过程中 post-fs-data 阶段,挂载脚本已把各模块的 system 目录铺到对应分区。✅ 逐项核查:确认元模块生效了打开 Module 页面,meta-overlayfs 出现在列表里,带元模块专属标识。符号链接/data/adb/metamodule指向元模块目录,它像一块固定"值班牌",不管 ID 叫什么,顺牌子就能找到当前在岗的元模块。同名文件替换:与系统同名的文件已被模块版本顶掉,读取返回模块侧内容。whiteout 删除:占位符所在位置的原文件已不可见,/system 分区本身未变。opaque 目录替换:打过 opaque 标记的目录,只剩模块自己的内容。🛠 三种"模块不生效"的排查手册故障 1:元模块被卸载,全部模块停摆现象:设备正常开机,但所有模块的改动都不见了。原因:卸载后所有模块失去挂载能力,没有承包商干活。动作:尽快装回一个元模块接上这个班;没有换的打算就别轻动它。故障 2:只有一个模块没挂载现象:元模块在岗,唯独这个模块的 system 目录没叠上去。原因:模块目录里留着skip_mount(跳过挂载)或disable(禁用模块)标记文件。动作:删掉对应标记文件,重启。故障 3:装完重启了,还是没效果现象:操作都做了,替换、删除没体现。原因:多半是元模块压根不在模块列表里,或中招于故障 2 的标记。动作:回 Module 页面确认元模块在列,再逐个查标记;FAQ 里"全新安装后模块不工作"的结论与此一致。模块目录的完整结构见模块指南。一句话收尾元模块是模块改动落到 /system 上的"值班主管":让 meta-overlayfs 出现在模块列表里,替换、删除、目录替换会自己生效;缺了它,模块的 system 目录永远不会落地。【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
三步装好 meta-overlayfs 元模块:让 KernelSU 模块真正改到 /system【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSUKernelSU 模块对 /system 的修改,要靠元模块(负责挂载的插件组件)完成挂载才会落地,没装它,模块里的 system 目录重启后不会生效。读完这篇文章,你能用 3 步装好 meta-overlayfs 元模块,并自己完成生效验证。🎯 装完元模块,你得到什么先说结论:装好之后,模块 system 目录里的文件替换、预装应用移除、整目录替换,都会在设备上体现出来,而 /system 分区本身一个字节都不动,重启后随时可以还原。为什么还要装一个东西?因为 KernelSU 核心自己不干挂载这活,它把这件事外包给一个"挂载承包商"——元模块。官方参考实现 meta-overlayfs 就是这样的承包商:开机 post-fs-data 阶段,它会把 /system、/vendor、/product、/system_ext、/odm、/oem 这些分区"垫上副本"。系统好比一本厚书,元模块给每一章垫一页新纸,你翻到的总是新纸,原纸毫发无损。这种做法叫 systemless(只改叠加层、不碰原始分区)。架构细节可看元模块指南。两个常用手法值得记住:删文件:在模块里执行mknod filename c 0 0生成同名零字节占位符,相当于在新纸那个位置打个洞——洞里看不到内容,原文件就此"隐身",但 /system 分区里它还在。这个洞叫 whiteout。整目录替换:对模块内的同名目录执行setfattr -n trusted.overlay.opaque -v y <TARGET>,把它标成 opaque(不合并)目录,叠加后该目录只保留模块内容,不再和系统侧合并。懒人做法:在customize.sh里声明REMOVE(删除列表)或REPLACE(替换列表)变量,KernelSU 会自动帮你建占位符、打标记。📋 先判断:你需要 meta-overlayfs 吗对照模块用到的能力,别盲目安装:模块用到的能力需要元模块?说明修改 /system 文件(换应用、去预装、换目录)需要system 目录没被挂载,改动就不会落地只用开机脚本(post-fs-data.sh、service.sh 等)不需要脚本由核心在对应阶段触发,与挂载无关sepolicy.rule 策略规则不需要核心直接加载策略规则system.prop 属性文件不需要属性被系统直接读取还有一条硬规则:同一时间只允许一个元模块在岗。系统只认一个"值班主管",装第二个会被直接拦下。真要换,顺序是:卸载全部普通模块 → 卸载当前元模块 → 重启 → 装新的 → 重装普通模块 → 再重启。⚡ 三步刷入 meta-overlayfs 并重启拿到安装包。下载 meta-overlayfs 模块 ZIP(常见文件名meta-overlayfs.zip)。它是官方参考实现,模块文件用 ext4 镜像存放,上面六类分区全覆盖。Manager 里装。打开 KernelSU Manager 应用,点屏幕上的悬浮加号按钮(➕),选中刚下载的 ZIP,确认安装。元模块装法和普通模块没有区别。重启等完成。开机过程中 post-fs-data 阶段,挂载脚本已把各模块的 system 目录铺到对应分区。✅ 逐项核查:确认元模块生效了打开 Module 页面,meta-overlayfs 出现在列表里,带元模块专属标识。符号链接/data/adb/metamodule指向元模块目录,它像一块固定"值班牌",不管 ID 叫什么,顺牌子就能找到当前在岗的元模块。同名文件替换:与系统同名的文件已被模块版本顶掉,读取返回模块侧内容。whiteout 删除:占位符所在位置的原文件已不可见,/system 分区本身未变。opaque 目录替换:打过 opaque 标记的目录,只剩模块自己的内容。🛠 三种"模块不生效"的排查手册故障 1:元模块被卸载,全部模块停摆现象:设备正常开机,但所有模块的改动都不见了。原因:卸载后所有模块失去挂载能力,没有承包商干活。动作:尽快装回一个元模块接上这个班;没有换的打算就别轻动它。故障 2:只有一个模块没挂载现象:元模块在岗,唯独这个模块的 system 目录没叠上去。原因:模块目录里留着skip_mount(跳过挂载)或disable(禁用模块)标记文件。动作:删掉对应标记文件,重启。故障 3:装完重启了,还是没效果现象:操作都做了,替换、删除没体现。原因:多半是元模块压根不在模块列表里,或中招于故障 2 的标记。动作:回 Module 页面确认元模块在列,再逐个查标记;FAQ 里"全新安装后模块不工作"的结论与此一致。模块目录的完整结构见模块指南。一句话收尾元模块是模块改动落到 /system 上的"值班主管":让 meta-overlayfs 出现在模块列表里,替换、删除、目录替换会自己生效;缺了它,模块的 system 目录永远不会落地。【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考