接続されているUSBデバイスのタイトルを取得する必要があります。私はそれを行うことができますlsusb
。
udevは、ルールを記述するときにいくつかの置換を許可します。たとえば、$kernel
デバイスの名前$devpath
を取得したり、デバイスへのパスを取得したりすることができます。
しかし問題はそのlsusb
ような文字列を返すことです:
Bus 005 Device 032: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
しかし、udevのdevpathは次のとおりです。
/devices/pci0000:00/0000:00:1d.0/usb5/5-2
バス番号は同じ(5
)ですが、番号が異なります。Device 032
論理的な番号のように見え(デバイスを再接続すると、この番号が増加します)、2
物理的なデバイス番号のようです。
そのため、udevは物理番号を返し、論理番号を取得する必要があります。次に、次のようにデータを取得できます。lsusb -D /dev/bus/usb/005/032
では、どうすれば032
物理パスで論理デバイス番号を取得でき/devices/pci0000:00/0000:00:1d.0/usb5/5-2
ますか?
udev
vs.lsusb
とsys/devices/..
vs.のさまざまな使い方に戸惑い、/dev/bus/usb/..
あなたが知っているように思われるあなたの答えで判断すると:)多分あなたはこれらの2つの質問にいくつかの光を当てることができますか?askubuntu.com/questions/342061/power-on-off-usb-portsおよびaskubuntu.com/questions/498950/…–