内核模块加载与卸载命令
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中