有人能解释一下/dev/ttyACM0和lsusb输出之间的连接吗?
我在跟踪本指令。上面写着“更新ttyACM0以匹配适配器位置”。我不知道在这里该怎么办。
lsusb
Bus 002 Device 002: ID 1058:25a3 Western Digital Technologies, Inc. Elements Desktop (WDBWLG)
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0451:16a8 Texas Instruments, Inc. CC2531 ZigBee
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
simon@simon-itx:~/Downloads/zigbee2mqtt$ usb-devices发布于 2021-12-31 15:07:35
lsusb的输出显示,您有一个Zigbee设备:
Bus 001 Device 004: ID 0451:16a8 Texas Instruments, Inc. CC2531 ZigBee现在,某个类别的USB设备有驱动程序,这将创建/dev/ttyACM*设备。这些数字在创建时会被分配到越来越多的数字,这些数字与lsusb的输出完全无关。
从我所看到的lsusb输出来看,您可能只有一个输出。因此,如果您执行ls /dev/ttyACM*,您应该会看到一个文件/dev/ttyACM0。
如果是这样的话,使用以下文件启动容器:
docker run \
--device=/dev/ttyACM0
...你就完蛋了。
如果您看到多个数字不同的文件,例如/dev/ttyACM0和/dev/ttyACM1,那么下一步就是找出哪个文件是哪个文件。有多种方法可以做到这一点,例如,您可以在插入设备之后查看dmesg的输出,或者可以使用/sys文件系统,该系统具有显示这种关系的符号链接。
https://unix.stackexchange.com/questions/684551
复制相似问题