Linux
udev 僅報告 USB 設備配置的事件,而不是 USB 設備本身的事件
我正在嘗試在插入 USB 設備時執行某個 Python 腳本。我需要處理各種 USB 設備。我正在使用這樣的規則:
SUBSYSTEMS=="usb", ENV{DEVTYPE}=="usb_device", RUN+="/.../test.py $devpath"
當我插入 USB 快閃記憶體驅動器時,
test.py
腳本沒有執行。如果我使用這樣的規則:SUBSYSTEM=="usb", RUN+="/.../test.py $devpath"
我擷取了 的事件
/devices/pci0000:00/0000:00:02.1/usb1/1-1/1-1.2/1-1.2:1.0
,這是設備的預設配置;但我沒有得到任何事件/devices/pci0000:00/0000:00:02.1/usb1/1-1/1-1.2
。不過,我確實看到了這樣的事件udevadm monitor
。為什麼會這樣?我錯過了什麼嗎?我的發行版是目前的 Arch Linux。
我找到了問題的根源。事實證明這是由覆蓋我自己的規則的 VirtualBox 規則引起的。