加载内核模块

时间:2020-02-23 14:40:05  来源:igfitidea点击:

我们可以使用两个命令加载已编译并安装到A/lib/modules子目录的任何模块:insmod和modprobe。
虽然Linux会自动加载模块的好工作,但我们可以使用这两个命令加载模块临时使用某些功能(例如加载模块支持特殊文件系统)或者用于测试新模块。

insmod命令的语法非常简单;我们只需执行INSMOD,然后执行模块文件名。
例如,要加载MD5模块,我们可以使用以下命令:

$insmod /lib/modules/3.0.74-default/kernel/crypto/md5.ko

有时模块依赖于其他模块。
在这些情况下,如果我们尝试加载依赖于未加载的其他人的模块,则insmod将失败。
但是,Modprobe命令会自动加载任何依赖于上的模块。
命令的语法是:

modprobe module_name.

这是一个例子:

$modprobe md5

使用Modprobe,我们可以通过其模块名称而不是模块文件名指定模块。
我们可以通过一些选项来修改Modprobe的行为。
例如,要执行检查和除实际模块插入之外的所有其他操作,可以使用-n选项。
结合-v(verbose)选项,此选项对于调试问题非常有用:

$modprobe -nv md5

show-depends选项显示指定模块所取决于哪些模块:

$ modprobe --show-depends libata

-r选项删除指定的模块,并且如果在使用中,依赖于模块的依赖于(依赖于模块)。

modprobe -rv md5

Modprobe暂时加载模块。
要将模块永久添加到系统,请将Modprobe命令行添加到其中一个启动脚本。