可使用lsmod命令查看已加载内核模块,它读取/proc/modules并输出模块名、大小、引用计数及依赖关系;也可直接cat /proc/modules、用modprobe -l查可用模块、modinfo查模块信息、depmod分析依赖。

如果您需要确认当前 Linux 系统中哪些内核模块已成功载入内存,以便排查驱动异常、验证硬件支持或调试模块依赖问题,则可通过标准内核模块管理命令进行实时查询。以下是查看已加载内核模块的多种方法:
一、使用 lsmod 列出全部已加载模块
lsmod 是最直接的内置工具,它读取 /proc/modules 文件并以结构化格式输出所有当前活跃模块的名称、大小、引用计数及依赖关系。
1、在终端中执行命令:lsmod
2、若需筛选特定模块(如检查是否加载了 nvidia 驱动),运行:lsmod | grep nvidia
3、为提升可读性,可结合分页查看:lsmod | less
二、通过 /proc/modules 文件直接读取原始数据
该方式绕过命令解析层,直接访问内核暴露的模块状态接口,适用于脚本化采集或调试环境受限场景。
1、使用 cat 命令查看:cat /proc/modules
2、若需按模块大小排序(从大到小),执行:awk '{print $2, $1}' /proc/modules | sort -nr
3、统计当前加载模块总数:wc -l /proc/modules
三、使用 modprobe -l 列出所有可用但未加载的模块
此操作不显示已加载项,而是枚举系统中所有预编译完成、位于 /lib/modules/$(uname -r)/ 下的可加载模块文件(.ko 或 .ko.xz),用于比对缺失模块或确认模块存在性。
1、列出全部可用模块路径:modprobe -l
2、仅显示包含关键词的模块(如查找 ext4 相关):modprobe -l | grep ext4
3、统计可用模块总数:modprobe -l | wc -l
四、使用 modinfo 查询指定模块的元信息
当已知模块名但不确定其是否已加载时,modinfo 可验证模块文件是否存在、获取作者、许可证、参数定义等静态属性,辅助判断模块兼容性与加载前提。
1、查看模块基本信息:modinfo module_name(例如:modinfo usb_storage)
2、仅提取模块文件路径:modinfo -n module_name
3、列出模块支持的所有参数:modinfo -p module_name
五、结合 depmod 检查模块依赖图谱
depmod 本身不显示加载状态,但它生成的依赖数据库是 modprobe 自动加载的基础。若模块因依赖缺失而无法加载,检查该数据库完整性可定位根本原因。
1、更新当前内核版本对应的依赖映射:sudo depmod -a
2、查看某模块的显式依赖项:modinfo module_name | grep depends
3、验证依赖文件是否存在:ls /lib/modules/$(uname -r)/modules.dep*










