Ich muss den Titel des angeschlossenen USB-Geräts erhalten. Ich kann das mit machen lsusb.
udev erlaubt einige Ersetzungen, wenn ich Regeln schreibe: Sagen wir, wir können verwenden $kernel, um den Namen des Geräts abzurufen oder $devpathum den Pfad zum Gerät abzurufen.
Das Problem ist jedoch, dass lsusbder folgende String zurückgegeben wird:
Bus 005 Device 032: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Aber udevs Devpath ist:
/devices/pci0000:00/0000:00:1d.0/usb5/5-2
Die Busnummer ist dieselbe ( 5), aber die Nummern sind unterschiedlich: Device 032scheint eine logische Nummer zu sein (wenn ich das Gerät wieder anbringe, erhöht sich diese Nummer) und 2scheint eine physische Gerätenummer zu sein.
Also gibt udev die physische Nummer zurück und ich muss die logische Nummer erhalten. Dann kann ich Daten wie folgt abrufen:lsusb -D /dev/bus/usb/005/032
Also, wie kann ich logische Gerätenummer 032über physischen Pfad wie erhalten /devices/pci0000:00/0000:00:1d.0/usb5/5-2?
udevvs.lsusbundsys/devices/..vs./dev/bus/usb/..und nach Ihrer Antwort zu urteilen, scheinen Sie Bescheid zu wissen :) Vielleicht können Sie etwas Licht in diese beiden Fragen bringen? askubuntu.com/questions/342061/power-on-off-usb-ports und askubuntu.com/questions/498950/…