Небольшое облегчение жизни с инфракрасником Tekram 410w.
Добавлено: 25 июн 2006 15:49
Небольшое облегчение жизни с инфракрасником Tekram 410w.
Сделано с помощью udev.
Для начала пишем правило для udev:
/etc/udev/rules.d/irda.rules
Пишем скрипт-хелпер
/lib/udev/irda.sh
idVendor и idProduct можно узнать набрав lsusb -v, при помощи них можно делать специфичные настройки для определенного инфракрасника, если ничего подобного не предусматривается, эту строчку закомментить, а сточку на действие add без idVendor/idProduct раскомментировать.
От root'а делаем
udevcontrol reload_rules
Теперь, если инфракрасник зависнет, нужно будет просто переткнуть его в порт...
Поиск решения что бы сие чудо не зависало вообще идет, приветствуются все
идеи.
Кстати, это решение дает реальный хот-плаг для инфракрасника, т.е. ничего больше не нужно химичить если его воткнуть на лету
Сделано с помощью udev.
Для начала пишем правило для udev:
/etc/udev/rules.d/irda.rules
Код: Выделить всё
# Tekram 410w
SUBSYSTEM=="net", ACTION="add", DEVPATH=="*/irda*", SYSFS{idVendor}=="066f", SYSFS{idProduct}=="4200", RUN+="/lib/udev/irda.sh"
# Rule for all Irda devices:
#SUBSYSTEM=="net", ACTION="add", DEVPATH=="*/irda*", RUN+="/lib/udev/irda.sh"
SUBSYSTEM=="net", ACTION="remove", DEVPATH=="*/irda*", RUN+="/lib/udev/irda.sh"
/lib/udev/irda.sh
Код: Выделить всё
#!/bin/bash
DEBUG=0
DEV=`basename $DEVPATH`
PID=`ps auxwww | grep irattach | grep $DEV | grep -v grep | awk '{print($2)}'`
if [ x"$DEBUG" = "1" ]; then
echo >> /tmp/irda.txt
echo `date` >> /tmp/irda.txt
echo $ACTION >> /tmp/irda.txt
echo $DEVPATH >> /tmp/irda.txt
echo $DEV >> /tmp/irda.txt
echo $PID >> /tmp/irda.txt
echo $SUBSYSTEM >> /tmp/irda.txt
echo $@ >> /tmp/irda.txt
echo "--" >> /tmp/irda.txt
fi
if [ x"$PID" != x"" ]; then
kill $PID
fi
if [ x"$ACTION" = x"add" ]; then
/usr/sbin/irattach $DEV -s
fi
От root'а делаем
udevcontrol reload_rules
Теперь, если инфракрасник зависнет, нужно будет просто переткнуть его в порт...
Поиск решения что бы сие чудо не зависало вообще идет, приветствуются все
идеи.
Кстати, это решение дает реальный хот-плаг для инфракрасника, т.е. ничего больше не нужно химичить если его воткнуть на лету