田舎者Yの日記

片田舎の元バイク乗り・Linuxユーザ、つまり変わり者のブログ

(海外からスパムコメントが続きましたので、しばらくコメントは承認制にします。)

停電の教訓(apcupsdを導入)

 昨日の東京の停電は、はてなのWebサーバを閲覧できないことにより気がついた。*1

 もっと正確に言えば、はてなのトップページが開けなく、またもや自分のサーバがおかしくなったのかとアレコレいぢっているうちに、TV報道で停電が発生していることを知ったという順であった。自分の設定ミスではなかったので一安心した。
 しかし、私のはてなダイアリーは表示できていた。はてな自体サーバを分散して設置しているのか、あるいは部分的に自家発電に切替えていたのか。いずれにしてもこのお盆野最中に、都内で対応に追われていた方々も少なからずいらっしゃったと思う。誠にお疲れさまである。

 あまり大きな声では言えないが(とブログには書いているが)、私は片田舎にあって、ひょっとしたら8月15日を目前に、東京でテロが発生したのではないかとも思っていた。杞憂でよかった。(内心、天が落ちる可能性よりも都内でテロが発生する確率の方がはるかに大きいと、杞人ならぬ私は常々憂えている)

 さて家のサーバは中古OS無しでヤフオクで落としたオンボロノート(Celeron 700)にVine-Linuxをインストールしたものだ。内蔵バッテリーは逝かれており、無停電電源装置 APC CS500(BK500JP)に接続して使っている。面倒なのでそのままにしていたのだが、昨日のような停電がうちの近所で起こらないとも限らない。停電時には自動的にシャットダウンするようにLinux用のユーティリティ apcupsd を導入した。アホな自分と,
私と同じくらいの技量wのLinuxユーザのために苦労したことをメモしておく。

 基本的には以下のサイト「自宅サーバでやってみよう!!」の情報を参照した。
http://vine-linux.ddo.jp/linux/app/apcups.php

 ただし、apcupsdのダウンロードサイトは8月15日現在で上記のページに記載されている所ではなく、以下のサイトである。
http://www.apcupsd.org/
 また「自宅サーバ…」の方法では事前にcheckinstallをインストールしておく必要がある。私はapt-getでインストールした。

 私のUPSはAPC CS500(BK500JP)で信号の検出にUSBを使用しているため、若干変更する必要があった。また、サーバにはVine-Linux 3.2を使用しているのだが、うまくシャットダウンできなかった。そこで若干、apccontrolを書き換えた。これが正しかったかどうかはともかく、UPSの元電源を抜くと、サーバが自動的にシャットダウンするようになった。まとめると以下の通り。

 基本的には上記の「自宅サーバでやってみよう!!」の通り。私がCS500のために変えたのは以下の点

(1)/etc/apcusbd/apcupsd.conf でUSB用に変更。
 UPSCABLE usb
 UPSTYPE usb
 (DEVICEは設定しない)

(2)/etc/apcusbd/apccontrol を若干変更した。
 ${SHUTDOWN}に関する部分を適宜、poweroff あるいは reboot に書き換えた。(ちなみに変更前にapccontrolのバックアップをとっておいた。自信はなかったが、新たにpoweroffを挿入した箇所もあった)

 最後にUPSの元電源を引き抜き(くれぐれもUPSとPCを繋ぐコードではないので注意を)、サーバが自動的にシャットダウンすることを確認して終了した。

 田舎ゆえ、落雷による停電はあるので、次から雷雨の後はPCがシャットダウンしていないか確認する必要があるかもしれない。

*1:すっかり「はてな」が私のポータルである。