跳转到内容
搜索 Rocky Linux 文档

    浏览当前文档目录

    Rocky Linux 内核模块与自定义内核

    内核模块这一块最容易走偏的地方,是把「能查」当成「能改」:官方文档确实给了查看内核配置的方法,也确实给了自建内核的完整指南,但两者回答的不是同一个问题。本页先把官方给出的路径讲清楚,再谈第三方驱动的通用做法。

    内核配置怎么看:官方给出的方法

    Section titled “内核配置怎么看:官方给出的方法”

    官方文档在 Gemstones 的 Core 组里有一篇 View Current Kernel Configuration:它说明可引导内核的配置以 ASCII 文件形式保存在 /boot/config-*(用 uname -r 定位当前内核版本),并列出 lsmod、modinfo、sysctl 等查看运行中内核参数与模块的命令。

    读配置之前有三件事值得先明确,它们都属于通用工程判断:

    • 先对准版本:配置文件与模块目录都跟着具体内核版本走,先确认你在看的确实是当前运行的那个版本;
    • 区分静态与模块:同一个功能的两种存在形式,后续处理方式不同,看的时候就要分开记;
    • 把结论落到清单:读到的东西记进资产清单,而不是直接在运行时改文件里的值。

    需要自建或改动内核时,官方另有 Building and Installing Custom Linux Kernels 指南,内容覆盖内核源码与版本命名、构建依赖准备、内核配置、编译与安装,以及引导自定义内核后的验证。

    与上一节的分工可以直接这样理解:

    • 查看配置回答的是「当前这个内核里有什么」;
    • 自建内核回答的是「我要的内核怎么来」;
    • 两者互补,不能互相替代——想改一个编译期选项,只读配置文件是改不动的。

    引导与内核:Admin Guide 的对应章节

    Section titled “引导与内核:Admin Guide 的对应章节”

    官方 Admin Guide 的 System Startup 章覆盖引导流程(POST 与 MBR、GRUB2、内核与 systemd)和引导配置,并说明 GRUB2 的配置由 grub2-mkconfig 生成。

    下面几条是通用实践,不依赖具体发行版,也不构成对任何驱动可用性的判断:

    • 模块来源要可追:模块来自官方仓库、厂商仓库还是自行编译,必须记录在案,否则内核更新时无法判断依赖关系;
    • 内核更新与模块重建一起排期:更新内核前先确认依赖模块有没有匹配的新版本,避免更新之后设备直接不可用;
    • 保留可回退的旧内核:确认引导菜单里仍有可用条目、并且确实能起来,再谈清理旧版本;
    • 变更放进可回退窗口:内核与驱动相关的动作放在有快照的窗口内执行,回滚点先于变更准备好;
    • 先取证再处置:模块加载失败时先记录现象、日志与当前状态,再决定修复还是回退。
    • 「看了配置就等于改了配置」:查看方法是只读证据,要改编译期选项只能走自建内核这条路;
    • 「内核更新后模块自然跟着更新」:第三方模块与内核版本是一对一的关系,更新顺序安排错了会直接失去设备;
    • 「新内核装完就完事」:装完还要能引导、能加载依赖模块,验证缺一不可;
    • 「出问题先把安全机制关掉」:把强制访问控制或模块校验关掉,通常会把一个问题变成两个问题。