hack のためのネタ帳, etc,,,

基本的に以下とほぼ同じ
以下の環境で作業した。
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 7.8 (wheezy)
Release:        7.8
Codename:       wheezy
# uname -a
Linux hostname 3.2.0-4-686-pae #1 SMP Debian 3.2.65-1+deb7u2 i686 GNU/Linux
# dpkg -l | grep "ii  nut"
ii  nut                                  2.6.4-2.3+deb7u1              all          network UPS tools - metapackage
ii  nut-client                           2.6.4-2.3+deb7u1              i386         network UPS tools - clients
ii  nut-server                           2.6.4-2.3+deb7u1              i386         network UPS tools - core system
# lsusb | grep "American Power Conversion"
Bus 002 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply

以下の設定を、各ファイルに追記
/etc/nut/nut.conf
MODE=standalone
/etc/nut/ups.conf
[es500]
driver = usbhid-ups
port = auto
/etc/nut/upsd.conf
[upsmon]
password = xxxxxxxxxxxxxxxxxxxx
upsmon = master
/etc/nut/upsmon.conf
MONITOR es500@localhost 1 upsmon xxxxxxxxxxxxxxxxxxxx master

/lib/udev/rules.d/52-nut-usbups.rules を基に、ES 500 の idVendor, idProduct に合わせて、不要部分を削除して以下のファイルを作成。
/etc/udev/rules.d/52-nut-usbups-local.rules
ACTION!="add|change", GOTO="nut-usbups_rules_end"
SUBSYSTEM=="usb_device", GOTO="nut-usbups_rules_real"
SUBSYSTEM=="usb", GOTO="nut-usbups_rules_real"
BUS!="usb", GOTO="nut-usbups_rules_end"

LABEL="nut-usbups_rules_real"
# APC ES 500 - usbhid-ups
ATTR{idVendor}=="051d", ATTR{idProduct}=="0002", MODE="664", GROUP="nut"

LABEL="nut-usbups_rules_end"

以上で準備完了
次に udev で EX 500 に trigger かける
# udevadm control --reload-rules
# udevadm trigger --verbose --attr-match=idVendor=051d --attr-match=idProduct=0002
/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1
上記の結果より Bus, Device が 002, 002 なので以下の箇所を確認
# ls -l /dev/bus/usb/002/002
crw-rw-r-T 1 root nut 189, 129 Mar 18 17:49 /dev/bus/usb/002/002
上記のように mode が 664、user, group が root, nut になっていたら成功

usbhid-ups ドライバを直接起動してみる。
# /lib/nut/usbhid-ups -a es500 -DDD
failed が出なければ成功しているはずなので Ctrl-C で一旦止める。

あとは nut-server と nut-client を起動
# service nut-server start
Starting NUT - power devices information server and drivers:  driver(s). upsd.
# service nut-client start
Starting NUT - power device monitor and shutdown controller: nut-client.
最後に upsc コマンドで状態を確認
# upsc es500
battery.charge: 100
battery.charge.low: 10
battery.charge.warning: 50
battery.date: not set
battery.mfr.date: 2004/11/24
battery.runtime: 285
battery.runtime.low: 120
battery.type: PbAc
battery.voltage: 13.4
battery.voltage.nominal: 12.0
device.mfr: APC
device.model: APC ES 500
device.serial: xxxxxxxxxxxx
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.version: 2.6.4
driver.version.data: APC HID 0.95
driver.version.internal: 0.37
input.sensitivity: high
input.transfer.high: 110
input.transfer.low: 90
input.transfer.reason: input voltage out of range
input.voltage: 101.0
input.voltage.nominal: 100
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.firmware: 803.p4.A
ups.firmware.aux: p4
ups.load: 54
ups.mfr: APC
ups.mfr.date: 2004/11/24
ups.model: APC ES 500
ups.productid: 0002
ups.serial: xxxxxxxxxxxx
ups.status: OL
ups.timer.reboot: 0
ups.timer.shutdown: -1
ups.vendorid: 051d

関連

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

管理人/副管理人のみ編集できます