USB HID (LED) 小工具的永久名稱

USB HID (LED) 小工具的永久名稱

我有一個 USB LED 小工具,顯示為 USB HID 裝置。當我將它插入我的伺服器時,它顯示為/sys/class/leds/delcom2:{red,green,blue},我可以透過操作在那裡顯示的檔案來操作它。

lrwxrwxrwx 1 root root 0 Apr  7 13:22 /sys/class/leds/delcom2:blue -> ../../devices/pci0000:00/0000:00:1d.2/usb8/8-1/8-1:1.0/0003:0FC5:B080.0007/leds/delcom2:blue
lrwxrwxrwx 1 root root 0 Apr  7 13:22 /sys/class/leds/delcom2:green -> ../../devices/pci0000:00/0000:00:1d.2/usb8/8-1/8-1:1.0/0003:0FC5:B080.0007/leds/delcom2:green
lrwxrwxrwx 1 root root 0 Apr  7 13:22 /sys/class/leds/delcom2:red -> ../../devices/pci0000:00/0000:00:1d.2/usb8/8-1/8-1:1.0/0003:0FC5:B080.0007/leds/delcom2:red

我的問題是名稱delcom2因機器而異。在另一台電腦上它被命名為delcom5,我擔心如果我將它插入 USB 集線器或類似設備,它會得到另一個名稱。我想要某種持久命名對於這個小工具,以便我可以透過腳本可靠地操作它。

我嘗試編寫 udev 規則,但失敗了。我找到的大多數有關重命名的信息都談到了,SYMLINK+="..."但這似乎不起作用。它給我一個原始 USB 裝置的符號連結:

lrwxrwxrwx 1 root root 15 Apr  7 13:45 /dev/delcom -> bus/usb/003/003

我也嘗試過該NAME="..."方法,但也失敗了:

SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="0fc5", ATTRS{idProduct}=="b080", NAME="delcom"

systemd 日誌日誌的最後一行顯示了失敗的原因:內核設備節點無法重新命名

usb 5-1: new low-speed USB device number 2 using uhci_hcd
usb 5-1: New USB device found, idVendor=0fc5, idProduct=b080
usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 5-1: Product: USB IO Controller 
usb 5-1: Manufacturer: Delcom Products Inc.
hid-led 0003:0FC5:B080.0008: hidraw2: USB HID v1.00 Device [Delcom Products Inc. USB IO Controller ] on usb-0000:00:1a.2-1/input0
hid-led 0003:0FC5:B080.0008: Delcom Visual Signal Indicator G2 initialized
systemd-udevd[17574]: NAME="delcom" ignored, kernel device nodes cannot be renamed; please fix it in /etc/udev/rules.d/99-usb-led.rules:1

問題

如何在 Linux 中為 USB HID LED 裝置建立持久名稱?

相關內容