4 步装好 KernelSU meta-overlayfs 元模块:让 /system 修改真正生效【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU改了/system下的文件,重启后全变回原样?问题多半出在:KernelSU 核心本身不做模块挂载,不装meta-overlayfs这类元模块(metamodule),模块的system目录根本不会被叠到系统分区上。本文带你把安装、确认、常见坑一次讲清。meta-overlayfs 元模块到底在做什么KernelSU 核心刻意不做挂载,把"送货"这活儿交给一个插件——元模块。开机时它把每个模块的内容送到对应分区,你看到的效果像一张双重曝光的照片:模块内容和原始系统合成一个画面,而原始分区底片从没被改动。想让某个系统文件"消失",就在模块里放一个同名零字节占位符(whiteout),OverlayFS 会把它当作已删除。它只负责"模块怎么被挂载",不负责模块内容本身,更不改/system分区里的任何字节。你需要元模块吗:三个问题判断如果你的模块要修改/system下的文件(覆盖应用、去预装、整目录替换)——需要装元模块,system目录必须靠它挂载才生效。如果你的模块只有开机脚本(post-fs-data.sh、service.sh之类)——不用动,脚本独立执行,与挂载无关。如果你的模块只用sepolicy.rule或system.prop——也不用装,这两样由 KernelSU 核心直接加载。拿不准时,直接看模块目录里有没有system文件夹:有,就需要。元模块安装流程:从下载到重启 4 步下载meta-overlayfs.zip——它是官方参考实现,用 OverlayFS 提供传统挂载方式。确认当前设备没有其他激活的元模块。KernelSU 同一时间只允许一个,装第二个会被直接拦下。打开 KernelSU Manager 应用,点页面上的悬浮按钮(➕),选中刚下载的 zip 确认安装。装法和普通模块完全一样。装完后直接重启设备。重启过程中挂载脚本会在 post-fs-data 阶段执行完,各启用模块的system目录已被叠到 system、vendor、product、system_ext、odm、oem 等分区上。如何确认模块真的挂载了拿到这两条证据就够了:打开 Manager 的 Module 页面,meta-overlayfs出现在模块列表里,并且带元模块的专属标识——说明它是当前激活的那个。查看符号链接/data/adb/metamodule,它应指向元模块目录。这条路径与模块 ID 无关,是排查"现在到底激活的是谁"最快的办法。有了这两条,再抽一个被覆盖的同名文件读一下,内容应该是模块侧的版本,而/system分区本身查不到任何改动。元模块装不上、模块不生效:先查这 4 个问题问:装第二个元模块被拒了?答:单实例限制,防止两套挂载逻辑打架。切换顺序是:卸载所有普通模块 → 卸载当前元模块 → 重启 → 装新的 → 重装普通模块 → 再重启一次。问:卸载了元模块,所有模块修改都不生效了?答:没有挂载者,所有模块的改动自然都不落地,但设备能正常开机。尽快装一个新的元模块;不打算换就别轻易卸载。问:元模块激活了,唯独某个模块的system没叠上去?答:检查该模块目录里有没有skip_mount(跳过挂载)或disable(禁用模块)标记文件,删掉对应标记再重启即可。问:全新装了 KernelSU,模块全都不工作?答:十有八九是没装元模块——没有它,模块一律不挂载。回 Module 页面确认meta-overlayfs是否在列表里,不在就先装上。想了解更多细节,可以翻 元模块指南 和 模块指南。meta-overlayfs是模块system目录通往/system的必经通道,装好并确认它在列表里,覆盖、删除、替换就都会按预期落地。【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
4 步装好 KernelSU meta-overlayfs 元模块:让 /system 修改真正生效【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU改了/system下的文件,重启后全变回原样?问题多半出在:KernelSU 核心本身不做模块挂载,不装meta-overlayfs这类元模块(metamodule),模块的system目录根本不会被叠到系统分区上。本文带你把安装、确认、常见坑一次讲清。meta-overlayfs 元模块到底在做什么KernelSU 核心刻意不做挂载,把"送货"这活儿交给一个插件——元模块。开机时它把每个模块的内容送到对应分区,你看到的效果像一张双重曝光的照片:模块内容和原始系统合成一个画面,而原始分区底片从没被改动。想让某个系统文件"消失",就在模块里放一个同名零字节占位符(whiteout),OverlayFS 会把它当作已删除。它只负责"模块怎么被挂载",不负责模块内容本身,更不改/system分区里的任何字节。你需要元模块吗:三个问题判断如果你的模块要修改/system下的文件(覆盖应用、去预装、整目录替换)——需要装元模块,system目录必须靠它挂载才生效。如果你的模块只有开机脚本(post-fs-data.sh、service.sh之类)——不用动,脚本独立执行,与挂载无关。如果你的模块只用sepolicy.rule或system.prop——也不用装,这两样由 KernelSU 核心直接加载。拿不准时,直接看模块目录里有没有system文件夹:有,就需要。元模块安装流程:从下载到重启 4 步下载meta-overlayfs.zip——它是官方参考实现,用 OverlayFS 提供传统挂载方式。确认当前设备没有其他激活的元模块。KernelSU 同一时间只允许一个,装第二个会被直接拦下。打开 KernelSU Manager 应用,点页面上的悬浮按钮(➕),选中刚下载的 zip 确认安装。装法和普通模块完全一样。装完后直接重启设备。重启过程中挂载脚本会在 post-fs-data 阶段执行完,各启用模块的system目录已被叠到 system、vendor、product、system_ext、odm、oem 等分区上。如何确认模块真的挂载了拿到这两条证据就够了:打开 Manager 的 Module 页面,meta-overlayfs出现在模块列表里,并且带元模块的专属标识——说明它是当前激活的那个。查看符号链接/data/adb/metamodule,它应指向元模块目录。这条路径与模块 ID 无关,是排查"现在到底激活的是谁"最快的办法。有了这两条,再抽一个被覆盖的同名文件读一下,内容应该是模块侧的版本,而/system分区本身查不到任何改动。元模块装不上、模块不生效:先查这 4 个问题问:装第二个元模块被拒了?答:单实例限制,防止两套挂载逻辑打架。切换顺序是:卸载所有普通模块 → 卸载当前元模块 → 重启 → 装新的 → 重装普通模块 → 再重启一次。问:卸载了元模块,所有模块修改都不生效了?答:没有挂载者,所有模块的改动自然都不落地,但设备能正常开机。尽快装一个新的元模块;不打算换就别轻易卸载。问:元模块激活了,唯独某个模块的system没叠上去?答:检查该模块目录里有没有skip_mount(跳过挂载)或disable(禁用模块)标记文件,删掉对应标记再重启即可。问:全新装了 KernelSU,模块全都不工作?答:十有八九是没装元模块——没有它,模块一律不挂载。回 Module 页面确认meta-overlayfs是否在列表里,不在就先装上。想了解更多细节,可以翻 元模块指南 和 模块指南。meta-overlayfs是模块system目录通往/system的必经通道,装好并确认它在列表里,覆盖、删除、替换就都会按预期落地。【免费下载链接】KernelSUA Kernel based root solution for Android项目地址: https://gitcode.com/GitHub_Trending/ke/KernelSU创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考