我正在尝试使用 0666 权限自动挂载以下设备:
lsusb -vvv
Bus 001 Device 094: ID 0403:6014 Future Technology Devices International, Ltd FT232H Single HS USB-UART/FIFO IC
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0403 Future Technology Devices International, Ltd
idProduct 0x6014 FT232H Single HS USB-UART/FIFO IC
bcdDevice 9.00
iManufacturer 1 FTDI
iProduct 2 C232HM-DDHSL-0
iSerial 3 FTVWEM02
bNumConfigurations 1
为此,我在 /etc/udev/rules.d 中创建了以下 udev 规则
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", ATTR{idProduct}=="6014", MODE="0666", RUN+="/usr/bin/touch /tmp/udev-test.txt"code here
如您所见,我使用测试文件验证了规则的功能。该文件始终在连接 USB 设备时创建。
-rw-r--r-- 1 root root 0 Oct 20 09:56 udev-test.txt
这应该意味着该规则正在运行......但是它永远不会获得正确的权限。
运行时ls -l /dev/ttyU*
我得到以下结果:
crw-rw---- 1 root dialout 188, 0 Oct 20 09:56 /dev/ttyUSB0
奇怪的是,如果我以 root 身份从命令行运行 chmod,我总是可以更改设备的权限。我希望在每个插件上自动发生这种情况。请你帮助我好吗?
我正在运行 Scientific Linux 7
Linux version 4.7.5-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Sat Sep 24 11:54:29 EDT 2016
我已经搜索过的主题:
- 未应用 Udev 规则- 解决方案不起作用
- https://stackoverflow.com/questions/34116854/udev-created-my-symblic-link-to-my-device-but-permission-not-set
- 使用 udev 更改 ttyUSB 权限- 如果我添加 KERNEL=="ttyUSB*" 或 KERNEL=="ttyUSB0" 规则不再起作用
- 在 RPi 上插入 USB 后使用 udev 运行脚本