USB HID デバイスとして表示される USB LED ガジェットがあります。これをサーバーに接続すると、 として表示され、/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 デバイスの永続的な名前を作成するにはどうすればよいでしょうか?