udev ignore_device не будет работать, если устройство уже подключено
Вопрос
Я не был уверен, что это был правильный сайт, чтобы поставить этот вопрос, но я поставил его здесь, так как это своего рода вопрос программирования, и я подумал, что толпа SO была наиболее ориентированной на Linux из трех сайтов , Р>
В любом случае, я пытаюсь найти способ смоделировать отключение устройства с точки зрения программного обеспечения, как если бы пользователь физически отключил его. Пока что я создал правило udev в /etc/udev/rules.d под названием 10-nano.rules:
SYSFS{idVendor}=="05ac", OPTIONS+="ignore_device"
Это правило отлично работает для игнорирования устройств, но только после того, как они были отключены и снова подключены. Но я хочу написать правило, а затем игнорировать устройство, как если бы оно было отключено. Я пытался & Quot; udevadm триггер & Quot; с и без sudo, но по какой-то причине я не могу применить это правило, пока устройство подключено. Есть предложения?
Кстати, я могу повторно подключить устройство, которое было проигнорировано, удалив 10-nano.rules, а затем запустив " sudo udevadm trigger " ;, как сказано выше, а не наоборот (по какой-то причине мое системное время и интернет портятся, когда я запускаю эту команду)
Решение
Вы пытались rmmod
модуль, управляющий устройством?
Вы также можете смоделировать события удаления с помощью udevadm test
, p.e:
sudo udevadm test --action="remove" <devpath>
Вы можете увидеть, как devpath смотрят на udevadm monitor
при физическом подключении или удалении устройства, или проверить их в /sys/<devpath>
.