把Ubuntu中的USB设备名称改为固定的
- [1、 前言](#1、 前言)
- 2、更改设备名称
-
- [2.1 查看产商ID和产品ID](#2.1 查看产商ID和产品ID)
- [2.2 添加一个规则文件](#2.2 添加一个规则文件)
- [2.3 重新加载规则文件](#2.3 重新加载规则文件)
- [2.4 查看更改名称后的设备](#2.4 查看更改名称后的设备)
- 3、总结
1、 前言
|--------------------------------------------------------------------------------------------|
| 今天在连接虚拟机Ubuntu中的USB设备时会出现id改变的问题,不稳定,记录一下怎么把虚拟机Ubuntu中的USB设备名称改为固定名称,方便自己回顾,也可以给有需要的人提供帮助。 |
2、更改设备名称
|------------------------|
| 主要通过添加一个规则文件来更改USB设备名称 |
2.1 查看产商ID和产品ID
bash
udevadm info -a -n /dev/ttyUSB0
| 部分 | 含义 | 工程理解 |
|---|---|---|
udevadm |
udev 管理工具 | Linux 设备管理的"真相源" |
info |
查询设备信息 | 不改系统,只读 |
-a |
attributes,递归父设备 | 一直查到 USB 控制器 |
-n /dev/ttyUSB0 |
指定设备节点 | 现在插的 USB-串口 |

| 字段 | 当前值 | 含义 | 工程意义 | 是否必用 |
|---|---|---|---|---|
ATTRS{idVendor} |
1a86 |
USB 厂商 ID | 沁恒 CH340/CH341 | ✅ 必用 |
ATTRS{idProduct} |
7523 |
产品 ID | 串口芯片型号 | ✅ 必用 |
ATTRS{product} |
USB Serial |
产品字符串 | 可读性描述 | ⭕ 可用 |
2.2 添加一个规则文件
|------------|
| 添加一个新的规则文件 |
bash
sudo vi /etc/udev/rules.d/99-ch340.rules

| 部分 | 含义 |
|---|---|
sudo |
改系统规则,必须 root |
/etc/udev/rules.d/ |
自定义规则目录 |
99- |
数字越大,优先级越高 |
ch340.rules |
文件名,随意但有意义 |
|-----------------|
| 把下面的指令添加到文件的第一行 |
bash
SUBSYSTEM=="tty", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="ttyTEMP"

| 字段 | 解释 |
|---|---|
SUBSYSTEM=="tty" |
只匹配串口设备 |
ATTRS{idVendor}=="1a86" |
USB 厂商 ID(CH340) |
ATTRS{idProduct}=="7523" |
USB 产品 ID |
SYMLINK+="ttyTEMP" |
创建一个别名 /dev/ttyTEMP |
2.3 重新加载规则文件
|----------------|
| 保存退出文件后输入下面的指令 |
bash
sudo udevadm control --reload-rules
sudo udevadm trigger

| 命令 | 作用 |
|---|---|
--reload-rules |
重新加载规则文件 |
trigger |
让当前设备重新跑一遍规则 |
2.4 查看更改名称后的设备
|--------------------------|
| 重启系统,输入下面的指令可以看到更改名称后的设备 |
bash
ls -l /dev/ttyTEMP

3、总结
|----------------------------------------------------------------------------------------------------------------|
| 以上就是把虚拟机Ubuntu中的USB设备名称改为固定名称行的整个过程了,浏览过程中,如若发现错误,欢迎大家指正,有问题的可以评论区留言或者私信。最后,如果大家觉得有所帮助的话,可以点个赞,谢谢大家!祉猷并茂,顺遂无虞! |