modprobe和lsmod命令配合使用

Posted 夨忆′

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了modprobe和lsmod命令配合使用相关的知识,希望对你有一定的参考价值。

modprobe命令用于智能地向内核中加载模块或者从内核中移除模块。
modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。

语法 
modprobe(选项)(参数)
选项
 -a或--all:载入全部的模块;
 -c或--show-conf:显示所有模块的设置信息;
 -d或--debug:使用排错模式;
 -l或--list:显示可用的模块;
 -r或--remove:模块闲置不用时,即自动卸载模块;
 -t或--type:指定模块类型;
 -v或--verbose:执行时显示详细的信息;
 -V或--version:显示版本信息;
 -help:显示帮助。 

参数 模块名:要加载或移除的模块名称。
实例 
查看modules的配置文件: modprobe -c 
这里,可以查看modules的配置文件,比如模块的alias别名是什么等。会打印许多行信息,例如其中的一行会类似如下: alias symbol:ip_conntrack_unregister_notifier ip_conntrack 

列出内核中所有已经或者未挂载的所有模块: modprobe -l 
这里,我们能查看到我们所需要的模块,然后根据我们的需要来挂载;其实modprobe -l读取的模块列表就位于/lib/modules/`uname -r`目录中;其中uname -r是内核的版本,例如输出结果的其中一行是: /lib/modules/2.6.18-348.6.1.el5/kernel/net/netfilter/xt_statistic.ko 
挂载vfat模块: modprobe vfat 
这里,使用格式modprobe 模块名来挂载一个模块。
挂载之后,用lsmod可以查看已经挂载的模块。

lsmod lsmod命令内核与模块管理 lsmod命令用于显示已经加载到内核中的模块的状态信息。执行lsmod命令后会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。您可以将这些功能编译成一个个单独的模块,待需要时再分别载入。

模块名是不能带有后缀的,我们通过modprobe -l所看到的模块,都是带有.ko或.o后缀。 移除已经加载的模块: modprobe -r 模块名 这里,移除已加载的模块,和rmmod功能相同。 modprobe -l 查看所有可用模块 modprobe -l |grep ‘8021q‘ [#]modprobe -l |grep ‘8021q‘ kernel/net/8021q/8021q.ko 8021q模块可以用 modprobe 8021q 加载8021q模块 [[email protected] ~]# lsmod |grep ‘8021q‘ 用lsmod查看是否加载成功 8021q 25349 0 garp 7152 1 8021q modprobe -r 8021q 卸载8021q模块

 还有一个命令也是加载模块insmod
但是与modprobe不同的是 必须要加模块所在的绝对路径

以上是关于modprobe和lsmod命令配合使用的主要内容,如果未能解决你的问题,请参考以下文章

centos7内核模块命令

iptables 命令

linux 内核编译

内核模块的日常操作

linux内核模块开发

内核模块