The OpenNET Project / Index page

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

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

"правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от exonix (ok) on 05-Апр-13, 15:44 
Доброго дня.
Есть настроенный сервер с Debian 6
#uname -a
#Linux server-1 2.6.32-5-686 #1 SMP Mon Jan 16 16:04:25 UTC 2012 i686 GNU/Linux
к нему подключены USB-модемы, и настроен udev правилом:
#cat /etc/udev/rules.d/10-ZTE.rules
SUBSYSTEM=="tty", KERNELS=="1-5.1:1.2", NAME="hub1/modem1"
SUBSYSTEM=="tty", KERNELS=="1-5.2:1.2", NAME="hub1/modem2"
соответственно есть:
# ll /dev/hub1/
total 0
drwxr-xr-x  2 root root        160 Jan  8 19:17 .
drwxr-xr-x 17 root root       3.4K Jan  8 19:17 ..
crw-rw----  1 root dialout 188,  3 Jan  8 19:17 modem1
crw-rw----  1 root dialout 188,  7 Jan  8 18:37 modem2

теперь на таком же железе, но на Debian 7 (test) с ядром 3.8 хочу сделать тоже самое:
# uname -a
Linux server-2 3.8.2 #1 SMP Tue Apr 2 19:58:54 CEST 2013 i686 GNU/Linux
# cat /etc/udev/rules.d/10-ZTE.rules
SUBSYSTEM=="tty", KERNELS=="1-9.5:1.2", NAME="hub1/modem1"
SUBSYSTEM=="tty", KERNELS=="1-9.5:2.2", NAME="hub1/modem2"

и вот не появляются устройства в /dev/

сами модемы ищу вот так: watch "dmesg | tail -55".

Что не так? спасибо.

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

Оглавление

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


1. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от PavelR (??) on 05-Апр-13, 16:09 
там как-то можно запустить дебаг получение всех событий, происходящих с udev в момент подключения - поиска устройства, нужно посмотреть, сравнить с вашими правилами, посмотреть чего оно там вообще делает. наверное нужно дебажить.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от exonix (ok) on 05-Апр-13, 16:13 
> там как-то можно запустить дебаг получение всех событий, происходящих с udev в
> момент подключения - поиска устройства, нужно посмотреть, сравнить с вашими правилами,
> посмотреть чего оно там вообще делает. наверное нужно дебажить.

а как запустить дебаг? я в Linux не особо много знаю. Я думал, там в udev.conf можно указать куда логи писать, но не нашёл там такой строчки... там вообще только:
cat /etc/udev/udev.conf
# The initial syslog(3) priority: "err", "info", "debug" or its
# numerical equivalent. For runtime debugging, the daemons internal
# state can be changed with: "udevadm control --log-priority=<value>".
#
# udevd is started in the initramfs, so when this file is modified the
# initramfs should be rebuilt.
udev_log="err"

нашёл вот это:
udev_log="debug" - но где потом смотреть дебаг?

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

3. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от PavelR (??) on 05-Апр-13, 16:21 
>[оверквотинг удален]
> # The initial syslog(3) priority: "err", "info", "debug" or its
> # numerical equivalent. For runtime debugging, the daemons internal
> # state can be changed with: "udevadm control --log-priority=<value>".
> #
> # udevd is started in the initramfs, so when this file is
> modified the
> # initramfs should be rebuilt.
> udev_log="err"
> нашёл вот это:
> udev_log="debug" - но где потом смотреть дебаг?

достоверно не помню, давно развлекался да и не часто это требуется.

возможно полезным будет
udevadm info
udevadm monitor

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

4. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от exonix (ok) on 05-Апр-13, 16:40 
> достоверно не помню, давно развлекался да и не часто это требуется.
> возможно полезным будет
> udevadm info
> udevadm monitor

вот что показал монитор, при удалении и добавлении одного модема:
~# udevadm monitor
custom logging function 0x8c8e008 registered
selinux=0
runtime dir '/run/udev'
calling: monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[584.501995] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
KERNEL[584.502048] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0 (usb-serial)
KERNEL[584.502084] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0 (usb)
KERNEL[584.502110] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
KERNEL[584.502133] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1 (usb-serial)
KERNEL[584.502159] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1 (usb)
KERNEL[584.504141] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2/tty/ttyUSB2 (tty)
KERNEL[584.504188] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2 (usb-serial)
KERNEL[584.504389] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2 (usb)
KERNEL[584.504428] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1 (usb)
UDEV  [584.521170] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
UDEV  [584.522291] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
UDEV  [584.524177] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0 (usb-serial)
UDEV  [584.525477] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1 (usb-serial)
UDEV  [584.526858] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0 (usb)
UDEV  [584.528148] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1 (usb)
UDEV  [584.534746] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2/tty/ttyUSB2 (tty)
UDEV  [584.535876] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2 (usb-serial)
UDEV  [584.537052] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2 (usb)
UDEV  [584.538567] remove   /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1 (usb)
KERNEL[596.063544] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1 (usb)
KERNEL[596.065027] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0 (usb)
KERNEL[596.065071] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0 (usb-serial)
KERNEL[596.065380] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
KERNEL[596.065413] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1 (usb)
KERNEL[596.065434] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1 (usb-serial)
KERNEL[596.065778] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
KERNEL[596.065811] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2 (usb)
KERNEL[596.065833] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2 (usb-serial)
KERNEL[596.066208] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2/tty/ttyUSB2 (tty)
UDEV  [596.069989] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1 (usb)
UDEV  [596.081621] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0 (usb)
UDEV  [596.083313] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0 (usb-serial)
UDEV  [596.089470] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1 (usb)
UDEV  [596.091107] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1 (usb-serial)
UDEV  [596.102447] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2 (usb)
UDEV  [596.104141] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2 (usb-serial)
UDEV  [596.155577] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.0/ttyUSB0/tty/ttyUSB0 (tty)
UDEV  [596.164648] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.1/ttyUSB1/tty/ttyUSB1 (tty)
UDEV  [596.168897] add      /devices/pci0000:00/0000:00:1d.7/usb9/9-5/9-5.1/9-5.1:1.2/ttyUSB2/tty/ttyUSB2 (tty)

ничего о моём правиле ( сейчас запущу на рабочем сервере.

на рабочем сервере тоже самое. ни слова о правиле и /dev/hub1/modem1

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

5. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от pavlinux (ok) on 05-Апр-13, 23:50 
> ничего о моём правиле ( сейчас запущу на рабочем сервере.

Патамуша в твоем правеле написано usb1, а в логе usb9!
Тыкай во все дыры ищи usb1 :D


---
#cat /etc/udev/rules.d/10-ZTE-PLX.rules

SUBSYSTEM=="tty", KERNEL=="ttyUSB0", GROUP="tty", MODE="0660", NAME="hub1/modem0"
SUBSYSTEM=="tty", KERNEL=="ttyUSB1", GROUP="tty", MODE="0660", NAME="hub1/modem1"
SUBSYSTEM=="tty", KERNEL=="ttyUSB2", GROUP="tty", MODE="0660", NAME="hub1/modem2"

--
Ну и глупый вопрос - чем /dev/ttyUSB* нефеншуит?

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

6. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от exonix (ok) on 08-Апр-13, 13:54 
>> ничего о моём правиле ( сейчас запущу на рабочем сервере.
> Патамуша в твоем правеле написано usb1, а в логе usb9!
> Тыкай во все дыры ищи usb1 :D

Спасибо, добрый человек. Переписал правило:
cat /etc/udev/rules.d/10-ZTE.rules
SUBSYSTEM=="tty", KERNELS=="9-5.1:1.2", NAME="hub1/modem1"
SUBSYSTEM=="tty", KERNELS=="9-5.2:1.2", NAME="hub1/modem2"

всё на месте:

ls /dev/hub*
/dev/hub1:
modem1  modem2  modem3  modem4  modem5  modem6  modem7

/dev/hub2:
modem1  modem2  modem3  modem4  modem5  modem6  modem7

/dev/hub3:
modem1  modem2  modem3  modem4  modem5  modem6  modem7


> --
> Ну и глупый вопрос - чем /dev/ttyUSB* нефеншуит?

ну если бы после перетычки у модема оставался его номер - то всё работает, но вот модемы после перетычки имеют свойство называться разными ttyUSB№.
По этому модем 1 после перетычки может стать ttyUSB42, где у меня был другой модем. как видите, их у меня несколько.

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

7. "правила для ядра 2.6 не работают в ядре 3.8"  +/
Сообщение от pavlinux (ok) on 08-Апр-13, 14:51 
>> Ну и глупый вопрос - чем /dev/ttyUSB* нефеншуит?
> ну если бы после перетычки у модема оставался его номер - то
> всё работает, но вот модемы после перетычки имеют свойство называться разными
> ttyUSB№. По этому модем 1 после перетычки может стать ttyUSB42, где у меня
> был другой модем. как видите, их у меня несколько.

Это понятно, но привязка модема к USB-endpoint, как-то не то.
Хотя,.... воткнул в 3-дырку и сразу ясно, что канал на 3-й офис, во вторую - бухгалтерия,...

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

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

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




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

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