The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Помогите создать правило для udev, !*! qazarus, 16-Авг-15, 13:11  [смотреть все]
Имеется модем Alcatel X090S. Он имеет серийник 1234567890ABCDEF и имеет три рабочих порта, при чем рабочий порт модема это "01".
Мне требуется на него создать симлинк.

Суть проблемы следующая:
Такое правило:
ACTION=="add", SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="01", SYMLINK+="modem"
Создает симлинк на правильный порт, и все работает, но мне требуется ловить модем еще и по серийнику.

Такое правило:
ACTION=="add", SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{serial}=="1234567890ABCDEF", SYMLINK+="modem"
Создает симлинк на первый порт, потом переподключает на второй, и вконце на третий. Модем то не работает, но симлинк все-же создается.

Логично предположить что мне требуется такое правило:
ACTION=="add", SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{serial}=="1234567890ABCDEF", ATTRS{bInterfaceNumber}=="01", SYMLINK+="modem"
но вот оно уже не работает, симлинк не создается.

Что не так? Как правильно написать правило?
Полный лог udev подключения модема можно посмотреть здесь:
https://dl.dropboxusercontent.com/u/27680952/GSM.log

  • Помогите создать правило для udev, !*! pavlinux, 15:03 , 16-Авг-15 (1)
    Есть маза, что по первому правилу симлинк создаётся  на любое (tty) устройство воткнутое в ЮСБ
    Ну и надо понимать, что 1234567890ABCDEF - это не серийник, если погуглить, думаю найдется ещё мильон таких.  
    • Помогите создать правило для udev, !*! qazarus, 16:18 , 16-Авг-15 (2)
      > Есть маза, что по первому правилу симлинк создаётся  на любое (tty)
      > устройство воткнутое в ЮСБ

      Проверял по логах - создается правильно.

      > Ну и надо понимать, что 1234567890ABCDEF - это не серийник, если погуглить,
      > думаю найдется ещё мильон таких.

      Это да, но тут есть маленький ньюанс - я нашел как этот серийник изменять через прошивку, по этому меня этот вопрос и интересует.

      • Помогите создать правило для udev, !*! pavlinux, 16:33 , 16-Авг-15 (3)
        >> Есть маза, что по первому правилу симлинк создаётся  на любое (tty)
        >> устройство воткнутое в ЮСБ
        > Проверял по логах - создается правильно.
        >> Ну и надо понимать, что 1234567890ABCDEF - это не серийник, если погуглить,
        >> думаю найдется ещё мильон таких.
        > Это да, но тут есть маленький ньюанс - я нашел как этот
        > серийник изменять через прошивку, по этому меня этот вопрос и интересует.

        Через GOTO попробуй. Что-то типа

        ACTION=="add", SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{serial}=="1234567890ABCDEF", GOTO="modem_ports"

        LABEL="modem_ports"
        SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="01", SYMLINK+="modem"


        ---
        # Гы

        ACTION!="add", GOTO="modem_end"
        SUBSYSTEM!="tty", GOTO="modem_end"
        SUBSYSTEMS=="usb", ATTRS{serial}=="1234567890ABCDEF", GOTO="modem_ports"
        GOTO="modem_end"

        LABEL="modem_ports"
        SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{ALKATEL_FACENUM}="$attr{bInterfaceNumber}"
        ATTRS{idVendor}=="1234", ATTRS{idProduct}=="abcd", ENV{ALKATEL_FACENUM}=="01", SYMLINK+="modem"

        LABEL="modem_end"




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру