kernel+udev: подгрузить модуль при обращении к устройству

a10063

вопрос таков: можно ли добиться, чтобы при обращении к устройству, скажем /dev/ppp, подгружался модуль, скажем ppp_generic
хочется, чтобы девайс создавался при первом вызове pppd call ...
в общем-то, это общая проблема, не только с ppp
веб-серфинг ответа не дал

tokuchu

А оно разве не так работает? Или ты имеешь в виду ситуацию, когда даже /dev/ppp не существует?

a10063

да, верно! забыл написать, что /dev/ppp не существует

tokuchu

А хз... так, наверное, не получится. На сколько я представляю, если кто-то обращается к файлу устройства, а его нет, то он просто обламывается. Это же уже надо вешать какие-нибудь хуки на файловую систему. А udev и hotplug этим не занимаются.

a10063

странно, потому что помнится стоял у меня devfsd
не знаю уж, как это работало, но /dev/dsp создавался так и подгружался соотв. модуль звуковухи (когда arts его требовал)
мне кажется, что там все решалось простым alias-ом в modules.conf для /dev/dsp, хотя, может, я что-то забыл
думаю, тут либо devfsd делал modprobe /dev/dsp, либо atrs очень умный

gsharov

типа того (в смысле артс). для работы артсов нужно инициализировать звуковуху(заметь - уже настроенную звуковуху - так что не шибко и умные они артсы эти . именно на этом шаге и делается /dev/dsp. В случае с ppp такая маза не прокатит %) Как вариант - можешь покопаться с udev rules - там по моему можно заранее девайс создать... по моему там вообще почти все можно... но сложно с этим разбираться. Вообще - зачем тебе весь этот геморой, если не секрет?

a10063

там по моему можно заранее девайс создать...
это не прикольно, т.к. я модуль могу в автозагрузку пихнуть
udev rules я глядел, там действительно не рулез...
Вообще - зачем тебе весь этот геморой, если не секрет?
на мой взгляд, это самый правильный метод с точки зрения использования - подгружать только то, что нужно для работы
(с оговоркой, что этот процесс не мешает самой работе)
не люблю лишнего
так, мне может не понадобиться какой-то редкий модуль за весь uptime - так зачем его подгружать?
а если уж понадобится - то пусть все будет на автомате

gsharov

Если оно его подгрузит при загрузке, то потом оно его же и выгрузит(когда не надо будет). кроме того - тебе что жалко жалких пару килобайт оперативы? %) Ну и еще - комп это штука довольно стабильная... у меня например только 2 модуля которые хоть когда то не нужны - для usb mass storage & pppoe. Причем последний не в счет - новые версии даже не предлагают работать как kernel plugin... а usb за uptime всяко хоть раз да понадобится...

a10063

тут дело не в оперативке, а в эстетике
я с этим, конечно, заморачиваться не буду, если не найду нормального решения, а оставлю модули в автозагрузке
Оставить комментарий
Имя или ник:
Комментарий: