Linux 系统 ubuntu22.04 发行版本 固定 USB 设备端口号

前言:

项目中为了解决 usb 设备屏幕上电顺序导致屏幕偏移、触屏出现偏移等问题。

一、方法1:使用设备 ID 号

步骤:

  1. 查看 USB 设备的供应商ID和产品ID

    Bus 001 Device 003: ID 090c:1000 Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) Flash Drive

    1d6b:0003:090c是供应商ID,1000 是产品ID。

  2. 创建 udev 规则文件 /etc/udev/rules.d/01-usb-screen.rules (名字可以随便命,这里写01,可以被系统第一个处理),并添加以下内容

    在/dev目录下创建一个名为COM1的符号链接,指向设备/dev/ttyUSB*。

    SUBSYSTEM=="ttyUSB*", ATTRS{idVendor}=="1d6b", ATTRS{idProduct}=="0003", MODE:="0777" , SYMLINK+="COM1"

    不用在意这个 USB 设备生成的节点是 ttyUSB*, 因为 COM1 会一直指向这个设备的 ID 号,所以你只需要访问 /dev/COM1 就可以了。

  3. 重新加载udev规则并重启udev服务

    sudo udevadm control --reload-rules
    sudo service udev restart

  4. 查询

    插入的 USB 设备能够自动映射到指定的串口号。

    bobo@thj:~$ ls -l /dev/COM1
    lrwxrwxrwx 1 root root 7 Jan 30 10:39 /dev/COM1 -> ttyUSB0

二、方法2:使用硬件序列号(防止相同生产商生产的相同USB串口)

步骤:

  1. 查看硬件序列号

    udevadm info --attribute-walk --name=/dev/ttyUSB0

  2. 添加规则到文件 /etc/udev/rules.d/01-usb-screen.rules

    ATTRS{seria1}=="这个是刚刚查询到的硬件序列号", MODE:="0777", GROUP:="dialout", SMLINK+="COM2"

  3. 查询

    插入的 USB 设备能够自动映射到指定的串口号。

    bobo@thj:~$ ls -l /dev/COM2
    lrwxrwxrwx 1 root root 7 Jan 30 10:39 /dev/COM2 -> ttyUSB0

相关推荐
网易独家音乐人Mike Zhou23 分钟前
【Linux应用】开发板USB共享网络,网线或USB以太网共享网络(局域网连接PC和开发板,实现PC给开发板共享网络,USB通过NDIS驱动共享)
linux·网络·单片机·mcu·物联网·嵌入式·iot
basketball6161 小时前
Linux C 管道文件操作
linux·运维·c语言
浩浩测试一下2 小时前
Windows 与 Linux 内核安全及 Metasploit/LinEnum 在渗透测试中的综合应用
linux·运维·windows·web安全·网络安全·系统安全·安全架构
stark张宇2 小时前
Linux 文件创建、删除、移动、复制基础知识整理
linux·服务器·centos
Jiangnan_Cai3 小时前
Linux 系统 docker 部署 Dify
linux·docker·大模型·dify
Two_brushes.4 小时前
【linux网络】深入理解 TCP/UDP:从基础端口号到可靠传输机制全解析
linux·运维·服务器
FJW0208144 小时前
【Linux】系统引导修复
linux·运维·服务器
慌糖4 小时前
CentOS 安装 Redis 简明指南
linux·redis·centos
设计师小聂!4 小时前
linux常用命令(一)
linux·运维·服务器
hnlucky5 小时前
《Nginx + 双Tomcat实战:域名解析、静态服务与反向代理、负载均衡全指南》
java·linux·服务器·前端·nginx·tomcat·web