はじめに

研究室で管理しているマシンに,OMRON の UPS の設定をしようとした。 うまくいかなかった。

用語等

UPSとは?

  • UPS(無停電電源装置)とは、予期せぬ停電や、入力電源異常が発生した際に、電源を供給する機器(負荷機器)に対し、一定時間電力を供給し続けることで、機器やデータを保護することを目的とした装置です。
    NTT ファシリティーズ[^1]より引用

  • ざっくりまとめると…
    • 停電が起こったときに,サーバーに電源を供給
    • 安全なシャットダウンまでの時間を稼ぐ

Network UPS Tools (nut)

やろうとしたこと

  • AlmaLinux 8 に対して nut を導入する。
  • OMRON 製 UPS に対しては,標準ドライバ(usb-hid)ではなく,blazer_usb もしくは後継の nutdrv_qx を用いる

試したこと

  • USB デバイスの権限を編集し,blazer_usb が扱えるように udev を設定した
  • 参考にしたサイト [^2] [^3]

エラー

  • blazer_usb -a $UPS_NAME -DDD で ups と通信すると,エラーが発生

原因

  • このサイト[^4]がすべて
    • nut 2.8 では libusb の API が変更されている
    • 互換性がない?
  • EPEL8 では,2.8 が提供されている
    • EPEL7 までは 2.7 だったので,別のマシンでははまらなかった
    • なんなら,Ubuntu 22.04 LTS でも 2.7系,積極的だ
  • nut 2.7 をビルドしようとするも,こけた

結果

  • 純正の PowerAttendant Lite を使った
    • (これも,別のマシンで USB を認識なかったり,苦労する子だった)

[^1] 無停電電源装置とは [^2] UPS との接続 (OMRON) [^3] Omron BY50S を Linux で使う (udev のイケてる設定編) [^4] [FreeBSD]sysutils/nut 2.8.0