Ubuntu lsmod命令详解(Linux系统查看已加载内核模块的实用指南)

来源:这里教程网 时间:2026-03-28 22:37:57 作者:

在使用 Ubuntu 或其他 Linux 发行版时,你可能会遇到需要了解当前系统中加载了哪些内核模块的情况。这时候,lsmod 命令就派上用场了。本文将手把手教你如何使用 lsmod 命令,即使是 Linux 新手也能轻松掌握!

什么是内核模块?

Linux 内核是操作系统的核心部分,负责管理硬件、内存、进程等关键资源。为了提高灵活性和效率,Linux 支持“可加载内核模块”(Loadable Kernel Modules, LKMs)。这些模块可以在系统运行时动态加载或卸载,无需重启系统。例如,当你插入一个 USB 设备时,系统可能自动加载对应的驱动模块。

lsmod 命令的作用

lsmod 是 “list modules” 的缩写,用于列出当前 Linux 内核中已加载的所有模块。它读取

/proc/modules
文件并以人类可读的方式展示结果。

如何使用 lsmod 命令?

在 Ubuntu 终端中,只需输入以下命令即可:

lsmod

执行后,你会看到类似如下的输出:

Module Size Used bynvidia_uvm 1234567 0snd_hda_codec_realtek 123456 1i915 2345678 4...(省略更多模块)

输出包含三列信息:

Module:模块名称 Size:模块占用的内存大小(字节) Used by:该模块被多少其他模块或进程使用(数字),以及依赖它的模块列表(如果有)

结合 grep 过滤特定模块

由于系统通常加载了上百个模块,直接查看全部内容可能不太方便。你可以使用

grep
命令来搜索特定模块。例如,查找与无线网卡相关的模块:

lsmod | grep wifi

或者查找 NVIDIA 显卡驱动模块:

lsmod | grep nvidia

与其他模块管理命令配合使用

除了

lsmod
,还有几个常用命令可以配合使用:

modinfo 模块名:查看模块的详细信息(如作者、版本、参数等) insmod 模块名.ko:手动加载模块(需 root 权限) rmmod 模块名:卸载模块(需 root 权限)

注意:

insmod
rmmod
通常不推荐直接使用,建议使用更智能的
modprobe
命令,它能自动处理依赖关系。

常见问题解答

Q:lsmod 显示的模块能删除吗?

A:只有未被使用的模块(Used by 列为 0)才能安全卸载。强行卸载正在使用的模块可能导致系统崩溃。

Q:为什么有些驱动看不到?

A:某些驱动可能已编译进内核(而非作为模块加载),因此不会出现在

lsmod
输出中。

总结

lsmod
是一个简单但强大的工具,帮助你了解 Ubuntu 系统当前加载了哪些 Linux内核模块。通过它,你可以诊断硬件驱动问题、排查系统性能瓶颈,甚至学习内核工作机制。掌握这个命令,是迈向 Linux 系统管理的重要一步。

希望这篇教程让你对 Ubuntu lsmod命令 有了清晰的认识。如果你正在学习 系统管理命令,不妨多尝试结合

grep
modinfo
等工具,提升你的 查看已加载模块 效率!

相关推荐

热文推荐