解决modprobe加载驱动问题

news2024/11/25 14:59:22

一、insmod与modprobe

在Linux中,linux设备驱动有两种加载方式insmod和modprobe。

insmod

        insmod是一个加载模块的命令,但和modprobe不同的是,insmod不会自动加载依赖的模块。如果你需要加载的模块有依赖关系,那么你需要手动一个个的加载。

insmod命令的语法如下:

insmod <module_name.ko>

modprobe

        modprobe是Linux内核中自带的一个命令,它可以自动加载模块及其依赖的模块。也就是说,如果你需要加载一个模块,但是该模块需要依赖其它模块,那么使用modprobe命令可以自动加载所有依赖的模块,不需要手动一个个的加载。

modprobe <module_name>

二、modprobe加载驱动问题

使用modprobe加载驱动模块时,遇到 can't change directory to ' ... ': No such file or directory 

1.首先我们进行insmod加载测试,确保模块正常

2.modprobe加载模块

这里提示找不到4.4.111目录,它对应linux内核的名称,可以使用uname –r指令查询。

解决方法:创建4.19.111目录

mkdir lib/modules/4.19.111 

重新加载驱动模块

这里提示找不到modules.dep文件。我们不需要手动创建该文件,使用depmod指令即可自动生成。

这里提示depmod指令找不到,这是因为默认情况下根文件系统不支持该指令,需要我们自己添加。depmod可以通过配置busybox来添加这个功能。

进入package/busybox/busybox.config中将改选项设置为y,重新编译烧录

将开发板更新最新的文件系统后,我们就可以使用depmod 指令了。在没有执行该指令时,在/lib/modules/ 3.0.15-9tripod 下是没有任何文件的,执行depmod 命令后,该目录下将会生成三个文件:

[root@RV1126_RV1109:/]# ls /lib/modules/4.19.111/
[root@RV1126_RV1109:/]# depmod
[root@RV1126_RV1109:/]# ls /lib/modules/4.19.111/
 modules.alias    modules.dep      modules.symbols

我们再尝试执行modprobe指令加载驱动:

[root@RV1126_RV1109:/]# modprobe x4412-beep.ko
 modprobe: module xxx.ko not found in modules.dep
[root@RV1126_RV1109:/]#

这里提示在modules.dep文件中没有发现我们加载的ko文件,我们尝试查看一下modules.dep的内容,发现里面的内容为空。

因此,我们可以先将需要加载的ko文件拷贝到对应的目录,再执行depmod指令。

[root@RV1126_RV1109:/]# cp /mnt/xxx.ko /lib/modules/4.19.111
[root@RV1126_RV1109:/]# depmod
 [root@x4412 3.0.15-9tripod]# more modules.dep
 xxx.ko:

可以看到,在modules.dep中已经存在有我们需要加载的ko文件名了。注意,不要手工的去编辑modules.dep文件!再执行modprobe指令,即可加载模块了。

[root@RV1126_RV1109:/]# modprobe xxx.ko

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1089789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux进阶-ipc信号(软中断信号)

信号 信号&#xff08;软中断信号&#xff09;&#xff0c;用于通知进程发生了异步事件&#xff08;它是Linux系统响应某些条件而产生的一个事件&#xff0c;它是在软件层次上对中断机制的一种模拟&#xff0c;是一种异步通信的方式&#xff0c;在原理上&#xff0c;一个进程收…

基于springboot实现外卖点餐平台系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现外卖点餐平台系统演示 摘要 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势社会的发展和科学技术的进步&#xff0c;互联网技术越来越受欢迎。网络计算机的生活方式逐渐受到广大人民群众的喜…

(Vue3)大事记管理系统 首页 文章分类页

首页 先搭架子-用element-ui中的组件&#xff1a;container组件、layout组件 不知道的属性学会看文档&#xff01; :default-active"$route.path" 配默认高亮菜单项 $route.path 字符串&#xff0c;等于当前路由对象的路径&#xff0c;如“/home/news $route…

互联网Java工程师面试题·Java 并发编程篇·第四弹

目录 39、volatile 有什么用&#xff1f;能否用一句话说明下 volatile 的应用场景&#xff1f; 40、为什么代码会重排序&#xff1f; 41、在 java 中 wait 和 sleep 方法的不同&#xff1f; 42、用 Java 实现阻塞队列 43、一个线程运行时发生异常会怎样&#xff1f; 44、…

网站如何应对网络流量攻击

网络安全问题中&#xff0c;受到流量攻击是一种常见挑战。以下是一系列的专业建议&#xff0c;帮助您预防和减轻这类攻击&#xff0c;从而确保您的网站和数据的安全。 使用 Web 应用程序防火墙 (WAF) Web 应用程序防火墙是一项专门的安全工具&#xff0c;能够检测和拦截恶意流…

深入篇【C++】总结智能指针的使用与应用意义(auto_ptr/unique_ptr/shared_ptr/weak_ptr)底层原理剖析+模拟实现

深入篇【C】总结智能指针的使用与应用意义&&(auto_ptr/unique_ptr/shared_ptr/weak_ptr&#xff09;底层原理剖析模拟实现 智能指针的出现智能指针的使用应用意义/存在问题智能指针原理剖析模拟实现auto_ptrunique_ptrshared_ptrweak_ptr 智能指针的出现 首先我们要理…

【PCIE733】基于PCI Express总线架构的2路160MSPS AD采集、12路LVDS图像数据采集卡

PCIE733是一款基于PCI Express总线架构的&#xff0c;实现2路16-bit、160MSPS ADC采集功能、12路LVDS数据采集板卡。该板卡遵循PCI Express 2.0规范&#xff0c;全高半长尺寸&#xff0c;板卡采用Xilinx的28nm高性能FPGA处理器XC7K325T作为主控制器&#xff0c;板卡ADC器件采用…

【Jenkins】调用API构建并钉钉通知

文章目录 Jenkins API介绍提交作业带参数的作业API 令牌 Shell调用代码 Jenkins API介绍 Jenkins 提供了远程访问 API。目前它有三种格式&#xff1a; XML JSON Python 远程访问 API 形式为"…/api/" 例如&#xff0c; Jenkins 安装位于https://ci.jenkins.io&a…

day05-前后端项目上传到gitee、后端多方式登录接口、发送短信功能、发送短信封装、短信验证码接口、短信登录接口

1 前后端项目上传到gitee 2 后端多方式登录接口 2.1 序列化类 2.2 视图类 2.3 路由 3 发送短信功能 4 发送短信封装 4.0 目录结构 4.1 settings.py 4.2 sms.py 5 短信验证码接口 6 短信登录接口 6.1 视图类 6.2 序列化类 1 前后端项目上传到gitee # 我们看到好多开源项目…

协同育人|电巢携手武汉软件工程职业学院项目实训顺利开班!

为深化校企合作&#xff0c;产教融合助力新工科建设&#xff0c;提升学生工程实践能力&#xff0c;电巢工程能力实训班按照不同岗位类别&#xff0c;匹配对应的企业岗位任职能力要求对学生开展分级培养&#xff0c;以产业需求为导向&#xff0c;培养创新型、应用型人才。 10月…

新手小白学自动化测试必须要知道的知识!

1、为什么要进行自动化测试&#xff1f; ①黑盒测试回归效率低&#xff1b; ②手动测试的偶然性和不确定性&#xff1b; ③回归的覆盖率不足&#xff1b; ④交付的产品质量无法保证&#xff0c;全靠评估&#xff1b; ⑤系统越复杂&#xff0c;问题越多&#xff1b; ⑥上线…

14私有化属性的意义

目录 私有化属性有两个意义&#xff0c;一个是数据保护&#xff0c;一个是数据过滤 一、数据保护 二、数据过滤 私有化属性有两个意义&#xff0c;一个是数据保护&#xff0c;一个是数据过滤 一、数据保护 class Person:def __init__(self):self.__age 10pass p1 Person(…

windows安装nvm以及解决yarn问题

源代码 下载 下一步一下步安装即可 检查是否安装成功 nvm出现上面的代码即可安装成功 常用命令 查看目前安装的node版本 nvm list [available]说明没有安装任何版本&#xff0c;下面进行安装 nvm install 18.14使用该版本 node use 18.14.2打开一个新的cmd输入node -…

Excel 从网站获取表格

文章目录 导入网站数据导入股票实时行情 用 Excel 获取网站数据的缺点&#xff1a;只能获取表格类的数据&#xff0c;不能获取非结构化的数据。 导入网站数据 转到地址之后&#xff1a; 实测该功能经常导致 Excel 卡死。 导入股票实时行情

Observability:使用 Elastic Observability 摄取和分析 Prometheus 指标

作者&#xff1a;Jenny Morris 在监控和可观察性领域&#xff0c;Prometheus 凭借其强大的数据收集机制、灵活的查询功能以及与其他工具的集成以实现丰富的仪表板和可视化&#xff0c;已成长为云原生环境中监控的事实上的标准。 Prometheus 主要是为短期指标存储而构建的&…

软件工程与计算总结(十)软件体系结构设计与构建

目录 ​编辑 一.体系结构设计过程 1.分析关键需求和项目约束 2.选择体系结构风格 3.体系结构逻辑设计 4.体系结构实现 5.完善体系结构设计 6.定义构件接口 二.体系结构原型构建 1.包的创建 2.重要文件的创建 3.定义构件之间的接口 4.关键需求的实现 三.体系结构的…

算法通过村第十四关-堆|青铜笔记|堆结构

文章目录 前言堆的概念和特征堆的构成过程插入操作删除操作总结 前言 若执于空&#xff0c;空亦为障。 --彼得马西森《雪豹》 堆结构是一种非常重要的基础数据结构&#xff0c;也是算法的重要内容&#xff0c;很多题目甚至只能通过用堆来进行&#xff0c;所以我们必须明确什么类…

AnyLogic Pro 8.8.4 Crack

为什么选择 AnyLogic 仿真软件&#xff1f; 行业特定库 用于通用业务流程或工作流程的流程建模库。 流体库可模拟采矿或石油天然气等行业的散装货物和液体输送。 用于铁路运输、码头和堆场的铁路图书馆。 行人图书馆&#xff0c;用于记录机场、体育场馆、车站或购物中心的行人…

深度学习环境 | Linux下安装,卸载,查看pytorch版本

一 在Linux下安装pytorch 1 进入Linux环境以后 新建一个名为pytorch的虚拟环境&#xff0c;执行以下代码&#xff1a; conda create -n pytorch python3.82 激活新建的pytorch虚拟环境&#xff0c;执行以下代码&#xff1a; conda activate pytorch # conda版本较新使用这条…

目录启示:PHP 与命名空间的声明

文章目录 参考环境命名空间概念版本支持影响范围 全局命名空间概念魔术常量 \_\_NAMESPACE\_\_声明全局命名空间 声明命名空间为空间命名命名规则核心命名空间 子命名空间的声明在同一文件中定义多个命名空间无括号命名空间声明有括号命名空间声明禁止混合使用推荐使用有括号命…