2.0.13 で、 ports に登録されているのは 2.2.5 。
Postfix のオフィシャルサイトにある postfix-2.2.5.tar.gz の中に、 RELEASE_NOTES{,-2.1,-2.0} みたいなファイルがある。変更された項目が列挙されているので "Incompat" という奴だけでいいから目を通しておく。このサーバの環境で気になったのは「アップデートする前には postfix を止めておけ」ということくらい。
まずは設定ファイルのバックアップをとっておく。あと postfix を止める。そして portupgrade 。
$ cd /usr/local/etc $ sudo cp -r postfix postfix.2.0 $ sudo /usr/local/sbin/postfix stop postfix/postfix-script: stopping the Postfix mail system $ sudo portupgrade postfix [Updating the pkgdb <format:bdb1_btree> in /var/db/pkg ... - 203 packages found :
途中、 "Postfix configuration options" というメニューが出てくるが、特に何にもチェックを入れずに [OK]。
さらに、次のような質問も来るけれどデフォルトのままでいいので [Enter] 。
Would you like to activate Postfix in /etc/mail/mailer.conf [n]?
で、特に何事もなく終了。一応設定ファイルのエラーを調べてから postfix を起動。
$ sudo postfix check $ sudo /usr/local/sbin/postfix start
/var/log/messages や /var/log/maillog に変なログも出てないし、メールの送受信テストも問題ないみたい。
一応、2.0.13 のときの postconf -n は次の通り *1。 postconf -n がこれと同じなら、特に設定ファイルに変更を加えなくてもそのまま動くことを期待していい、のかな?
allow_mail_to_commands = alias,forward,include command_directory = /usr/local/sbin config_directory = /usr/local/etc/postfix content_filter = smtp-amavis:[127.0.0.1]:10024 daemon_directory = /usr/local/libexec/postfix debug_peer_level = 2 inet_interfaces = all mail_owner = postfix mail_spool_directory = /var/mail mailbox_size_limit = 960000000 mailq_path = /usr/local/bin/mailq manpage_directory = /usr/local/man message_size_limit = 640000000 mydestination = $myhostname, localhost.$mydomain mydomain = bar.example.com myhostname = foo.bar.example.com mynetworks_style = host myorigin = $myhostname newaliases_path = /usr/local/bin/newaliases queue_directory = /var/spool/postfix readme_directory = no sample_directory = /usr/local/etc/postfix sendmail_path = /usr/local/sbin/sendmail setgid_group = maildrop smtpd_client_restrictions = check_client_access hash:/usr/local/etc/postfix/den y_clients smtpd_sender_restrictions = reject_unknown_sender_domain, permit_mynetworks, ch eck_sender_access hash:/usr/local/etc/postfix/deny_senders transport_maps = hash:/usr/local/etc/postfix/transport unknown_local_recipient_reject_code = 450
ちなみに、以下のコマンドでアップグレード時に必要な設定項目(のプレースホルダ?)を、コメントつきで main.cf と master.cf に追加してくれる、ということらしいんですが、使う機会はありませんでした。
# postfix upgrade-configuration
*1:途中に改行が入ってるから、それっぽいところは改行が入ってるんだなーと思ってください。あと、 mydomain と myhostname は一応隠してあります。