example textpostfix有四種不一樣的郵件隊列,而且由隊列管理進程統一進行管理:mysql
1. maildrop:本地郵件放置在maildrop中,同時也被拷貝到incoming中。linux
2. incoming:放置正在到達或隊列管理進程還沒有發現的郵件。sql
3. active:放置隊列管理進程已經打開了並正準備投遞的郵件,該隊列有apache
長度的限制。緩存
4. deferred:放置不能被投遞的郵件。sass
postfix平常維護ide
啓動postfixpost
postfix start測試
中止postfixui
postfix stop
從新讀取postfix配置文件
postfix reload
當即投遞隊列中全部郵件(慎用)
postfix flush
查看隊列郵件
postqueue -p
mailq
postqueue -p |tail
使用postsuper 來維護隊列。
通常是先用mailq查看隊列裏的郵件,找到對應的id,而後用postsuper -d來刪除。
例如id是0EAF3A9B 那麼postsuper -d 0EAF3A9B
Q: 刪除郵件隊列
A: mailq | tail +2 | awk 'BEGIN { RS = "" } / chen@example\.org$/ { print $1 }' | tr -d '*!' | postsuper -d -
詳細要看mailq和postsuper的用法修復隊列以及任何權限錯誤
postfix check
查看郵件系統日誌
tail -f /var/log/maillog
顯示信件列表:postqueue -p
顯示信件內容:postcat -q Queue_ID
刪除各別信件:postsuper -d Queue_ID
所有刪除:postsuper -d ALL
扣住信件:postsuper -h Queue_ID
回覆:postsuper -H Queue_ID
從新排程:
postsuper -r Queue_ID
postsuper -r ALL
清除信件:
postqueue -f (所有)
postqueue -s 主機名稱(個別對象)
要查看Postfix的當前主要配置文件的存放路徑:
postconf -n
系統日誌:tail -f /var/log/messages
郵件日誌:tail -f /var/log/maillog
clamd相關:tail -f /var/log/clamav/clamd.log tail -f /var/log/clamav/freshclam.log
maildrop相關:tail -f /var/log/maildrop.log
apache相關:tail -f /usr/local/httpd/logs/error_log tail -f /usr/local/httpd/logs/suexec_log
mysql相關:tail -f /usr/local/mysql/data/linux.linux.com.err
測試amavisd:amavisd -d config debug-sa
測試spam:spamassassin -D --lint
測試maildrop:maildrop -V 10 -dtest@test.com
postsuper -d ALL 這樣就刪除全部郵件啦
咱們能夠經過postcat -q命令來查看指定ID郵件的詳細內容。好比我以爲ID爲2FDF423FA50的郵件很可疑,那麼讓咱們詳細看看郵件:
localhost# postcat -q 2FDF423FA50
咱們來瞧瞧郵件緩存目錄
localhost# du -sh /var/spool/postfix/*
2.1G /var/spool/postfix/defer
2.7G /var/spool/postfix/deferred
能夠看到,被延遲發送的郵件佔用了5個g的空間!
清除郵件中的全部隊列
localhost# postsuper -d ALL
postsuper: Deleted: 292551 messages
共清除了將近30萬封緩存的郵件。
sudo /var/www/extsuite/extmail/dispatch-init start
sudo chmod -R 755 /var/run/courier/authdaemon
sudo mkdir /tmp/extman
sudo chown -R vmail:vmail /tmp/extman