Настройка ups Powercom Imperial IMD-625AP + NUT

Дистр Gentoo 2008.0.
Ядро 2.6.25-gentoo-r7.
Nut 2.0.5-r2.

Настраивал так:
1. USE="usb hal" emerge sys-power/nut
2. В ядре включил:

Device Drivers
---HID Devices
------[*] USB Human Interface Device (full HID) support
------[*] /dev/hiddev raw HID device support

Device Drivers
---USB support
------[*] USB Serial Converter support --->
---------[*] USB Cypress M8 USB Serial Driver

3. Скопировал бинарник драйвера powercom в /lib/nut, заменив оригинальный.
4. Поправил конфиги вот так:
/etc/nut/ups.conf

[powercom]
driver = powercom
port = /dev/ttyUSB0
type = IMPERIAL
desk = "IMD-525AP"

/etc/nut/upsd.conf

ACL all 0.0.0.0/0
ACL localhost 127.0.0.1
ACCEPT localhost
REJECT all

/etc/nut/upsd.users

[root]
password = рутовый_пароль
allowfrom = localhost
actions = SET
instcmds = ALL
upsmon master

/etc/nut/upsmon.conf

MONITOR powercom@localhost 1 root рутовый_пароль master
MINSUPPLIES 1
SHUTDOWNCMD "/sbin/shutdown -h now"
POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15
NOTIFYMSG ONBATT SYSLOG+WALL+EXEC
RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 5

5. usermod -G usb nut && rc-update add upsd default && rc-update add upsmon default

После ребута наблюдаю следущее:

 * Starting UPS driver ...
Network UPS Tools - UPS driver controller 2.0.5
Network UPS Tools - PowerCom and similars protocol UPS driver $ Revision: 0.6 $ (2.0.5)


Unable to open /dev/ttyUSB0: Premission denied

   Current user id: nut (84)
Serial port owner: root (0)
Serial port group: uucp (14)
     Mode of port: 0660

Things to try:
 - Use another port (with the right premissions)

 - Fix the port owner/group or premissions on this port

 - Run this driver as another user (upsdrvctl -u or 'user=...' in ups.conf).
   See upsdrvctl(8) and ups.conf(5).

Fatal error: unusable configuration
Driver failed to start (exit status=1)
 * Failed to start UPS drivers!
 * ERROR:  cannot start upsd as upsdrv could not start

Понятно, что ему не хватает прав для доступа к устройству, но как такое может быть если юзер - рут? Как исправить?

Если сделать chmod 777 /dev/ttyUSB0 и вручную запустить /etc/init.d/upsd start && /etc/init.d/upsmon start то все запускается гладко, но почему то при upsc

отвечает ошибкой: Error: Server disconnected. Если

Как заставить работать дравер?

ps запуск /lib/nut/powercom -a ups -u root -DD -x type=IMPERIAL -x port=/dev/ttyUSB0 проходит на ура и показывает правильную информацию о упсе.

Попробуй

Попробуй включить в /etc/nut/ups.conf строку user=root

Может кому понадобится.

Может кому понадобится. Боролся с той же проблемой. В итоге - причина оказалась в /etc/udev/rules.d/70-nut-usbups.rules
Там есть строчка:
SUBSYSTEM!="usb_device", GOTO="nut-usbups_rules_end"
Но для cypress_m8 (как для других девайсов - ХЗ) - SUBSYSTEM отнюдь не usb_device, а tty. Проверить конкретный девайс можно коммандой udevinfo -a -p $(udevinfo -q path -n /dev/ttyUSB0)
Итого после правки строки на
SUBSYSTEM!="tty", GOTO="nut-usbups_rules_end"
имеем:
crw-rw-r-- 1 root nut 188, 0 2009-05-03 22:00 /dev/ttyUSB0

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".