最近妙に spam メールが多いので,新手の賢い spam 発信ソフトが出回ったのかなあ,なんとかしなくちゃ,と思っていた。またブログソフト Movable Type が頻繁にサーバエラーを返すなどの問題も抱えていた。このところ仕事が忙しくてノーケアの状態だったが,少し時間が取れたので,それら問題の改善のため,自宅設置のサーバ Laura のシステム状態をチェックした。
自宅サーバ Laura (FreeBSD 5.4) のシスログを見てみると,なんと "swap_pager_getswapspace(...): failed" のエラーメッセージが多発していることを発見。つまり仮想記憶がパンク状態にあることが判明したのだ。要するに深刻なメモり不足。
ps コマンドで動作しているプロセスを確認すると,spam メールチェッカである spamassasin のデーモンが見当たらない。メモリ不足の影響で異常終了していたと思われた。これでは spam メールがほぼザルを抜けるようにインボックスに入って来ていたのも当然であった。Movable Type のサーバエラー "Premature end of script headers" 云々もメモリ不足が根本原因であると思う。
本来なら,メモリを増設し,スワップ領域を拡張する必要がある。しかし Laura 稼働環境 IBM ThinkPad i1620 は製品仕様での搭載可能最大メモリ 192MB ですでに運用しており,もう増設が不可になっている。512MB の新品メモリを買って来て入れ替える手も考えられるが,ThinkPad 製品仕様上,これを認識するか不安である。しようがないのでこのままのハードウェア環境で動かすしかない。
Laura では Web,sendmail,NTP,qqpopper など数々のインターネットサーバが稼働しているのみならず,Movable Type,CVS,Web 頁カウンタ servlet,spamassasin,misima,misima-WebService,namazu,MHonArc,電子コンコーダンス作成などの重たい処理が引きもなしに動作しており,192MB 主記憶,384MB 仮想記憶では心もとないのは致し方ない。misima が異常終了しても,びっくりしないでリトライしてみてください。
念のため,システムをリブートし,apache2,tomcat4 などを再起動した。せっかくなのでリブートの前に,freebsd-update プログラムを導入し,セキュリティパッチをシステムに適用した。spam がぴたりと止んだのでさしあたりめでたしめでたしである。