The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Помогите создать правило для udev"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Драйверы, оборудование / Linux)
Изначальное сообщение [ Отслеживать ]

"Помогите создать правило для udev"  +/
Сообщение от qazarus email on 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

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Помогите создать правило для udev"  +/
Сообщение от pavlinux (ok) on 16-Авг-15, 15:03 
Есть маза, что по первому правилу симлинк создаётся  на любое (tty) устройство воткнутое в ЮСБ
Ну и надо понимать, что 1234567890ABCDEF - это не серийник, если погуглить, думаю найдется ещё мильон таких.  
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Помогите создать правило для udev"  +/
Сообщение от qazarus email on 16-Авг-15, 16:18 
> Есть маза, что по первому правилу симлинк создаётся  на любое (tty)
> устройство воткнутое в ЮСБ

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

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

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

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Помогите создать правило для udev"  +/
Сообщение от pavlinux (ok) on 16-Авг-15, 16:33 
>> Есть маза, что по первому правилу симлинк создаётся  на любое (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"

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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