2013-09-04 10 views
0

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

При использовании 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 представляет собой урезанную версию, которая должна запускаться более одного раза, но не g et ran. Версия 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" 

ответ

1

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

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

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

У меня была строка, сообщающая, что каталог отсутствовал.

Другая возможность мне вручную запустить демон Udev с

/lib/udev/udevd --debug