Назад | Перейти на главную страницу

udev сообщает о событиях только для конфигурации USB-устройства, но не для самого USB-устройства.

Я пытаюсь выполнить определенный скрипт Python при вставке USB-устройств. Мне нужно работать со всеми видами USB-устройств. Я использую такое правило:

SUBSYSTEMS=="usb", ENV{DEVTYPE}=="usb_device", RUN+="/.../test.py $devpath"

Когда я вставляю флешку, 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, которое перекрыло мое собственное правило.