顯示廣告
隱藏 ✕
看板 Knuckles_note
作者 Knuckles (站長 那克斯)
標題 [Postfix] 清除待寄郵件駐列 (mail queue)
時間 2013年09月23日 Mon. PM 09:41:13


參考:
The Will Will Web | 如何刪除 Postfix 中所有還沒發送的郵件
在 Postfix 中有一套 Mail Queue Management 機制,所有郵件都可以全自動的處理,但在發送大量郵件時,有些必要的維護就可能就有需要手動處理,例如刪除所有還在 Queue 中的郵件。 ...
 

以下是一些常用的指令:

# 列出目前在 Mail Queue 中的信件
mailq

# 刪除所有在 Queue 中的郵件
postsuper -d ALL

# 刪除所有正在 deferred 佇列中的郵件 ( 刪除曾經發送失敗的信 )
postsuper -d ALL deferred

# 刪除所有正在 deferred 佇列中的郵件 ( 可看出哪些信被刪除了 )
find /var/spool/postfix/deferred -type f -exec rm -vf \{\} \;

# 刪掉「三天以前」無法發出的郵件
find /var/spool/postfix/deferred -type f -mtime +3 -exec rm -f \{\} \;

# 列出目前所有無法發出的郵件
find /var/spool/postfix/deferred -type f -exec ls -l --time-style=+%Y-%m-%d_%H:%M:%S {} \;

# 刪除超過 5 天的 "defer" 佇列中的退信紀錄
find /var/spool/postfix/defer -type f -mtime +5 -exec rm -f \{\} \;

預設所有跟 Postfix 相關的郵件都會放在 /var/spool/postfix/ 目錄下
想瞭解 Postfix 是如何管理 Mail Queue 的可以參考 qmgr - Postfix queue manager 的手冊。

以下是每個目錄摘要的說明其用途:

MAIL QUEUES

incoming    從網路寄信進來本機的信。
            或從本地寄送到本地的信。

active    正在準備發送的郵件。

defered    無法傳送的信。會持續重試。

corrupt    無法讀取或毀損的信。

hold    被暫停發送的信。需要手動開啟才會發出。


DELIVERY STATUS REPORTS

bounce    每一位收件者的寄送狀態資訊,說明為什麼被「退信」。
          由 bounce(8) 程式控管

defer    每一位收件者的寄送狀態資訊,說明為什麼被「延遲寄信」。
         由 defer(8) 程式控管

trace    每一位收件者的寄送狀態資訊,說明被 Postfix 用 "sendmail -v"
         或 "sendmail -bv" 指令執行過的狀態。
         由 trace(8) 程式控管

--
※ 作者: Knuckles 時間: 2013-09-23 21:41:13
※ 編輯: Knuckles 時間: 2013-09-23 21:43:48
※ 看板: KnucklesNote 文章推薦值: 1 目前人氣: 0 累積人氣: 576 
( ̄︶ ̄)b adoration 說讚!
1樓 時間: 2014-02-12 16:25:01 (台灣)
  02-12 16:25 TW
postsuper -d ALL  我每天上班一早都會下這指令清除
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇