编辑

编辑

我正在尝试设置udev规则以在 CentOS 7 计算机中为 USB 设备(ZWAVE 棒)创建符号链接。它正确设置了符号链接,但组和权限错误。

为了调试,我尝试了各种值:

# cat 99-usb-serial.rules 
# Copied from https://github.com/openhab/openhab/wiki/symlinks
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{product}=="RFXrec433", SYMLINK+="USBrfxcom", GROUP="dialout", MODE="0666" 
SUBSYSTEM=="tty", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="USBzwave", GROUP="dialout", MODE="0666"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="USBzwave1", GROUP="zvika", MODE="0666"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="USBzwave2", GROUP="zvika"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="USBzwave3"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="USBzwave4", MODE="0700"

但一切看起来都是一样的:

# ll /dev/USBzwave*
lrwxrwxrwx 1 root root 7 Nov  7 17:47 /dev/USBzwave -> ttyACM0
lrwxrwxrwx 1 root root 7 Nov  7 17:47 /dev/USBzwave1 -> ttyACM0
lrwxrwxrwx 1 root root 7 Nov  7 17:47 /dev/USBzwave2 -> ttyACM0
lrwxrwxrwx 1 root root 7 Nov  7 17:47 /dev/USBzwave3 -> ttyACM0
lrwxrwxrwx 1 root root 7 Nov  7 17:47 /dev/USBzwave4 -> ttyACM0

这是怎么回事?如何调试呢?

我尝试过跑步udevadm control --log-priority=debug。但仍然没有任何有用的信息dmesg/var/log/messages或者udevadm monitor

编辑

现在我明白GROUPMODE操作改变了 ttyACM0 定义,而不是软链接......

因此,只有最后一条规则是相关的 - 它会覆盖前面的规则。运行ll /dev/ttyACM0会给出正确的所有权和权限 - for ttyACM0.

但为什么/dev/USBzwave有不同的所有权和许可呢?

相关内容