メールサーバ復活。

メールサーバを復活させました。備忘録的に今回行なった一連の作業なり何なりを書いておきます。

基本的にcourier-imapとPostfixを使って構築してあるので、再起動時にはこれらを順番に動かせば良いはずだったのです。しかし、ほぼ2年間再起動無しで動かしていたこともあり(一度も落ちなかったんですよね)、今回「気分で」行なってしまったPostfixのアップデートにより(ちなみに、2.4という実験的なリリースの版)、他モジュールとの依存関係が壊れてしまったようです。

今回発現したエラーは、「コンパイル時と実行時のBerkeleyDBのヴァージョンが違う」というもので、ネット上には質問と回答が幾つか見受けられるものです。しかし、それらを見てもなかなかうまくいくものではなく、色々なことをやってようやく送受信が可能な状態に復旧させることが出来ました。

まずは、旧ヴァージョンのアンインストール。RPMでインストールされていた1.1.12-1という版を消しました。で、次はBerkeleyDBの「ちゃんとした」インストール。4.4.20という、現時点での最新版を持ってきて、このサイトを見ながら他のソフトウェアのコンパイルや実行がきちんと出来るような形でコンパイルとインストールを行ないました。

最後はPostfixのコンパイル等々。こちらに日本語訳が出ているように、BerkeleyDBをこっちでインストールした場合には、Postfixのコンパイル・インストール時にはちょっと手を加える必要があるんですね。コマンドに加える「呪文」は環境によって異なるので注意しましょう。

これで何の問題もなくmake installが通ったら、main.cfを元に戻して(場合によっては書き換えて)、webminなりコマンドラインなりからPostfixを起動しますと、メールの送受信が可能となります。