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模块 [root@sys172 ~]# lsmod |grep '8021q' 用lsmod查看是否加载成功 8021q 25349 0 garp 7152 1 8021q modprobe -r 8021q 卸载8021q模块
还有一个命令也是加载模块insmod
但是与modprobe不同的是 必须要加模块所在的绝对路径