ubuntu22.04安装CH340驱动踩坑记录

莱莱  金牌会员 | 2024-9-17 14:52:29 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 683|帖子 683|积分 2049

因为项目须要,须要安装CH340驱动,在这里记录以下自己的踩坑办理过程。
之前自己安装了CH340驱动,但是没有成功,后来是参考这篇博客才开始算是开始真正的安装成功CH340驱动,在这里贴一下办理的链接:Linux-ubuntu22.04串口驱动安装(CH34X)
总结一下:
1.检察自己电脑是否安装了ch340驱动
  如果有CH340(雷同于ch34x.ko文件)驱动,但是不能用。删掉:
  1. ls /lib/modules/$(uname -r)/kernel/drivers/usb/serial
  2. cd /lib/modules/$(uname -r)/kernel/drivers/usb/serial
  3. sudo rm -rf ch341.ko
复制代码
  把ch341.ko文件更换成自己的文件。
2.安装CH340驱动
我是参考这个链接安装的驱动:Linux-ubuntu22.04串口驱动安装(CH34X)
3.查询操作系统发行编号
  1. uname -r
复制代码

在网页查询对应自己编号,复制全部内容,更换下载的ch34x.c文件。https://elixir.bootlin.com/linux/v6.5/source/drivers/usb/serial/ch341.c
4.编译源文件
cd切换至下载的文件夹,make编译源码,天生ch34x.ko文件:
  1. cd CH341SER_LINUX/
  2. make
  3. sudo make load
复制代码
我在运行这一步的时候会报错,贴别人的原图:参考链接:办理Ubuntu22.04.1上安装ch34x串口驱动报 Key was rejected by service 须要签名的题目

同时大概会有:

的题目,办理方法是安装,gcc-12:指令如下:
  1. sudo apt update
  2. sudo apt install gcc-12
  3. make clean
  4. make CC=gcc-12
复制代码
出现错误提示:
  1. insmod: ERROR: could not insert module ch34x.ko: Key was rejected by service
复制代码
 说明.ko文件须要签名。检察驱动签名环境。
检察签名,指令:
  1. (base) robot@YL:~/Downloads/CH341SER_LINUX$ ls
  2. ch34x.c   ch34x.mod    ch34x.mod.o  Makefile       Module.symvers
  3. ch34x.ko  ch34x.mod.c  ch34x.o      modules.order  readme.txt
复制代码
指令:
  1. hexdump -C ch34x.ko | tail
复制代码

说明没有签名(贴的别人的图)。
给驱动签名
起首依赖mokutil和shim-signed
  1. sudo apt install mokutil
  2. sudo apt install shim-signed
  3. sudo update-secureboot-policy --new-key
复制代码
天生的证书(MOK.der)和私钥(MOK.priv)位于 /var/lib/shim-signed/mok/ 目次下。

导入签名证书:
  1. sudo mokutil --import /var/lib/shim-signed/mok/MOK.der
复制代码
重新启动电脑
电脑启动 UEFI 扣问您是否要更改安全设置。选择Enroll MOK, 选择YE

将签名写入驱动
重新启动后出现打开终端,输入:
  1. (base) robot@YL:~/Downloads/CH341SER_LINUX$ hexdump -C ch34x.ko | tail
  2. 00064ce0  0b b3 1b 2f dc 99 c1 c4  9e af d5 d3 6c 45 a4 f7  |.../........lE..|
  3. 00064cf0  5f 2c b3 4f 34 ae fa 24  81 14 ec cf fd e1 1a 22  |_,.O4..$......."|
  4. 00064d00  dc e1 b3 40 2e 9f 5e 82  74 50 32 26 82 c1 60 4d  |...@..^.tP2&..`M|
  5. 00064d10  a3 4e 98 59 6a 84 a3 1e  92 75 95 ed 7d bf bc f2  |.N.Yj....u..}...|
  6. 00064d20  19 98 da c0 70 51 1d 20  d1 2e f0 ce 82 58 94 22  |....pQ. .....X."|
  7. 00064d30  be b9 12 81 bd 83 bd 6b  0b 00 00 02 00 00 00 00  |.......k........|
  8. 00064d40  00 00 00 01 a9 7e 4d 6f  64 75 6c 65 20 73 69 67  |.....~Module sig|
  9. 00064d50  6e 61 74 75 72 65 20 61  70 70 65 6e 64 65 64 7e  |nature appended~|
  10. 00064d60  0a                                                |.|
  11. 00064d61
复制代码
驱动步调数据中有~Module signature appended~,可知已写入签名。
在CH341SER_LINUX文件夹下再次
  1. (base) robot@YL:~/Downloads/CH341SER_LINUX$ sudo make load
  2. [sudo] password for robot:
  3. modprobe usbserial
  4. insmod ch34x.ko
  5. (base) robot@YL:~/Downloads/CH341SER_LINUX$
复制代码
此时,载入成功了,使用lsmod | grep ch指令检察
  1. (base) robot@YL:~/Downloads/CH341SER_LINUX$ lsmod | grep ch
  2. ch34x                  24576  0
  3. usbserial              69632  1 ch34x
  4. nft_chain_nat          12288  3
  5. nf_nat                 61440  2 nft_chain_nat,xt_MASQUERADE
  6. hid_logitech_hidpp     65536  0
  7. nf_tables             372736  75 nft_compat,nft_chain_nat
  8. snd_soc_acpi_intel_match    94208  2 snd_sof_intel_hda_common,snd_sof_pci_intel_tgl
  9. snd_soc_acpi           12288  2 snd_soc_acpi_intel_match,snd_sof_intel_hda_common
  10. hid_logitech_dj        36864  0
  11. usbhid                 77824  2 hid_logitech_dj,hid_logitech_hidpp
  12. hid_multitouch         36864  0
  13. sch_fq_codel           24576  1
  14. hid                   180224  6 i2c_hid,usbhid,hid_multitouch,hid_generic,hid_logitech_dj,hid_logitech_hidpp
  15. (base) robot@YL:~/Downloads/CH341SER_LINUX$
复制代码
发现已经识别,这是本人的踩坑记录办理过程。但是本人重启电脑后发现驱动又没了,须要重新在H341SER_LINUX文件夹下sudo make load 才有。时间不早了,明天办理~~
开机主动加载CH340驱动
ch34x.ko文件被复制到内核模块目次。这个目次是/lib/modules/$(uname -r)/kernel/drivers/usb/serial/
  1. sudo cp ch34x.ko /lib/modules/$(uname -r)/kernel/drivers/usb/serial/
复制代码
刷新模块依赖关系
  1. sudo depmod
复制代码
执行完成后重新启动电脑即可。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

莱莱

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表