Правило Удева не используется

Я пытаюсь написать правило udev на моем Beaglebone White, которое запускается, когда Pantech UML 295 заканчивает загрузку.

При использовании udevadm monitor --environment я получаю следующий окончательный результат, который хотел бы основать правило:

 UDEV [3163.454297] add /devices/platform/omap/musb-ti81xx/musb-hdrc.1/usb1/1-1/1- 1:1.0/net/eth1 (net) ACTION=add DEVPATH=/devices/platform/omap/musb-ti81xx/musb-hdrc.1/usb1/1-1/1-1:1.0/net/eth1 ID_BUS=usb ID_MODEL=PANTECH_UML295 ID_MODEL_ENC=PANTECH\x20UML295 ID_MODEL_ID=6064 ID_REVISION=0228 ID_SERIAL=Pantech__Incorporated_PANTECH_UML295_UML295692146818 ID_SERIAL_SHORT=UML295692146818 ID_TYPE=generic ID_USB_DRIVER=cdc_ether ID_USB_INTERFACES=:020600:0a0000:030000: ID_USB_INTERFACE_NUM=00 ID_VENDOR=Pantech__Incorporated ID_VENDOR_ENC=Pantech\x2c\x20Incorporated ID_VENDOR_ID=10a9 IFINDEX=6 INTERFACE=eth1 SEQNUM=1151 SUBSYSTEM=net SYSTEMD_ALIAS=/sys/subsystem/net/devices/eth1 TAGS=:systemd: USEC_INITIALIZED=3163023666 

Мое правило udev версии 1:

 ENV{ID_BUS}=="usb", SUBSYSTEM=="net", RUN+="/home/root/rebootInternetConnection.sh", ENV{ID_MODEL}=="PANTECH_UML295", ACTION=="add", INTERFACE=="eth1", ENV{ID_USB_DRIVER}=="cdc_ether" 

и версия 2:

 ACTION=="add", SUBSYSTEM=="net", RUN+="/home/root/rebootInternetConnection.sh" 

Версия 2 – это урезанная версия, которая должна запускаться более одного раза, но не запускается вообще. Версия 1 использует переменные среды, которые я не уверен, имеет ли доступ к правилу.

Чтобы уточнить: правило вообще не запускается, а сценарий оболочки имеет эхо, которое должно отображаться. Мое правило находится в каталоге /etc/udev/rules.d/ с именем 10-local.rules.

РЕДАКТИРОВАТЬ

Вот еще несколько нефункциональных правил, помещенных в /etc/udev/rules.d/81-pantech.rules:

 ACTION=="add", SUBSYSTEM=="net", ATTR{idVendor}=="10a9", RUN+="/home/root/reboot InternetConnection.sh" SUBSYSTEM=="net", ATTR{idVendor}=="10a9", ATTR{idProduct}=="6064", RUN+="/home/ro ot/rebootInternetConnection.sh" ACTION=="add", SUBSYSTEM=="hid", RUN+="/home/root/rebootInternetConnection.sh" ACTION=="add", SUBSYSTEM=="usb", RUN+="echo foo > /tmp/foo" SUBSYSTEM=="usb", ATTR{product}=="PANTECH UML295", RUN +="echo foo > /tmp/foo" ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="PANTECH UML295", RUN+="/home/ro ot/rebootInternetConnection.sh" 

Когда я запускаю:

 udevadm test /devices/platform/omap/musb-ti81xx/musb-hdrc.1/u 

он возвращает последние пару строк:

 run: 'echo foo > /tmp/foo' run: 'echo foo > /tmp/foo' run: 'echo foo > /tmp/foo' run: '/home/root/rebootInternetConnection.sh' 

Есть ли случай, когда правила добавят к RUN + =, но не будут использоваться?

  • остановить внешний жесткий диск от групповой дискеты
  • Почему сетевые интерфейсы не работают в / dev как другие устройства?
  • Правило Udev для соответствия USB-устройству нескольких узлов
  • Как перезагрузить правила udev без перезагрузки?
  • Что может привести к изменению скорости порта USB?
  • Правила Udev, соответствующие выходу команды (или что-то подобное)
  • Может ли файловая система FAT32 и NTFS существовать без UUID?
  • Какова связь между ACPI, udev, HAL и pm-utils
  • One Solution collect form web for “Правило Удева не используется”

    Не знаю, что изменилось, но правило теперь используется в файле /etc/udev/rules.d/81-pantech.rules

    Одна из возможностей – отсутствующий каталог /run/udev/rules.d/. Когда я побежал

     udevadm test /devices/platform/omap/musb-ti81xx/musb-hdrc.1/usb1/1-1 

    Я получил строку, сообщающую, что каталог отсутствует. Я нашел эту команду в этом руководстве: http://weininger.net/how-to-write-udev-rules-for-usb-devices/

     mkdir /run/udev/rules.d/ 

    Другая возможность заключается в том, что я вручную запускаю udev daemon с

     /lib/udev/udevd --debug 

    Это мое окончательное правило:

     ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="PANTECH UML295", RUN+="/home/root/rebootInternetConnection.sh" ACTION=="add", SUBSYSTEM=="net", ATTR{idVendor}=="10a9", RUN+="/home/root/rebootInternetConnection.sh" 
    Linux и Unix - лучшая ОС в мире.