Linux中的Lsmod命令(列出内核模块)

lsmod 是一个命令行实用程序,用于显示有关已加载的Linux内核模块的信息。

内核模块

内核是操作系统的核心组件。 它管理系统的资源,并且是计算机硬件和软件之间的桥梁。

Linux内核具有模块化设计。 内核模块(通常称为驱动程序)是一段扩展内核功能的代码。 模块要么编译为可加载模块,要么内置在内核中。 可加载模块可以根据需要在正在运行的内核中进行加载和卸载,而无需重启系统。

通常,模块是按需加载的 udev (装置经理)。 您也可以使用以下命令将模块手动加载到内核中 modprobe 命令,或在启动时使用 /etc/modules 要么 /etc/modules-load.d/*.conf 文件。

内核模块存储在 /lib/modules/<kernel_version> 目录。 要查找正在运行的内核的版本,请使用 uname -r 命令。

lsmod 命令#

lsmod 是一个简单的实用程序,不接受任何选项或参数。 该命令的作用是读取 /proc/modules 并以格式正确的列表显示文件内容。

lsmod 在命令行中查找当前正在加载哪些内核模块:

lsmod

该命令在新行上输出每个已加载内核模块的信息:

Module                  Size  Used by
cmac                   16384  0
rfcomm                 81920  4
...
ahci                   40960  1
intel_lpss_pci         20480  0
i2c_i801               32768  0
libahci                32768  1 ahci
intel_lpss             16384  1 intel_lpss_pci
...

每行有三列:

  • Module -第一列显示模块的名称。
  • Size -第二列以字节为单位显示模块的大小。
  • Used by -第三列显示一个数字,该数字指示当前使用了多少个模块实例。 零值表示未使用该模块。 数字后的逗号分隔列表显示正在使用的模块。

要查找是否已加载特定模块,请使用以下命令过滤输出 grep 。 例如查找是否 kvm 模块加载后,您将运行:

lsmod | grep kvm
kvm_intel             278528  0
kvm                   651264  1 kvm_intel
irqbypass              16384  1 kvm

有关模块的详细信息,请使用 modinfo 命令。

结论#

lsmod 命令显示当前加载的内核模块的列表。

如有任何疑问,请随时发表评论。

lsmod内核终端

Sidebar