Re: USB hotplug

From
Vitaly Filatov (2:5020/400)
To
Victor Wagner
Date
2009-11-17T17:03:06Z
Area
RU.UNIX.SOLARIS
From: Vitaly Filatov <vitaly@royint.com>

Victor Wagner wrote:
> Hi, all!
> 
> Два вопроса:
> 
> 1. А есть ли в Solaris 10 (и 9) возможность как-то объяснить системе,
> чтобы при вставлении usb-устройства с определенным vendor_id/product_id
> она дернула шелловский скрипт. Примерно как это делают всякие udev и hal
> под linux или devd под freebsd.
> 
> Вот здесь - читал:
> http://docs.sun.com/app/docs/doc/816-1387/6m7qdms6d?a=view
> не нашел.
> 
> Устройство, если что, обслуживается драйвером ugen.
> 
> Пока придумал только запустить скрипт, который будет каждые несколько
> секунд проверять существование /dev/usb/${vendor_id}.${product_id}, но
> как-то это не очень кузяво, особенно если учесть что библиотека, которая
> будет с этим девайсом работать, поддерживает их хренову кучу.
> 
> 2. А как собственно, это самое устройство (которое работает через ugen и
> libusb) подружить с Solaris 9?
> 
> В сети нашел только советы взять libusb и ugen из opensolaris, 
> (пакета SUNWlibusbS из десятки не достаточно будет?) но не смог
> разобраться как вытащенные из opensolaris исходники корректно собрать
> под девяткой. Есть какое-нибудь внятное описание этого дела для чайников
> в Solaris?
> 
> 
Есть такой демон (в Solaris 10): /usr/lib/sysevent/syseventd

Я запустил его в терминале:

# /usr/lib/sysevent/syseventd -d 99

Видно, что если вставить/вынуть в/из разъём/а usb устройство или
даже memory flash карточку - он это чувствует - сообщения
выдаёт. И к нему можно прикручивать плагины. Тексты из opensolaris
надо поизучать, там этот демон есть.

man syseventd

Что за устройство вы испытываете?
--- ifmail v.2.15dev5.4
 * Origin: MTU-Intel ISP (2:5020/400)
SEEN-BY: 236/100 450/1024 461/640 469/142 999 4625/8 5000/5000 5006/1 5007/1
SEEN-BY: 5010/70 5011/13 5012/46 5015/28 5020/18 175 194 400 545 902 1042 2238
SEEN-BY: 5020/4441 5021/29 5025/3 5030/1080 1957 5035/38 5036/1 5045/7 5054/1
SEEN-BY: 5054/4 8 9 28 37 5060/88 5061/15 120 5062/10 5066/18 5075/35 5080/68
SEEN-BY: 5085/13 5095/20 5096/18 6001/10 6037/7
PATH: 5020/400 545 5054/1 37