Linux-kmod 内核模块管理工具使用

1.1 lsmod:列出已经安装的模块

[root@imx6ull:~]# lsmod

Linux-kmod 内核模块管理工具使用

提示信息含义说明:

Module:表示模块的名称Size:表示模块的大小Used:使用者

1.2 insmod:手动安装模块

在后续会提到 modprobe 命令,它会自动从/lib/modules 下的目录里安装某个模块。但在实验过程中,我们经常需要手动安装其他目录下的模块,可以使用以下命令安装(需要指定模块文件即 ko 文件的位置)。

[root@imx6ull:~]# insmod /path/to/module/xxx.ko[root@imx6ull:~]# insmod -f /path/to/module/xxx.ko // 强制安装

开发板出厂时运行的是我们编译好的内核,当你做实验时需要先编译出自己的内核,然后编译出自己的驱动程序。如果你不想替换内核,那么你的驱动程序与板上的内核可能不完全匹配。这时就要用 insmod -f 命令强制安装驱动程序。下面是一个例子:

Linux-kmod 内核模块管理工具使用

1.3 rmmod:卸载某个已安装的模块

[root@imx6ull:~]# rmmod 

从上图 lsmod 可知系统已经安装了哪些模块,这里我们以卸载 usb wifi 模块驱动为例,具体操作如下图所示。

Linux-kmod 内核模块管理工具使用

1.4 modinfo:查看某个模块的详细信息

[root@imx6ull:~]# modinfo 

Linux-kmod 内核模块管理工具使用

modinfo 命令用于显示 kernel 模块的信息。用法:

可以在开发板执行 modinfo -h 命令查看帮助信息,如下图:

Linux-kmod 内核模块管理工具使用

黑点工具 黑点工具

在线工具导航网站,免费使用无需注册,快速使用无门槛。

黑点工具 18 查看详情 黑点工具

下面是一个例子,用来显示 evbug 模块的信息:

[root@imx6ull:~]# modinfo evbug

Linux-kmod 内核模块管理工具使用

1.5 modprobe:自动安装模块

modprobe 可载入指定的个别模块,或是载入一组相依的模块。modprobe 会根据 depmod 所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,则 modprobe 会卸载整组的模块。

insmod 与 modprobe 都是用于安装内核模块,差别是:modprobe 能够处理模块的依赖问题。例如,你要加载 a 模块,但是 a 要求系统先载入 b 模块时,直接用 insmod 加载可能会出现错误信息。modprobe 会自动加载 b,然后再加载 a,帮你处理这些依赖关系。

用法:

[root@imx6ull:~]# modprobe [options] [模块名]

开发板执行 modprobe -h 可以看到命令用法,如下图:

Linux-kmod 内核模块管理工具使用

常用的命令解释如下:

操作示例,modprobe 自动解析依赖并安装相应模块:

Linux-kmod 内核模块管理工具使用

注意:使用 modprobe 也会碰到 insmod 同样的内核版本不一致问题,可以使用 modprobe -f 强制安装。

以上就是Linux-kmod 内核模块管理工具使用的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/470079.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月8日 07:09:54
下一篇 2025年11月8日 07:10:47

相关推荐

发表回复

登录后才能评论
关注微信