modprobe命令
1、modprobe 命令是根据depmod -a的输出/lib/modules/version/modules.dep来加载全部的所需要模块。
2、删除模块的命令是:modprobe -r filename
3、系统启动后,正常工作的模块都在/proc/modules文件中列出。使用lsmod命今也可显示相同内容。
4、在内核中有一个“Automatic kernel module loading"功能被编译到了内核中。当用户尝试打开某类型的文件时,内核会根据需要尝试加载相应的模块。/etc/modules.conf或 /etc/modprobe.conf文件是一个自动处理内核模块的控制文件。
功能说明:自动处理可载入模块。 语 法:modprobe [-acdlrtvV][--help][模块文件][符号名称 = 符号值] 补充说明:modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。 参 数: -a或--all 载入全部的模块。 -c或--show-conf 显示所有模块的设置信息。 -d或--debug 使用排错模式。 -l或--list 显示可用的模块。 -r或--remove 模块闲置不用时,即自动卸载模块。 -t或--type 指定模块类型。 -v或--verbose 执行时显示详细的信息。 -V或--version 显示版本信息。 -help 显示帮助。
modprobe命令主要用于在Linux 2.6内核中加载和删除Linux内核模块。通过此命令用户可以轻松地加载和删除Linux内核模块,同时使用此命令加载Linux内核模块时,Linux内核会自动解决内核模块之间的依赖关系,将相互依赖的模块自动加载,如下所示:
1) 加载RAID1阵列级别模块:
- [root@rhel5 boot]# modprobe raid1
2) 显示已加载的RAID1阵列级别模块:
- [root@rhel5 boot]# lsmod |grep raid1
- raid1 25153 0
3) 删除RAID1阵列级别模块:
- [root@rhel5 boot]# modprobe -r raid1
4) 显示RAID1阵列级别模块:
- [root@rhel5 boot]# lsmod |grep raid1
modprobe命令在加载模块时会自动解决依赖的模块。当加载的模块需依赖另一个模块时,系统会自动将此模块加载。而当用户使用insmod命令加载模块时,则不会自动解决相对应的依赖模块。
modprobe命令中的"-r"参数表示删除指定模块,"-c"参数表示显示/etc/modprobe.conf配置文件的参数,"-C"参数表示指定内核配置文件,"-f"表示覆盖,"-l"表示显示模块的绝对路径。
实例:
删除,加载网卡驱动
首先查看网卡驱动
[root@localhost ~]# ethtool -i ens33 driver: e1000 version: 7.3.21-k8-NAPI firmware-version: expansion-rom-version: bus-info: 0000:02:01.0 supports-statistics: yes supports-test: yes supports-eeprom-access: yes supports-register-dump: yes supports-priv-flags: no
删除网卡驱动
modprode -r ens33
重新加载网卡驱动
modprode ens33
http://www.runoob.com/linux/linux-comm-modprobe.html
http://book.51cto.com/art/201006/206424.htm