発端はこんなlogが出てたこと
status=bounced (cannot update mailbox /var/mail/user1 for user user1. error writing message: File too large)
mailboxのサイズを見ると49Mしか使っていません
ll /var/mail/user1
-rw-rw----. 1 user1 mail 49M 2018-05-15 09:51:51 /var/mail/user1
mailboxが50M制限にかかってるので外す方法
# まずpostfixのデフォルト値を調べる
postconf -d | grep mailbox_size
mailbox_size_limit = 51200000
# 設定ファイルをなめた後の mailbox_size_limit を見る
postconf -n | grep mailbox_size_limit
mailbox_size_limit = 51200000
# 制限をなくす = 0 にする ※注:reloadするまで適用されない
postconf -e mailbox_size_limit=0
# このコマンドは main.cf に設定を書き足してくれている
tail /etc/postfix/main.cf
mailbox_size_limit = 0 # ←最終行にこれが増えた
# 再度、設定ファイルをなめた後の mailbox_size_limit を見る ※注:reloadするまで適用されない
postconf -n | grep mailbox_size_limit
mailbox_size_limit = 51200000
# 新しい設定を適用する
postfix reload
困ったこと
postconf -n
は reload
する前から新しい値が表示される。あくまでsyntax check(のようなもの)であって、現在runningなpostfixのパラメータを確認できるものではない。
その方法がわからなかった。
あくまで postconf -n
で 次のreload後の設定はこれになるんだな を確認して、 postfix reload
することで適用される。
もし誰かが postconf -e
して、でも reload
しなかった場合は、あなたの reload
によって誰かのソレが発動し、思わぬトラブルになることもあり得る。
こちらの記事のように postconf -n
を 現在の設定
と言ってしまうことは当然あり、細かい言葉遊びになってしまうのだけど
o reloadしたらこうなるでしょうね という予測
x 現在このパラメータで動いています
ここは注意が必要。
現在走っているpostfixのパラメータを見る方法はないものか???
参考
https://rbgeek.wordpress.com/2013/01/06/how-to-fix-postfix-file-too-large-error/