だー!! しんどかった。今回は知り合いのサーバーの設置を合わさったもんでしたから、焦るはなんわで大変でした。それでいつも毎回苦労したことをメモしないから、余計に苦しむことになるわけです。
症状
SMTPサーバー機能不全 クライアントメールソフトでの受信操作はできるが(いわゆるpop機能)、送信操作(リレー配信依頼)や配送が全くできない。
原因
電気メーター取替えによる停電で、システムがダメージを受けた(どんなダメージかは知らんけど)証拠としてSMTPのログが電気メータの交換時間までしか記録がない。
対処
停電でサーバーが止まるとHDDになにがあるか分からないので、PowerMAXでHDDの物理フォーマットをかけた上でシステムを再構築。ついでに古いアプリもバージョンアップ。FreeBSDも6.0から6.1になる。
苦労したこと
Perl5.8.8がソースインストールできないこと。結局sysinstallプログラムからパッケージのインストールを行った(この方が簡単ですが、最新バージョンが試せるソースインストールの方が性にあってたりします)。
Apache2.2.4にアップグレードしたのはいいけど、ソースインストールで下記のエラーが出たんだよね。
configure: error: Cannot use an external APR-util with the bundled APR
検索で調べてみると、FreeBSDに入っているAPR(とかなんとか)のバージョンが古い場合にエラーがでるんだとか…。でも最新版がapacheに用意されているので、そちらを使う場合は以下のようにオプションをつけろ。ということだそうです
./configure --with-included-apr
さらにhttpd.confの記述チェックが厳しくなり、動いていたものが動かなくなった。
ウェブページの場所を変えたのに、cgiの記述を変更することを、だいぶ長時間気が付かなかった(これはおれがバカ)。
一度、ftpでWindowsにファイルを待避して、書き戻すとファイルのパーミッションが644になってしまいややこしくなる。このせいでカウンターの数字が表示されず悩んだ。
以上が自宅のサーバー。
知人の方のサーバーでも苦労は一点のみ。
ftpで接続すると、ユーザーを判別して適切なフォルダー位置に持ってくるという機能(chroot機能)が動いてくれないというものでした。
これはユーザーがwheelグループに属している場合は、chrootの制限を受けず、自分のホームディレクトリーが表示されるというproftpdの仕様のようです。これは何時間も悩んだ挙句、次の日、グループ名を名前と同じにすることで謎が解けました。
最後に、知人の名セリフを紹介してお別れです。
今日のおれには出来ませんが、明日のおれにはできるんです。 だから今日は帰って寝ますね(笑)。