在使用 RockyLinux 系统时,你可能会遇到需要加载或卸载内核模块的情况。比如安装新硬件驱动、调试系统性能,或者排查兼容性问题。本文将带你从零开始,详细讲解 RockyLinux内核模块管理 的基本方法,即使你是 Linux 新手,也能轻松上手!
什么是内核模块?
内核模块是 Linux 内核的一部分功能代码,可以在系统运行时动态加载或卸载,而无需重启整个操作系统。例如:显卡驱动、网卡驱动、文件系统支持等,通常以
.ko文件形式存在。
常用命令介绍
在 RockyLinux 中,管理内核模块主要依赖以下几个命令:
lsmod:列出当前已加载的模块
modprobe:智能加载或卸载模块(推荐使用)
insmod/
rmmod:直接插入或移除模块(不处理依赖)
modinfo:查看模块的详细信息
1. 查看已加载的模块(lsmod)
使用
lsmod命令可以查看当前系统中所有已加载的内核模块:
$ lsmodModule Size Used byxt_conntrack 16384 1nf_conntrack 172032 1 xt_conntrackiptable_filter 16384 1ip_tables 32768 1 iptable_filterxfs 1556480 2sd_mod 61440 4...
输出中,“Used by” 列显示该模块是否被其他模块或进程使用。
2. 加载模块(modprobe)
假设你想加载一个名为
vboxdrv的 VirtualBox 驱动模块,可以使用:
$ sudo modprobe vboxdrv
modprobe会自动处理模块依赖关系,因此比
insmod更安全可靠。这也是我们推荐使用
modprobe的原因。
3. 卸载模块(modprobe -r)
要卸载某个模块,使用
-r参数:
$ sudo modprobe -r vboxdrv
注意:如果该模块正在被其他模块或进程使用,系统会拒绝卸载。你可以先用
lsmod检查依赖关系。
4. 查看模块信息(modinfo)
想了解某个模块的详细信息?比如版本、作者、参数等,使用
modinfo:
$ modinfo vboxdrvfilename: /lib/modules/5.14.0-70.26.1.el9_0.x86_64/misc/vboxdrv.koversion: 6.1.38_OSElicense: GPLauthor: Oracle Corporation...
5. 开机自动加载模块
如果你希望某个模块在系统启动时自动加载,可以将其添加到配置文件中:
# 创建配置文件$ echo 'vboxdrv' | sudo tee /etc/modules-load.d/vboxdrv.conf
系统会在每次启动时读取
/etc/modules-load.d/目录下的所有
.conf文件,并自动加载其中列出的模块。
常见问题与注意事项
不要随意卸载关键系统模块(如xfs、
ext4、
sd_mod),可能导致系统崩溃或无法访问磁盘。 使用
modprobe而非
insmod,因为它能自动处理依赖。 模块文件通常位于
/lib/modules/$(uname -r)/目录下。
总结
通过本文,你已经掌握了 RockyLinux内核模块管理 的核心技能,包括如何查看、加载、卸载模块,以及设置开机自动加载。这些知识对于日常运维、驱动调试和系统优化都非常重要。记住关键词:RockyLinux内核模块管理、内核模块加载卸载、RockyLinux驱动管理 和 lsmod modprobe用法,它们是你深入学习 Linux 系统管理的基础。
祝你在 RockyLinux 的世界里探索愉快!
