ubuntu22.04识别CH340的问题汇总

一、目的

自己的电脑装的是双系统,ubuntu22.04安装了很久好久没有(WSL2确实解决了频繁依赖linux的问题)。昨天尝试搞一下STM32MP135的系统搭建,开始启用ubuntu22.04。但是遇到了很多问题,其中一个问题就是CH340的驱动。
在折腾的过程中遇到了多个问题,这里一并汇总。为了尊重原创者的成果,我这里将两篇博文的原始文章连接粘贴如下:
小言W的:串口驱动签名问题解决方案
鱼香ROS的:驱动被占用问题解决方案

二、发现问题

使用lsusb命令,发现发现了WCH的设备觉得应该没什么问题了。

Bus 001 Device 013: ID 1a86:7523 QinHeng Electronics CH340 serial converter

实际上查看用ls /dev/tty*却看不到新增的设备。
所以我判断是没有CH340的驱动,就去官网下载驱动:CH341SER_LINUX.ZIP .然后按照readme的教程make,然后make install.但是最后还是没有成功。

所以就尝试用sudo dmesg查看新插入的设备。(故意插拔了一次,所以生成的信息在最后。)结果提示:

[  820.295049] usb 1-6.2: USB disconnect, device number 9
[  822.334672] usb 1-6.3: new full-speed USB device number 10 using xhci_hcd
[  822.460652] usb 1-6.3: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.64
[  822.460664] usb 1-6.3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[  822.460668] usb 1-6.3: Product: USB Serial
[  822.480251] Loading of unsigned module is rejected
[  823.034128] input: BRLTTY 6.4 Linux Screen Driver Keyboard as /devices/virtual/input/input45

提示未签名的模块被拒绝(Loading of unsigned module is rejected)。

三、解决驱动签名问题

@小言W的文章提供了很详尽的问题怎么解决的描述。归纳如下:

3.1 安装依赖

sudo apt install mokutil
sudo apt install shim-signed

3.2 生成签名证书

# 生成新签名,参考https://wiki-ubuntu-com.translate.goog/UEFI/SecureBoot?_x_tr_sl=auto&_x_tr_tl=zh-CN&_x_tr_hl=en-US&_x_tr_pto=wapp
sudo update-secureboot-policy --new-key

# 生成密钥,参考https://wiki-ubuntu-com.translate.goog/UEFI/SecureBoot/KeyManagement/KeyGeneration?_x_tr_sl=auto&_x_tr_tl=zh-CN&_x_tr_hl=en-US&_x_tr_pto=wapp
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/"

#导入签名
sudo mokutil --import /var/lib/shim-signed/mok/MOK.der

3.3 重启,启用签名

在这里插入图片描述
Enroll MOK > Continue > 输入密码 > Reboot
第二篇文章中引用的为内核模块签名说明的更详细。

3.4 给驱动签名

sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der ch341.ko

# 检查以下驱动十分签名成功
hexdump -C ch341.ko | tail

# 若成功会有Module signature appended字样

3.5 载入模块

sudo make load
sudo make install

# 检查模块load情况
lsmod | grep ch34

但是我的/dev/tty*中还是没有新设备。非常困惑。第二篇文章给了指引。

4. 移除占用的驱动

继续使用dmesg命令查看如果出现类似问题:

interface 0 claimed by ch341 while 'brltty' sets config #1

说明驱动被britty占用.那么直接移除就成了。

sudo apt remove brltty

brltty的描述如下:

With one exception, this document applies to using BRLTTY with any braille device. The exception is that, when key bindings are given, it assumes that the braille device has a braille keyboard. If it doesn't, then, as mentioned above, you can look up your device's corresponding key bindings online.

说是一个盲文设备的驱动。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python从入门到精通(黑马课程)

目录 运算符 数字运算符 比较运算符 逻辑运算符 转义字符 变量使用 变量定义 变量类型 变量命名 变量函数 input函数 type函数 条件语句 If 格式 案例1,判断年龄 案例2,借钱 案例3,and、or应用 循环语句 for 格式 案例…

11月28日星期二今日早报简报微语报早读

11月28日星期二,农历十月十六,早报微语早读。 1、广电总局:有线电视终端系统默认设置应为“开机进入全屏直播”; 2、我国下一代互联网技术专利申请量10年超170万件; 3、字节收缩旗下游戏业务:已上线的游…

KaiwuDB 多模数据库-时序性能优化

随着物联网领域的快速发展,时序数据的产生和处理需求不断增长。为了满足实时性、高效性和准确性的要求,数据库需要进行时序性能优化,以提供快速的数据写入、实时查询和高效的数据存储与处理能力。 本期直播介绍了时序数据和时序数据库特征以…

第二十章总结

线程简介 在 Java 中,并发机制非常重要。在以往的程序设计中,我们都是一个任务完成后再进行下一个任务,这样下一个任务的开始必须等待前一个任务的结束。Java 语言提供了并发机制,程序员可以在程序中执行多个线程,每一…

助力企业实现更简单的数据库管理,ATOMDB 与 TDengine 完成兼容性互认

为加速数字化转型进程,当下越来越多的企业开始进行新一轮数据架构改造升级。在此过程中,全平台数据库管理客户端提供了一个集中管理和操作数据库的工具,提高了数据库管理的效率和便利性,减少了人工操作的复杂性和错误率&#xff0…

jquery 地址四级联级显示 不默认选择

代码效果 <body class"bgca"><img src"./files/joinTooBg.png" style"width: 100%;object-fit: cover;" alt""><!--填写申请资料--><section><div class"zi-liao"><h3 class"zong-h…

AMP State Evolution的计算:以伯努利先验为例

AMP State Evolution (SE)的计算 t 1 t1 t1时&#xff0c; E ( t ) E [ X 2 ] \mathcal E^{(t)} \mathbb E [X^2] E(t)E[X2]&#xff0c;SE的迭代式为 τ r ( t ) σ 2 1 δ E ( t ) E ( t 1 ) E ∣ η ( t ) ( X Z ) − X ∣ 2 , Z ∼ N ( 0 , τ r ( t ) ) \begin{a…

java设计模式学习之【抽象工厂模式】

文章目录 引言抽象工厂模式简介定义与用途实现方式&#xff1a; 使用场景优势与劣势抽象工厂模式在spring中的应用银行和贷款服务示例代码地址 引言 在我们之前的讨论中&#xff0c;我们探索了工厂方法模式——一种简化单一产品创建的设计模式。现在&#xff0c;我们将视角转向…

探索容灾架构演进之路,从单点到异地多活

1. 挑战与变革 在公司发展初期&#xff0c;业务发展和用户增长是首要关注的焦点。然而&#xff0c;随着业务规模不断扩大&#xff0c;用户数量逐渐攀升&#xff0c;应用稳定性的重要性也变得愈发凸显。在这个演进过程中&#xff0c;传统架构下的应用部署模式开始显露出多方面的…

多类场景、遍布各地,融云 IM 支撑多款应用全球增长

&#xff08;全网都在找的《社交泛娱乐出海作战地图》&#xff0c;点击获取&#x1f446;&#xff09; 无论是面向企业场景的工作流协同还是消费场景的网络效应形成&#xff0c;商务社交还是陌生人社交&#xff0c;IM 都是必备组件。IM 遍布互联网各角落&#xff0c;出现在所有…

用于图像分类任务的经典神经网络综述

&#x1f380;个人主页&#xff1a; https://zhangxiaoshu.blog.csdn.net &#x1f4e2;欢迎大家&#xff1a;关注&#x1f50d;点赞&#x1f44d;评论&#x1f4dd;收藏⭐️&#xff0c;如有错误敬请指正! &#x1f495;未来很长&#xff0c;值得我们全力奔赴更美好的生活&…

C++标准模板库 STL 简介(standard template library)

在 C 语言中&#xff0c;很多东西都是由我们自己去实现的&#xff0c;例如自定义数组&#xff0c;线程文件操作&#xff0c;排序算法等等&#xff0c;有些复杂的东西实现不好很容易留下不易发现的 bug。而 C为使用者提供了一套标准模板库 STL,其中封装了很多实用的容器&#xf…

基于单片机设计的超声波测距仪(采用HC-SR04模块)

一、前言 本项目是基于单片机设计的超声波测距仪&#xff0c;主要采用了STC89C52单片机和HC-SR04超声波测距模块。通过LCD1602液晶显示屏来展示测量的距离信息。 超声波测距技术是一种常见的非接触式测距方法&#xff0c;利用超声波的传播速度测量物体与测距器之间的距离。它…

GDOUCTF2023-Reverse WP

文章目录 [GDOUCTF 2023]Check_Your_Luck[GDOUCTF 2023]Tea[GDOUCTF 2023]easy_pyc[GDOUCTF 2023]doublegame[GDOUCTF 2023]L&#xff01;s&#xff01;[GDOUCTF 2023]润&#xff01;附 [GDOUCTF 2023]Check_Your_Luck 根据 if 使用z3约束求解器。 EXP&#xff1a; from z3 i…

【C++】探索C++模板编程

文章目录 什么是C模板&#xff1f;模板的基本语法类型模板参数模板函数的示例类模板的示例总结 C模板是一种强大的编程工具&#xff0c;它可以实现泛型编程&#xff0c;使代码更加灵活和可重用。本篇博客将介绍C模板的基本语法、类型模板参数和模板函数的使用&#xff0c;并通过…

第20章:多线程

20.1 线程简介 在Java中&#xff0c;并发机制非常重要&#xff0c;程序员可以在程序中执行多个线程&#xff0c;每个线程完成一个功能&#xff0c;并与其他线程并发执行&#xff0c;这种机制被称为多线程。但是&#xff0c;并不是所有编程语言都支持多线程。 线程的特点&#…

集群 CPU 利用率均值达 45% ,揭秘小红书规模化混部技术实践

根据 Gartner 预测数据显示&#xff1a;2024 年全球 IT 支出预计将达到 5.1 万亿美元&#xff0c;比 2023 年增长 8 %。然而&#xff0c;该机构的另一项调查数据显示&#xff1a;全球数据中心服务器平均 CPU 利用率普遍低于 20%&#xff0c;存在巨大的资源浪费。据测算&#xf…

Python内置函数与标准库函数的解释示例

一、内置函数与标准库函数的区分 Python 解释器自带的函数叫做内置函数&#xff0c;这些函数可以直接使用&#xff0c;不需要导入某个模块。 Python 解释器也是一个程序&#xff0c;它给用户提供了一些常用功能&#xff0c;并给它们起了独一无二的名字&#xff0c;这些常用功能…

C语言——标识符

一、标识符是什么 标识符是C程序的最基本组成部分&#xff0c;例如&#xff1a;变量名称、函数名称、数据类型等等&#xff0c;都是一个标识符。标识符的要求是&#xff1a;必须由字母&#xff08;区分大小写&#xff09;、数字、下划线组成。而且&#xff0c;标识符的第一个字…

Django回顾【一】

一、Web应用程序 Web应用程序是一种可以通过Web访问的应用程序&#xff0c;程序的最大好处是用户很容易访问应用程序&#xff0c;用户只需要有浏览器即可&#xff0c;不需要再安装其他软件。应用程序有两种模式C/S、B/S。 C/S&#xff1a;客户端<----->服务端 例如My…