Linux中的lsmod命令(列出内核模块)
时间:2020-03-05 15:28:52 来源:igfitidea点击:
“ 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 ...
每行有三列:
- '模块'-第一列显示模块的名称。
- '大小'-第二列显示模块的大小(以字节为单位)。
- '使用者'-第三列显示一个数字,指示当前使用了多少个模块实例。零值表示未使用该模块。数字后的逗号分隔列表显示正在使用的模块。
要确定是否已加载特定模块,请使用'grep'过滤输出。
例如,要查找是否已加载“ kvm”模块,请运行:
lsmod | grep kvm
kvm_intel 278528 0 kvm 651264 1 kvm_intel irqbypass 16384 1 kvm
有关模块的详细信息,请使用“ modinfo”命令。