HP製のUPSがチャージされない

11月に買ったUPSが、まったくチャージされていなかった。
バッテリーエラーなど、コレと言って目立った原因が見つからないが、事実としてチャージが行なわれていない。
HP UPS Management Moduleを確認しても、管理モジュールがUPSを認識すらしていない。
今日午前中に販社の技術者を呼んで一通り確認させたけど、今だ原因が不明。
来年の1月中旬から使うシステム用のUPSだから、とりあえずバッテリー変えるなり、UPSごと変えるなりの対応を早めにして欲しい。
販社も最大手のSIerだから、年内中に対応させるか。
2008/12/23
HPの技術者が来て、該当のUPSの修理をしてくれた。
結果から言うと、USPに増設したHP UPS Management Moduleの故障が原因だったらしい。
HP UPS Management Moduleを交換して、再度確認したところ、UPSはちゃんとチャージされてたから一安心。
どうやら、UPSの仕様上、USPへの電源供給が絶たれて1分後に接続されているサーバ類にシャットダウンコマンドを飛ばし、約5分後にUSP自信が停止する仕組みらしい。
今回はシャットダウンの管理はしていないから、USPにチャージされた電力を使い切った段階で停止させるようにしたけど、30分やそこらでいきなり電源が落ちるのは考えもんだな。

sendmailのリレー先変更

最近、メール関連の事しか書いていないような気がするが、お仕事だからしょうがない。
sendmailに中継させる情報はいろいろあったけど、sendmail自身のリレー先を指定する方法が少ない気がしたが、猫ぐらしさんのブログを発見。
sendmail.mc内の設定箇所をいじってあげると良いっぽい。
define(`SMART_HOST’,`smtp:smtp.yourdomain.jp’)dnl
ちなみに、「smtp:ドメイン名」部分は、IPアドレスだと、下記の様なエラーが出てNGだった。
(0/0), delay=00:00:00, xdelay=00:00:00, mailer=smtp, pri=120359, relay=192.168.4.3, dsn=5.1.2, stat=Host unknown (Name server: 192.168.4.3: host not found)
ローカル環境と言っても、DNSを参照できる環境にサーバを設置しないとダメみたい。

MTAの配送間隔

気になったので調べてみた。
[qmail]
デフォルト: n × 800 – 400秒
      n=再試行の回数
設定の変更:変更不可(要ソース改変)
[sendmail]
デフォルト:15分
設定の変更:引数 -q にて指定
$ sendmail -q15m
[postfix]
デフォルト:1000秒、2000秒、4000秒、以後4000秒間隔。
送信失敗すると、minimal_backoff_time の設定時間後に再送実施。
その後前回の配送間隔の2倍の間隔で配送を試みる。
設定の変更:minimal_backoff_time を設定。
      最大間隔は maximal_backoff_time で指定する。
minimal_backoff_time = 1000s
maximal_backoff_time = 4000s

net-snmpのログ出力の変更

net-snmpのログは、デフォルトだと以下の様な内容のログが/var/log/massageに出力される。
Dec 5 10:50:38 snwms01 snmpd[16849]: Connection from UDP: [127.0.0.1]:52695
Dec 5 10:50:38 snwms01 snmpd[16849]: Received SNMP packet(s) from UDP: [127.0.0.1]:52695
件数が多過ぎるので邪魔くさい。
なので/var/log/snmpd.logに出力するようにする。
[設定ファイル]
/etc/rc.d/init.d/snmtd
[変更前]
OPTIONS=”-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a”
[変更後]
OPTIONS=”-Lf /var/log/snmpd.log -p /var/run/snmpd.pid -a”
ログルーテッドの設定も行う。
[設定ファイル]
/etc/logrotate.d/snmpd
[内容]
/var/log/snmpd.log {
notifempty
missingok
postrotate
/sbin/service snmpd condrestart 2> /dev/null > /dev/null || true
endscript
}
これでnet-snmpのログが/var/log/snmpd.logに出力され、1週間ごとにルーテッドされる。

VMwareにFedora9を入れてみた。

ubuntuにどうしても馴染めなかったので、 Fedora9をVMware上に入れてみた。
会社のPCに・・・www
自宅のPCは古いから、仮想OSの動作が重すぎて使い物にならんかったw
会社のノートPCはCore2Duo 1.6GB、メモリ1.5GBで、TeraTermとOfficeぐらいしか使ってないからさw
新しいPCを買うより、今ある資源を利用するって素敵すぎるwww
って事で、早速インストール。
VMware Playerをインストールして、isoイメージ落とすのが面倒だったので、配布されているFedora9をダウンロード。
初期値ではメモリが256MBしか割り当てられてなかったので、fedora-9-i386.vmxファイルのmemsize の値を “512”と修正する。
以前、MSのVirtualPCを使ったとき、ゲストOSのネットワークの設定で苦労した記憶があったけど、ブリッジモードで難なく外部との接続が行えた。
ダウンロードしたFedora9は日本語環境が使えないので、yumでインストールする。
yum -y groupinstall japanese-support -x xorg-x11-server-Xorg

error: error running postrotate script

会社のサーバからのlogrotateからエラーメールが届いた。
/etc/cron.daily/logrotate:
error: error running postrotate script
error: error running postrotate script
簡単にググってみると、「ログをローテッドした後に、該当のプロセスを起動できなかった」と言ったエラーらしい。
まぁ、このサーバが提供しているサービスが上がっていないわけじゃないっぽい(監視しているから止まったら、センターからの連絡も来る。)から、月曜日に調べてみるか。
2008/12/3
上記エラーの原因がわかった。
サーバのlogrotate.dに手動で入れてたapacheのlogrotateでコケてた。
apache自体、不要になったので/etc/rc.d/init.d/httpdも消してたから、「logrotateしたけどデーモンが実行できない」と言ったエラーだったっぽい。
logrotate.dからapache用の設定ファイルを削除して対応。
たぶんこれで問題ないはず。

GTAVCSとモンハン

3連休の最終日、秋葉原に買いに行ってきましたよw
PSP-2000だけしかなかったから、SanDiskのメモリースティックの4GBと、覗き見防止のシート、シリコンのカバーもついでに購入。
GTAVCSは、規制が入っていない海外版が良かったんだけど、売ってる店を見つけられませんでした。
しょうがないので、日本語版で我慢するか。。。
メダル・オブ・オナー ヒーローズ2 とどっちが良いか数秒迷ったけど、メダル・オブ・オナー ヒーローズ2は冬のボーナス入ったら買おう♪
ところで、モンハンはメモリースティックにインストール出来たけど、GTAVCSは出来ないのか?
恐らく有効なセーブデータが無いから、起動するとすぐにニューゲームで開始になってしまう。
まぁなんにせよ、これで片道1時間半の通勤時間に退屈せずに済むな。

qmailのログ集計

自分メモ。
ログ出力をsyslogではなく、daemontoolsのmultilogで吐いてた場合の各種集計方法。
必要な物・・・qmailanalog,qlogselect
1.qmailanalogで処理できる様に、tai64n2taiコマンドを利用。 
また、qlogselectを使って、集計する日時を指定する。
cat /var/log/qmail//{“@”,cur}* | /usr/local/qmailanalog/bin/tai64n2tai | /usr/local/qmailanalog/bin/qlogselect start 開始日 end 終了日 | /usr/local/qmailanalog/bin/matchup > logfile
※開始日、終了日はyyyy-mm-ddで指定する。
2.xrecipientに、集計したいメールアドレス指定して食わせる。
cat logfile | /usr/local/qmailanalog/bin/xrecipient local.hogehoge@domain > hoge.txt 受信件数=hoge.txtの行数受信サイズ=awk ‘{S=(S+$6)}END{print S}’ < hoge.txt 送信データを集計したい場合、3でxrecipientに食わせたデータを、/usr/local/qmailanalog/bin/sendersに食わして集計する。

PSP

子会社のSEの方から、今年の9月に買ったPSPの2000を貰いました。
どうやら、ゲームを読み込まなくなったらしい。
本人はPSPを2台持っていたので、「修理に出すのメンドクセェ・・・」と放置していた所、PSPを買っていいと家庭内稟議が下りたルンルン♪の私が通り掛かった。と言うのがきっかけ。
「保障期間内で、外傷とか無いから100%無償対応してくれるよw」って事で、火曜日に譲り受けて水曜日にサポートへ発送。
サポートサイトには1週間から10日掛かると書いていたので、来週には届くと思っていたら、15日(土曜日)に修理されて送られてきましたwww
SONYのサポセン、神すぎwww
PSPのゲームどころか、メモリーステックさえ買ってないしwwwww
とりあえず家の無線LANに繋いで、ネットワーフィン。
うん。当たり前だけど、携帯で見るよりキレイ。
今週末の3連休でアキバに行ってゲームとメモリスティックを買ってこよう。
ちなみに、欲しいゲームはモンハンとGTA VCS
18歳の購入制限のソフトだから、イオンとかトイザラスに売ってないんだよなぁ・・・。

qmail + qmail-scanner + spamassassin + clamav

qmailを利用したメールゲートウェイをテスト構築した時のメモ。
その内、ちゃんとした記事を書きますが、今回ハマったqmail-scannerの設定を書いときます。
spamassassinとclamavの導入、設定は他の構築サイトを参照してください。
[事象]
qmail-scannerのインストール時に、–notify recips と指定しているのに、受信先にメール通知が届かない。
[対応策]
今回の場合、外部SMTPサーバに上記設定をしました。
ドメインのMXレコードは外部SMTPサーバに向いていますが、外部SMTPでメールは受け取らずに、smtproutesで内部のSMTPサーバにリレーさせています。
外部SMTPではドメイン宛のメールは受け取らない(リレーするだけ) = /var/control/localsの中身もlocalhostのままでした。
qmail-scannerは、デフォルトで自身のドメイン宛のユーザーを処理するので–notify recips としても、元のメールの宛先@localhost宛てのメールとなり、内部SMTPサーバのユーザーに届かない。と言った事でした。
これを解決するには./configure時に、–local-domains 処理するドメイン名を指定する。
ちなみに、qmail-scannerの標準では「2byte文字(全角)」が含まれるメールを、通知メールとして処理すると文字化けしてしまうので、email_senderとemail_recipsにnkfを挟んでJISに変換する必要がある。
vi /var/qmail/bin/qmail-scanner-queue.pl
変更前
sub email_sender {
#Don’t e-mail bounced mail messages/etc!
return if (&is_unreplyable_email(‘sender’));
my($addr_type)=@_;
my ($HDR,$hdr,$tmpsndrs,$tmpsubj,$polstring)=”;
my ($tmpmsgid)= &uniq_id() . “-” . $V_FROM;
$polstring=’policy’ if (&notify_addr(‘nmlvadm’));
open(SM,”|$qmailinject -h -f ””)||~~
sub email_recips {
my($recip)=@_;
return if ($recip eq “”);
#Don’t notify precips if this is NOT a “Policy block”
if (&notify_addr(‘precips’)) {
return if ($quarantine_event !~ /^(policy|perlscan)/i);
} else {
#From now on precips is the same as recips
$NOTIFY_ADDRS=~s/precips/recips/;
}
return if (!&notify_addr(‘recips’));
my($HDR,$hdr,$tmprecips,$tmpsubj)=”;
my($tmpmsgid)= &uniq_id() . “-” . $V_FROM;
open(SM,”|/usr/bin/nkf -j|$qmailinject -h -f ””)||~~
変更後
sub email_sender {
#Don’t e-mail bounced mail messages/etc!
return if (&is_unreplyable_email(‘sender’));
my($addr_type)=@_;
my ($HDR,$hdr,$tmpsndrs,$tmpsubj,$polstring)=”;
my ($tmpmsgid)= &uniq_id() . “-” . $V_FROM;
$polstring=’policy’ if (&notify_addr(‘nmlvadm’));
open(SM,”|/usr/bin/nkf -j|$qmailinject -h -f ””)||~~   ←「|/usr/bin/nkf -j」を追加
sub email_recips {
my($recip)=@_;
return if ($recip eq “”);
#Don’t notify precips if this is NOT a “Policy block”
if (&notify_addr(‘precips’)) {
return if ($quarantine_event !~ /^(policy|perlscan)/i);
} else {
#From now on precips is the same as recips
$NOTIFY_ADDRS=~s/precips/recips/;
}
return if (!&notify_addr(‘recips’));
my($HDR,$hdr,$tmprecips,$tmpsubj)=”;
my($tmpmsgid)= &uniq_id() . “-” . $V_FROM;
open(SM,”|/usr/bin/nkf -j|$qmailinject -h -f ””)||~~   ←「|/usr/bin/nkf -j」を追加
2008/11/21 追記
qmail-scannerのconfigureのオプションを忘れたので、メモ”c⌒っo,,゚Д゚ )φ”
./configure –install –scanners clamdscan,verbose_spamassassin –local-do
mains 処理するドメイン –notify recips