postfix logo Postfixのぺーじ
− 2.0.9アップデートの記録
更新: 2005年2月19日  


ホームオリジナルドキュメント >2.0.9アップデートの記録


Postfix のアップデートの記録を紹介します。 アップデータは非常に良くできており、同一メジャーバージョンでの パッチレベル更新はとても簡単です。古いものをお使いの方もぜひ 最新版に更新しましょう。

メジャーバージョンが変わる場合 (20010228 → 2.0.x, 1.1.x → 2.0.x 等) も 基本的な設定は引き継がれますが、設定の見直しが必要です。 特に古いバージョンを使い続ける必要がなければ、最新版への更新を オススメします。

/tmp/postfix にソースの tar ball があるものとします。
また、# はスーパーユーザでの実行をあらわし、% は一般ユーザでの 実行をあらわします。シェルは csh 系を仮定してるので、bsh 系の 方は読み替えて下さい。


パッケージ等を利用してアップデートする場合

パッチレベルの更新で問題になることはあまりないと思われます。 更新後、念のために postfix を再起動しておきましょう。

メジャーバージョンを更新する場合、以前の設定をそのまま使おうと すると問題が起こる場合があります。更新前に

# postconf -n

を実行してデフォルトからの変更点を確認し、それを元に更新後の 設定ファイルを変更するのがよいでしょう。また、2.0.x への メジャーバージョンのアップデートの場合には、下の 2.0系へのアップデート時の注意点を 参考にしてください。 また、更新後に Postfix を起動したら、必ずテストメールを送信して ログを確認してください。

メジャーバージョンの更新

ここでは、version 1.1.11 から 2.0.9 へのアップデート手順を紹介します。


Postfix パッケージのコンパイル

お好みの場所で tar ball を展開して、コンパイルします。 ここは通常のインストールの場合と同じです。

以前の make 時にオプションを付けて SASL や DB を組み込んだ場合、 ここでもオプションを忘れないようにしてください。

% setenv SRCDIR /tmp/postfix
% cd ${SRCDIR}
% tar xvzf postfix-2.0.9.tar.gz
% cd postfix-2.0.9
% make

Postfix のインストール

20010228 等、Postfix 1.1.0 より前のバージョンから 2.0.x に アップデートする場合で、maildrop に set-GID を使っていなかった 場合は、postdrop グループを作成する必要があります。 すでに postdrop グループ (またはそれに相当する maildrop 用グループ) を作っている場合や、Postfix 1.1.0 以降のバージョンから 2.0.x に 更新する場合は、構成を変更しない限りユーザの追加や sendmail の バイナリの移動などは必要ありません。

メジャーバージョンが変わる場合は、キューディレクトリや パラメータなどが変わることがあるため、実行中にバイナリを 上書きしてインストールさせることができません。インストールの前に postfix stop を実行して、一旦 Postfix を停止する必要があります。

構成を変更する必要がなければ、念のために /etc/postfix のバックアップを取ってから make upgrade を実行します。構成を変更するなら make install を実行して 各質問に答えてください。 (バージョン 20010228 系では make upgrade は使えないので、 # make install < /dev/null を実行します。 また、それより前のバージョンでは # INSTALL.sh を実行します)。

# cp /etc/postfix /etc/postfix.old
# postfix stop

(以前の設定をそのまま引き継ぐ場合)
# make upgrade

(インストール先など一部構成を変更する場合。すでにインストール
 されているものの情報がデフォルト値に反映されています。)
# make install

Postfix の設定

これまでの設定が新しい main.cf などにも反映されていますが、 新バージョンでパラメータが変更されることもあるので、 ソースアーカイブに含まれる RELEASE-NOTES の 「Incompatible changes」を参考に、設定を見直してください。


2.0 系へのアップデート時の注意点

特に 2.0.x 系へのアップデートでは、特に以下の点に注意してください。


Postfix の起動・確認

設定がおわったら、postfix を起動してみましょう。

# postfix start

起動したらテストメールを送信してみて、ログにエラーや警告が出て いないか、必ず確認してください。新バージョンでサポートされなくなった パラメータが書かれていることがあります。


パッチレベルの更新

ここでは、version 2.0.8 から 2.0.9 へのアップデート手順を紹介します。


Postfix パッケージのコンパイル

バージョン 2.0.8 のアーカイブが手元にある場合は、 patchlevel 09 のパッチを入手します。それ以前のバージョンから アップデートする場合、(2.0.6 の場合は 07, 08, 09 のように) 順に パッチを当てる必要があります。または 2.0.9 のアーカイブを 入手して直接コンパイルしてもよいでしょう。

お好みの場所で tar ball を展開して、コンパイルします。 ここは通常のインストールの場合と同じです。

すでに展開されたソースツリーにパッチを当てて再利用する場合は、

% make tidy

を実行して古いオプション情報を削除する方が無難でしょう。 また、以前の make 時にオプションを付けて SASL や DB を組み込んだ場合、 ここでもオプションを忘れないようにしてください。

% setenv SRCDIR /tmp/postfix
% cd ${SRCDIR}

(パッチを当てる場合)
% tar xvzf postfix-2.0.8.tar.gz
% cd postfix-2.0.8
% gzip -cd ../postfix-2.0-patch09.gz | patch -p1
  (元パッケージのバージョンにあわせて最新のパッチまで
   順に当ててください。)
% make

(最新パッケージを使う場合)
% tar xvzf postfix-2.0.9.tar.gz
% make

Postfix のインストール

パッチレベルのみの更新の場合は、構成を変更しない限りユーザの追加は 必要ないはずです。また、前回のインストールで sendmail のバイナリの 移動などをおこなっているはずなので、これらも必要ありません。

パッチレベルのみのアップデートの場合は、更新時に Postfix を 停止する必要はありません。インストール後に postfix reload を実行するだけで構いません。

構成を変更する必要がなければ、念のために /etc/postfix のバックアップを取ってから make upgrade を実行します。構成を変更するなら make install を実行して 各質問に答えてください。 (バージョン 20010228 系では make upgrade は使えないので、 # make install < /dev/null を実行します。 また、それより前のバージョンでは # INSTALL.sh を実行します)。

# cp /etc/postfix /etc/postfix.old

(以前の設定をそのまま引き継ぐ場合)
# make upgrade
# postfix reload

(インストール先など一部構成を変更する場合。すでにインストール
  されているものの情報がデフォルト値に反映されています。)
# make install
# postfix reload

Postfix の設定

ほとんどの場合、これまでの設定ファイルがそのまま使えます。 しかし、念のために新機能や変更点をソースアーカイブに含まれる RELEASE-NOTES で確認してください。


更新後の確認

設定がおわったら、postfix を起動してみましょう。

# postfix start

更新後はテストメールを送信してみて、ログにエラーや警告が出て いないか、必ず確認してください。



ike@kobitosan.net