码迷,mamicode.com
首页 > 系统相关 > 详细

Linux内核模块管理:lsmod、insmod、rmmod、modeinfo、modprobe、depmod

时间:2020-04-18 21:20:50      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:rem   module   desc   sys   arch   gre   drive   内核模块管理   key   

一、基本介绍

1、这些命令安装在“kmod”包中,系统通常已经安装了,如果没有安装请安装:

[root@localhost ]# rpm -ql kmod|grep sbin
/usr/sbin/depmod
/usr/sbin/insmod
/usr/sbin/lsmod
/usr/sbin/modinfo
/usr/sbin/modprobe
/usr/sbin/rmmod
/usr/sbin/weak-modules

2、CentOS中所有的内核模块都存放在"/lib/modules/$(uname -r)/kernel/“下面:

[root@localhost ~]# cd /lib/modules/$(uname -r)/kernel/
[root@localhost kernel]# ls
arch  crypto  drivers  fs  kernel  lib  mm  net  sound

二、命令介绍

1、lsmod:查看内核已加载的模块

[root@localhost kernel]# lsmod|head -4
Module                  Size  Used by
ip6table_filter        12815  0 
ip6_tables             27025  1 ip6table_filter
iptable_filter         12810  0

2、modinfo:查看模块的基本信息

[root@localhost kernel]# modinfo /lib/modules/3.10.0-123.el7.x86_64/kernel/fs/ext4/ext4.ko
filename:       /lib/modules/3.10.0-123.el7.x86_64/kernel/fs/ext4/ext4.ko
license:        GPL
description:    Fourth Extended Filesystem
author:         Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Tso and others
alias:          fs-ext4
alias:          ext3
alias:          fs-ext3
alias:          ext2
alias:          fs-ext2
srcversion:     7854620F0551D7F88A126F0
depends:        mbcache,jbd2
intree:         Y
vermagic:       3.10.0-123.el7.x86_64 SMP mod_unload modversions 
signer:         CentOS Linux kernel signing key
sig_key:        BC:83:D0:FE:70:C6:2F:AB:1C:58:B4:EB:AA:95:E3:93:61:28:FC:F4
sig_hashalgo:   sha256

3、insmod:将指定模块加载到内核,建议使用modeprobe命令

4、rmmod:将已加载模块从内核中移除,建议使用modeprobe命令

5、modprobe:加载或卸载内核模块,根据modules.dep.bin文件进行加载操作,可以自动解决模块间的依赖关系表

[root@localhost kernel]# lsmod|grep ext4     
[root@localhost kernel]# modprobe ext4              #加载模块
[root@localhost kernel]# lsmod|grep ext4
ext4                  528957  0 
mbcache                14958  1 ext4
jbd2                   98341  1 ext4
[root@localhost kernel]# modprobe -r ext4           #卸载模块
[root@localhost kernel]# lsmod|grep ext4

6、depmod:查找/lib/moduels/(uname -r)/中的所有模块并建立modules.dep.bin文件,该文件记录了模块位置及依赖关系

[root@localhost kernel]# cd /lib/modules/$(uname -r)/
[root@localhost 3.10.0-123.el7.x86_64]# ls|grep dep  
modules.dep
modules.dep.bin
modules.softdep
[root@localhost 3.10.0-123.el7.x86_64]# rm -rf modules.dep.bin 
[root@localhost 3.10.0-123.el7.x86_64]# modprobe ext4
modprobe: FATAL: Module ext4 not found.
[root@localhost 3.10.0-123.el7.x86_64]# depmod -a         #生成文件
[root@localhost 3.10.0-123.el7.x86_64]# modprobe ext4
[root@localhost 3.10.0-123.el7.x86_64]# lsmod|grep ext4
ext4                  528957  0 
mbcache                14958  1 ext4
jbd2                   98341  1 ext4
[root@localhost 3.10.0-123.el7.x86_64]# ls|grep dep            
modules.dep
modules.dep.bin
modules.softdep

Linux内核模块管理:lsmod、insmod、rmmod、modeinfo、modprobe、depmod

标签:rem   module   desc   sys   arch   gre   drive   内核模块管理   key   

原文地址:https://www.cnblogs.com/hanxiaomeng/p/12728104.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!