правило udev (как это работает?)

Выбор и настройка HardWare

Модератор: Модераторы разделов

Аватара пользователя
AlexYeCu
Сообщения: 1137
ОС: fedora

правило udev

Сообщение AlexYeCu »

Фрагмент 50-udev.rules

Код: Выделить всё

# input devices
KERNEL=="mice",            NAME="input/%k"
KERNEL=="mouse*",        NAME="input/%k"
KERNEL=="event*",        NAME="input/%k", PROGRAM="/etc/udev/wacom.sh", SYMLINK="/dev/input/wacom%e"
KERNEL=="js*",            NAME="input/%k", SYMLINK+="%k"
KERNEL=="ts*",            NAME="input/%k"


А вот wacom.sh:

Код: Выделить всё

/#!/bin/sh
# Hack to check if intuos3 is being connected.
#
export VendorID=`cat /sys/${DEVPATH}/../id/vendor`
export ProductID=`cat /sys/${DEVPATH}/../id/product`
logger $VendorID:$ProductID
echo $VendorID:$ProductID


Так вот, я не понимаю как это работает (в таком виде), но проблему "на каком ивэнете сегодня висит планшет" решает на 100%

Но! При загрузке появляются сообщения о невозможности выполнить данный скрипт (права и разрешения есть), и загрузка замедляется на неск. секунд. Не смертельно, но может кто в курсе как поправить?
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: правило udev

Сообщение Uncle_Theodore »

AlexYeCu писал(а):
16.07.2007 20:14

Код: Выделить всё

/#!/bin/sh

Но! При загрузке появляются сообщения о невозможности выполнить данный скрипт (права и разрешения есть), и загрузка замедляется на неск. секунд. Не смертельно, но может кто в курсе как поправить?

Я думаю, палку надо убрать перед #!/bin/sh

А какое сообщение об ошибке?
Спасибо сказали:
Аватара пользователя
AlexYeCu
Сообщения: 1137
ОС: fedora

Re: правило udev

Сообщение AlexYeCu »

"/" убрал, эффект нулевой.
Сообщение что-то вроде

Код: Выделить всё

run_program exec of program /etc/udev/wacom.sh failed
Спасибо сказали:
Аватара пользователя
AlexYeCu
Сообщения: 1137
ОС: fedora

Re: правило udev

Сообщение AlexYeCu »

Так, запуска без ошибок добился, подредактировав права и последовав совету Uncle Theodore.
Но! При нормальном запуске эффекта нет - система не определяет, на какой event сел wacom в этот раз.
Складывается впечатление, что wacom.sh - нафиг не нужен, он просто выигрывает время (так как не может быть выполнен) для того, чтобы udev успела подхватить планшет. Не знаю прав ли, но другого объяснения, почему работает как надо только при невозможности скрипт выполнить, но не работает после его выполнения/при его отсутствии у меня нет.
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: правило udev

Сообщение (asper »

В принципе вы правы, этот скрипт всего лишь пишет в системный лог $VendorID:$ProductID, проверьте делает ли он это и если нет то какую ошибку пишет.
Сомнительно доброе привидение
Спасибо сказали:
Аватара пользователя
AlexYeCu
Сообщения: 1137
ОС: fedora

Re: правило udev

Сообщение AlexYeCu »

Похоже, решение найдено... ...не знаю, толи радоваться, что наконец-то, толи сокрушаться по поводу собственной тормознутости....
Скрипт не нужен.
Изменения в правиле 50-... тоже.
Надо всего лишь переименовать правило 60-wacom в 05-wacom...
Скрипт дейтсвительно выигрывал время, пока udev безуспешно пыталась его выполнить...
Спасибо сказали: