apcupsdを常に起動させておくために
シェルスクリプトでプロセスが生きているのか確認し、確認できないときは自動で起動させるというスクリプト
このスクリプトを定期的にcronで実行させることで常にapcupsdが起動されることになります。
#!/bin/sh
isAlive=`ps -ef | grep apcupsd | grep -v grep | wc -l`
if [ $isAlive = 0 ]; then
/etc/rc.d/init.d/apcupsd start
fi
シェルスクリプトでプロセスが生きているのか確認し、確認できないときは自動で起動させるというスクリプト
このスクリプトを定期的にcronで実行させることで常にapcupsdが起動されることになります。
#!/bin/sh
isAlive=`ps -ef | grep apcupsd | grep -v grep | wc -l`
if [ $isAlive = 0 ]; then
/etc/rc.d/init.d/apcupsd start
fi
APC Network Management Card を使うとUPSとの通信をネットワークで制御することが可能になります。
Network Management CardにIPを設定する方法としてWindowsから付属のAPC Network Management Card Utility Disc の中にあるソフトを使ってIPを設定します。
APC Device IP Configuration Wizard.exe




IPを設定するとブラウザで管理画面を表示することができます。
http://設定したIP/
デフォルトのid/pass
id : apc
pass : apc
IPが設定できたら各自環境に合わせて設定を行ってください。
設定例
apcupsd インストール
# wget http://jaist.dl.sourceforge.net/sourceforge/apcupsd/apcupsd-3.12.3.tar.gz
# tar zvfx apcupsd-3.12.3.tar.gz
# cd apcupsd-3.12.3
# ./configure --enable-cgi --with-cgi-bin=/etc/apcupsd/cgi
# make
# make install
設定ファイルの編集
$ vi /etc/apcupsd/apcupsd.conf
起動
# service apcupsd start
自動起動設定
# chmod 755 /etc/rc.d/init.d/apcupsd
# chkconfig --add apcupsd
# chkconfig --list apcupsd
apcupsd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
状態確認
apcaccess status
動作テスト
ブラウザからUPSの状況を確認
ScriptAlias /apcupsd/ /etc/apcupsd/cgi/
<Directory /etc/apcupsd/cgi/>
Options ExecCGI
#order deny,allow
#deny from all
#allow from 127.0.0.1
allow from all
</Directory>
Network Management Card EMを使った場合とシリアルケーブルとの大きな違いは、UPS をネットワークへ接続することができます。
また、シリアルポートの場合は接続するポートを拡張しなければなりませんが、Network Management Card EMを使えば最大50台の機器をネットワーク制御することが可能になります。
net-snmp インストール
yum install net-snmp*
apcupsd インストール
# wget http://jaist.dl.sourceforge.net/sourceforge/apcupsd/apcupsd-3.12.3.tar.gz
# tar zvfx apcupsd-3.12.3.tar.gz
# cd apcupsd-3.12.3
# ./configure --enable-cgi --with-cgi-bin=/etc/apcupsd/cgi --enable-snmp
# make
# make install
設定ファイルの編集
$ vi /etc/apcupsd/apcupsd.conf
設定例
UPSCABLE ether
UPSTYPE snmp
DEVICE 192.168.1.150:161:APC:public
USB・シリアルケーブルで接続する場合
必ず上記正規ケーブルを使うこと。違うケーブルを使うとUPSが落ちます。
管理画面よりクライアントの設定
Battery Management System サンプルデモ id : apc / pass : apc
起動
# service apcupsd start
自動起動設定
# chmod 755 /etc/rc.d/init.d/apcupsd
# chkconfig --add apcupsd
# chkconfig --list apcupsd
apcupsd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
状態確認
apcaccess status
動作テスト
ブラウザからUPSの状況を確認
ScriptAlias /apcupsd/ /etc/apcupsd/cgi/
<Directory /etc/apcupsd/cgi/>
Options ExecCGI
#order deny,allow
#deny from all
#allow from 127.0.0.1
allow from all
</Directory>
設定中に起こったエラー
FATAL ERROR in apcaccess.c at line 252
tcp_open: cannot connect to server localhost on port 3551.
ERR=Connection refused
接続クライアントの許可を設定を行っていない場合は上記のようなエラーが表示され接続することが出来ませんでした。
起動時に自動でapcupsdが立ち上がらないので、
/etc/rc.local に
/etc/rc.d/init.d/apcupsd start を記述しました。
それでも正常に起動しない場合
シェルスクリプトでプロセスを監視し、起動していなければ起動させる
# vi apcupsd_cron.sh
#!/bin/sh
isAlive=`ps -ef | grep apcupsd | grep -v grep | wc -l`
if [ $isAlive = 0 ]; then
/etc/rc.d/init.d/apcupsd start
fi
# chmod +x apcups_cron.sh
# crontab -e
*/5 * * * * /設置したパス/apcupsd_cron.sh
C:\apcupsd\etc\apcupsd.conf で設定変更
C:\apcupsd\etc\apcupsd.event でイベントログの確認
SNMPを使って通信する場合
サービスで起動させる場合、SNMPより前にサービスが起動しようとして起動できないので、タスクスケジュールの起動時に apcupsd が起動するように設定する
SSIを有効にしてみる ( 05.20 )
qmail のエラー対応 ( 05.19 )
mysqlhotcopy でのエラー対応 ( 05.11 )
htaccessでphp_valueの設定をするとエラーになったときの対応 ( 05.02 )
ホームページのデバックを行わないようにするには ( 05.02 )
LogWatchメールのProFTPD TimeOut Logを通知しないようにする ( 05.01 )
Zend Frameworkをインストール PHP ( 03.24 )
OSの再インストールに伴うNortonの再インストール方法 ( 03.23 )
クリックボート管理ソフト CLCL ( 03.19 )
日付の整合性チェック checkdate PHP ( 03.19 )
APC製 UPS ( 4 )
CSS ・ HTML ・ Javascript ( 3 )
ソフト・ツール ( 18 )
PHP関連 ( 22 )
面白動画(YouTube) ( 1 )
MySQL関連 ( 12 )
Apacheについて ( 19 )
サーバー設定 ( 29 )
日々の出来事 ( 24 )