Linux模块的加载和卸载

作者:莫问前程 发布于:2018-3-29 11:51 Thursday 分类:Linux

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

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

modinfo 显示模块信息

1
2
3
4
5
6
7
8
9
10
11
[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 4KSTACKSgcc-4.1
module_sig: 883f3505418e2be4014561c61e8fb9e112328909e37fda25c3eb632aaf1ef38c13e35eac8fc5853f0a0c9d0efb97ce3df401c3028e27124ea78136532d1

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

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

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

1
[root@localhost ~]# rmmod  pcnet32.ko

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

复制代码
复制代码
modprobe [-lcfr] module_name

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

例子 #modprobe cifs

#modprobe -r cifs
复制代码
复制代码

发表评论:

49 + 59 =

Powered by 木匠 鲁ICP备88888888号