小编spe*_*ter的帖子

ttyUSB 的 udev 规则与 {serial} 不工作

我正在使用 Ubuntu 17.10 以及 tty-to-USB 适配器(将来会添加更多),因此打算为适配器创建一个唯一的 udev 标识符。

我做了lsusb

Bus 007 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Run Code Online (Sandbox Code Playgroud)

udevadm 信息 -a -n /dev/ttyUSB0 | grep '{序列}' | head -n1导致

ATTRS{serial}=="**0000:00:16.0**"
Run Code Online (Sandbox Code Playgroud)

因此我做了sudo vi /etc/udev/rules.d/99-usb-serial.rules

SUBSYSTEM=="tty", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", ATTRS{serial}=="0000:00:16.0", SYMLINK+="ttyUSBComfoAir"
Run Code Online (Sandbox Code Playgroud)

在sudo udevadm control --reload-rules && sudo udevadm 触发之后,我期望一些 /dev/ttyUSB....,但是所有 /dev/ttyUSB*都会导致

crw-rw---- 1 root dialout 188, 0 Nov 20 18:04 /dev/ttyUSB0
Run Code Online (Sandbox Code Playgroud)

仅当我省略ATTRS{serial}时它才有效......

任何想法??- 由于添加更多这些适配器将需要序列号来区分适配器......

你好!因为我不太清楚相关部分是什么:我正在添加完整的输出......

  looking at device '/devices/pci0000:00/0000:00:16.0/usb7/7-1/7-1:1.0/ttyUSB0/tty/ttyUSB0':
    KERNEL=="ttyUSB0"
    SUBSYSTEM=="tty" …
Run Code Online (Sandbox Code Playgroud)

usb tty udev

5
推荐指数
2
解决办法
2万
查看次数

标签 统计

tty ×1

udev ×1

usb ×1