![]() |
|
Модераторы: xvr |
![]()
|
|
| _GRIN_ |
|
|||
![]() одинокий падаван ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 18.11.2007 Где: Калуга Репутация: нет Всего: 7 |
Приветствую.
Необходимо при подключении usb-флэшки автоматически её примонтировать и (сразу же) после примонтирования писать на неё определённые данные. Вопрос - есть ли в Линукс-е какие-либо системные уведомления о вновь подключенных устройствах и если есть, то как их можно перехватить. Если нет (уведомлений), то как можно получить данную информацию (на вскидку в голову приходи переодичский монторинг директории /dev)? Заранее благодарен -------------------- Дорогу осилит идущий |
|||
|
||||
| nickless |
|
|||
![]() Гентозавр ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2976 Регистрация: 29.8.2005 Где: Germany Репутация: 4 Всего: 181 |
Что это за программа, нужно ли ей работать со старыми версиями ядра, на встроенных девайсах, только в консоли или под иксами?
Новыми девайсами обычно занимается udev, он создаёт файл в /dev, может примонтировать, послать сообщение итд (если написать соответствующее правило). В оконных менеджерах вроде гнома или кде есть свой демон, который мониторит что надо. Можно посмотреть как они это делают или (если программа с ГУИ) воспользоваться их API. -------------------- ![]() Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies - Linus Torvalds |
|||
|
||||
| _GRIN_ |
|
|||
![]() одинокий падаван ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 18.11.2007 Где: Калуга Репутация: нет Всего: 7 |
nickless,
программа - демон (серсис) - работает в консоли, старые версии ядра не нужны (под 2.6. и выше). спасибо за наводку на udev -------------------- Дорогу осилит идущий |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
суть в том, что udev демон читает uevent'ы (через AF_NETLINK сокет), генерируемые на объектах ядра kobject любое устройство в linux представлено базовым объектом struct device, которое агрегирует объект struct kobject подключение устройства к USB шине порождает создание объекта device и регистрацию его в объектной иерархии ядра (экспортируется через sysfs) через соответствующий объект kobject инициализируя kobject, ядро генерирует событие KOBJECT_ADD и броадкастом рассылает его по всем сокетам, присоединенным к соответствующей группе (по-моему 0) в рамках протокола NETLINK_KOBJECT_UEVENT домена udev тупо читает пакет и соотносит его содержимое со своими правилами -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| _GRIN_ |
|
|||
![]() одинокий падаван ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 18.11.2007 Где: Калуга Репутация: нет Всего: 7 |
MAKCim, спасибо, честно сказать - я на линукс в декабре пересел (т.е. всего ничего, так что и знаний пока маловато).
Буду курить сорцы udev (как в своё время top, free) там по ходу дела наверняка вопросы возникнут -------------------- Дорогу осилит идущий |
|||
|
||||
| GrayCardinal |
|
|||
|
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 8 Всего: 58 |
_GRIN_,
Не парь себе мозги. Заюзай inotify на /dev, тебе сразу и свистнут что девайс появился... inotify_init(2) |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
знаешь чем плох сей способ? -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| GrayCardinal |
|
|||
|
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 8 Всего: 58 |
MAKCim,
Нет. Чем ? |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
тем, что он зависит от конфигурации udev и его наличия -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
![]()
|
| Правила форума "С/С++: Программирование под Unix/Linux" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |