Linux中的Modprobe命令
Linux内核是Linux操作系统的核心组件。 它管理系统的资源,并且是计算机硬件和软件之间的桥梁。
Linux内核具有模块化设计。 内核模块(通常称为驱动程序)是一段扩展内核功能的代码。 模块要么编译为可加载模块,要么内置在内核中。 可加载模块可以根据需要在正在运行的内核中进行加载和卸载,而无需重新启动系统。
通常,模块是由udev
(设备管理器)按需加载的。 但是,有时您可能需要微调模块的加载方式。 例如,您可能需要使用其他参数加载模块,或者防止模块自动加载。
您可以使用modprobe
命令将模块手动加载到内核中,也可以在启动时使用/etc/modules
或/etc/modules-load.d/*.conf
文件自动将模块加载到内核中。
在本文中,我们将说明如何使用modprobe
从Linux内核中添加和删除模块。 modprobe
是kmod
的一部分,该二进制文件实现了用于管理Linux内核模块的多个程序。
添加内核模块
内核模块存储在/lib/modules/<kernel_version>
目录中。 您可以找到正在运行的内核的版本,使用 uname -r
命令。
只有具有管理特权的用户才能管理内核模块。
要加载模块,请调用modprobe
命令,后跟模块名称:
modprobe module_name
modprobe
命令将加载指定的模块和任何其他模块依赖项。 在命令行上只能指定一个模块。
使用 lsmod
命令确认模块已加载:
lsmod | grep module_name
要使用其他参数加载模块,请使用parameter=value
语法:
modprobe module_name parameter=value
该命令接受多个parameter=value
对,以空格分隔。
通常,您需要在系统引导期间加载模块。 您可以通过在/etc/modules-load.d
目录内的文件中指定模块及其参数来实现。 文件必须以.conf
结尾,并且可以具有任何名称:
/etc/modules-load.d/module_name.conf
option module_name parameter=value
这些文件中指定的设置由udev
读取,后者在系统启动时使用modprobe
加载模块。
卸载内核模块
要删除模块,请使用-r
选项调用modprobe
命令,后跟模块名称:
modprobe -r module_name
modprobe
还将删除未使用的模块依赖项。
用-r
调用时,该命令接受多个模块作为参数:
modprobe -r module_name1 module_name2
您还可以使用 rmmod
命令从Linux内核中卸载模块。
如果要防止在启动时加载内核模块,请在/etc/modprobe.d
中创建一个名称任意的.conf
文件。 语法为:
/etc/modprobe.d/blacklist.conf
blacklist module_name
如果要将其他模块列入黑名单,请在新行中指定模块,或创建新的.conf
文件。
结论
modprobe
命令允许您添加和删除Linux内核模块。
如有任何疑问,请随时发表评论。
以上是 Linux中的Modprobe命令 的全部内容, 来源链接: utcz.com/z/507522.html