内核模块加载与卸载命令

Linux操作系统中模块操作相关命令解释
lsmod  查看已经安装好的模块, 也可以查看/proc/modules文件的内容. 实际上,lsmod读命令就是通过查看/proc/modules的内容来显示模块信息的.

查看某个模块是否安装
[root@localhost ~]# lsmod | grep "mii"
mii                     9409  1 pcnet32

modinfo 显示模块信息

[root@localhost ~]# lsmod | grep "mii"
mii                     9409  1 pcnet32
[root@localhost ~]# modinfo mii
filename:       /lib/modules/2.6.18-398.el5/kernel/drivers/net/mii.ko
license:        GPL
description:    MII hardware support library
author:         Jeff Garzik <jgarzik@pobox.com>
srcversion:     16DCEDEE4B5629C222C352D
depends:        
vermagic:       2.6.18-398.el5 SMP mod_unload 686 REGPARM 4KSTACKS gcc-4.1
module_sig:	883f3505418e2be4014561c61e8fb9e112328909e37fda25c3eb632aaf1ef38c13e35eac8fc5853f0a0c9d0efb97ce3df401c3028e27124ea78136532d1

insmod 加载模块,需要指定完整的路径和模块名字 模块依赖及路径信息,这样子才可以成功加载需要模块。查看模块依赖关系可用modinfo查看

[root@localhost ~]# insmod  /lib/modules/2.6.18-398.el5/kernel/drivers/net/pcnet32.ko

rmmod 卸载模块,但是内核会认为卸载模块不安全,可以添加命令强制卸载。

[root@localhost ~]# rmmod  pcnet32.ko

modprobe  不需要指定路径,它会到默认路径下寻找模块。模块也存在依赖性问题: 比如你要加载msdos.ko, 需要先加载fat.ko. modprobe查看/lib/module/version/modules.dep得知模块的依赖关系

modeprove [-lcfr] module_name

-c :列出目前系统所有的模块
-l :列出目前在/lib/modules/`uname -r`/kernel当中的所有模块完整文件名
-f:强制加载该模块
-r:类似rmmod 就是删除某个模块

例子
#modprobe cifs

#modeprobe -r cifs

 

depmod 检查系统中模块之间的依赖关系,并把依赖关系信息存于/lib/modules/2.6.18-1.2798/modules.dep中。 一般加载模块后,要命令行下先执行 depmod -a后,在系统加载模块时候会查看modules.dep中

posted @ 2016-11-10 13:59 季宁 阅读(...) 评论(...) 编辑 收藏