11. 内核与模块管理
本章节指导在 RHEL 9(主机名 LinuxDC)上使用 SecureCRT 进行内核和模块管理,配合 SecureFX 传输配置文件。内容涵盖内核版本管理(查看、更新、回滚)、内核模块管理(加载、卸载、自动加载)和内核参数调整(sysctl 和 GRUB 配置),全面实用,适合初学者快速掌握和运维人员日常维护。所有操作在 LinuxDC 环境中测试,确保实验一致性。
11.1 前提条件
- RHEL 9 已安装(参考第 1 章),主机名设置为
LinuxDC。 - 使用 SecureCRT 登录(SSH2 协议,端口 2222,参考第 9 章)。
- 使用 SecureFX 传输文件(SFTP 协议)。
- 具有 root 或 sudo 权限。
- 系统已订阅并启用 RHEL 仓库(参考第 2 章)。
💡 提示:内核管理需谨慎操作,建议在测试环境中实践,并创建快照备份。在 RHEL 10 中,内核更新支持更多实时补丁(kpatch)和自动化回滚选项,提升系统稳定性。
11.2 内核管理
11.2.1 查看内核版本
-
检查当前内核版本:
uname -r # 显示当前运行的内核版本 -
列出所有安装内核:
rpm -qa | grep kernel # 查看已安装内核包 dnf list installed kernel* # 列出内核相关包
✅ 检查点:输出示例:
5.14.0-162.6.1.el9.x86_64。
11.2.2 更新内核
- 更新到最新内核:
dnf update kernel -y # 更新内核包 reboot # 重启系统应用新内核
🧠 知识点:RHEL 9 支持多个内核共存,便于回滚。更新后验证:
uname -r显示新版本。
11.2.3 回滚内核
-
临时回滚:
grubby --set-default /boot/vmlinuz-<old_version> # 设置默认内核 reboot # 重启 -
或使用 GRUB 菜单回滚(开机时选择旧内核)。
💡 提示:在 RHEL 10 中,回滚工具如 grubby 支持更多自动化脚本集成,便于 CI/CD 环境。
11.3 内核模块管理
11.3.1 查看模块
- 检查已加载模块:
lsmod # 列出加载模块 modinfo vfat # 查看 vfat 模块详情
11.3.2 加载与卸载模块
-
加载模块:
modprobe vfat # 加载 vfat 模块 -
卸载模块:
modprobe -r vfat # 卸载 vfat 模块
⚠️ 注意:卸载前确认无依赖进程(
lsmod | grep vfat)。
11.3.3 配置自动加载
-
永久自动加载:
vim /etc/modules-load.d/vfat.conf # 创建配置文件 # 添加: vfat -
或使用 modprobe.d:
echo "vfat" > /etc/modules-load.d/vfat.conf
✅ 检查点:重启后
lsmod | grep vfat显示已加载。
11.4 内核参数调整
11.4.1 临时调整 sysctl 参数
- 临时设置:
sysctl -w kernel.sysrq=1 # 启用 sysrq
11.4.2 永久调整 sysctl 参数
- 永久配置:
vim /etc/sysctl.d/99-custom.conf # 创建配置文件 # 添加: kernel.sysrq=1 sysctl --system # 应用所有 sysctl 配置
🧠 知识点:sysctl 管理运行时参数。查看:
sysctl kernel.sysrq。
11.4.3 GRUB 配置调整
- 编辑 GRUB:
vim /etc/default/grub # 修改: GRUB_CMDLINE_LINUX_DEFAULT="quiet sysrq=1" grub2-mkconfig -o /boot/grub2/grub.cfg # 更新 GRUB 配置 reboot # 应用
💡 提示:GRUB 参数影响引导。在 RHEL 10 中,GRUB 支持更多安全引导选项,如增强的 UEFI 集成。
11.5 常见问题与排查
🔍 故障排查:
-
问题 1:内核更新失败
解决:检查仓库(dnf repolist)、空间(df -h /boot),或日志(journalctl -u dnf)。 -
问题 2:模块加载失败
解决:确认模块存在(modinfo vfat)或是否有依赖问题。 -
问题 3:参数未生效
解决:检查配置文件(/etc/sysctl.d/、/etc/default/grub)或重启系统。
11.6 实践任务
- 使用 SecureCRT 通过 SSH(端口 2222)登录
LinuxDC,检查当前内核版本。 - 更新内核并验证新版本。
- 加载
vfat模块并配置其自动加载。 - 配置
sysrq=1参数(临时和永久),验证生效。
✅ 检查点:
uname -r显示新内核,lsmod显示 vfat,sysctl kernel.sysrq输出 1。
11.7 自测问题
-
问题 1:如何查看当前内核版本?
答案:uname -r -
问题 2:如何配置模块自动加载?
答案:编辑/etc/modules-load.d/<模块>.conf,添加模块名(如vfat)。 -
问题 3:如何临时回滚到旧内核?
答案:grubby --set-default /boot/vmlinuz-<旧内核版本>,然后reboot。
🧾 总结:
本章完整介绍了 RHEL 9 内核与模块管理的核心操作,包括版本控制、模块操作和参数调整。掌握这些技能可优化系统性能与稳定性,为后续安全加固和端口管理提供坚实基础。