Das geht mit udevadm :
udevadm monitor --subsystem-match=usb --property
oder
udevadm monitor --subsystem-match=usb --property --udev
um nur udev zu filtern Veranstaltungen. Wenn Sie grep möchten für eine bestimmte Eigenschaft müssen Sie udevadm entpuffern Ausgabe (mit Tools wie stdbuf , script , unbuffer ...):
stdbuf -i 0 -o 0 -e 0 udevadm monitor --subsystem-match=usb --property --udev | grep DEVPATH
oder
script -q /dev/null -c "udevadm monitor --subsystem-match=usb --property --udev" | grep PRODUCT
oder
unbuffer udevadm monitor --subsystem-match=usb --property --udev | grep -E 'ID_VENDOR_ID|ID_MODEL_ID'
Diese Informationen erscheinen in den Kernel-Protokollen – normalerweise in /var/log/kern.log , oder /var/log/syslog , oder eine andere Datei (abhängig von Ihrer Syslog-Konfiguration, verschiedene Distributionen haben unterschiedliche Standardwerte).
Wenn Sie etwas vorgefiltert haben möchten, können Sie eine udev-Regel hinzufügen. Erstellen Sie eine Datei /etc/udev/rules.d/tkk-log-usb.rules etwas enthält wie:
SUBSYSTEM=="usb", RUN+="/usr/local/sbin/tkk-usb-event"
Die Umgebung des Programms ist mit vielen Variablen gefüllt, die das Gerät beschreiben, darunter:
ACTION(addoderremove)DEVICEist ein Pfad zum Gerät, wenn Sie darauf zugreifen möchtenID_MODEL_IDundID_VENDOR_IDenthalten die Modell- und Anbieter-ID undID_MODELundID_VENDORenthalten den entsprechenden TextID_SERIALenthält die Seriennummer des Geräts (sofern vorhanden)