今天有一位用戶無法接收郵件,其它用戶也無法向其發送郵件,收到一個錯誤是
cannot update mailbox /var/mail/... for user .. error writing message: File too large
從系統中手動用mail,mutt命令讀取均報File too large錯誤。Linux的ext3文件系統絕對支持大於2G的文件
系統,怎麼會報這樣的錯誤。。?
首先,檢查當前內核對文件系統的限制。
[root@mail ~]# uname -a
Linux mail.nsk.northstar.com.tw 2.6.18-194.el5xen #1 SMP Fri Apr 2 16:16:54 EDT 2010 i686 i686 i386 GNU/Linux
[root@mail ~]# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 14171
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 14171
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
內核中并沒有限制文件大小。。
看來設置出在postfix上。
查看postfix設定:
[root@mail ~]# postconf -n|grep limit
default_process_limit = 100
mailbox_size_limit = 0
message_size_limit = 20480000
smtpd_hard_error_limit = 999
smtpd_soft_error_limit = 999
mailbox_size也沒有限制大小。但怎麼會超過2G就禁止讀取了呢?
百度得知一個方法,修改postfix主配置文件main.cf
mailbox_command = /usr/bin/procmail -Y -a $DOMAIN
重新載入配置文件。再次收取郵件,成功了。。。。
-Y Berkeley format mailbox, disregard Content-Length:
-a argument will set $1, $2, etc
阅读(3056) | 评论(0) | 转发(0) |