Для поддержки IrDA/USB (реализуется при помощи usermap) необходимо выполнять некоторую последователность действий при подключении устройства и при его отключении. Сейчас такой возможности не предусмотрено: /etc/hotplug/usb.agent ... case $ACTION in add) ... for MAP in $MAP_USERMAP $HOTPLUG_DIR/usb/*.usermap do ... done ... ;; remove) if [ -x $REMOVER ]; then $REMOVER fi rm -f $REMOVER ;; ...
Кстати, за отмазку вполне может проканать указание как пользоваться $REMOVER'ом. Это как я понимаю наиболее прямой путь в данной ситуации.
Как использовать REMOVER рассказано в комментариях usb.agent'а
Это? # This script then adds the variable: # # REMOVER=/var/run/usb/<some string unique to $DEVICE> # # This is the path where the script would like to find a remover, if # the target device needs one. This script is executed on remove if # it is executable when the remove happens. Насколько кошерно такое использование: ... do something useful if [ -n "$REMOVER" ]; then rmscript=$(mktemp "${REMOVER}.XXXXXXXXXX") cat <<EOF > "$rmscript" #!/bin/sh ... do something EOF chmod 700 "$rmscript" mv -f "$rmscript" "$remover" fi Ещё вопрос - имеет ли смысл переменная ACTION в usermap скрипте? Во всех примерах подразумевается, что ACTION всегда add...
Наверное где-то имеет. Кстати, а зачем тебе нужно что-то делать в REMOVER ?
> Кстати, а зачем тебе нужно что-то делать в REMOVER ? Нужно убивать irattach (service irda stop). Сам не дохнет...
Алексей, подожди заморачиваться. Мы тут с pilot@ посовещались, irdaX это же сетевой интерфейс, дергается он через net.agent, поэтому для него надо делать up\down в etcnet
(In reply to comment #6) > Алексей, подожди заморачиваться. Мы тут с pilot@ посовещались, irdaX это же > сетевой интерфейс, дергается он через net.agent, поэтому для него надо делать > up\down в etcnet Он такой же сетевой, как tty. /dev/ircommX (модуль ircomm-tty). Как scmxx будет общаться с телефоном через сетевой интерфейс?
а ты включи для начала дебаг в хотплюе и подергай игду туда сюда, все увидишь. в конце концов неважно чем он будет подниматься\опускаться, главное что бы реализация была простая
Ага, именно так. Вызывается net.agent c нужным irdaX... Как вариант - запускать irattach из net.agent через start-stop-daemon, пропатчив первый на предмет создания уникальных пидфайлов (его вообще переписать бы надо если честно). Либо то же самое, но в etcnet. Можно вообще всю поддержку irda вынести в etcnet.
> Либо то же самое, но в etcnet. Можно вообще всю поддержку irda вынести в etcnet. ... или в hotplug :) Хорошо.
> ... или в hotplug :) Хорошо. А что вообще нужно от интерфейса irdaX? У меня дальше irattach и modprobe ircomm-tty фантазия не идёт. Обычно всё равно поверх него работает pppd, либо как клиент либо как сервер...
Не могу похвастаться более занятными применениями.
Еще можно смонтировать содержимое сотового через OBEX.
raorn, используй /etc/dev.d/ в udev-0.62, оно как раз для этих целей.