之前在管理 Postfix 時,因為設定 Smart Relay 時出錯,導致在伺服器中累積了許多郵件,所以信件都發不出去,但是修改設定後重新啟動 Postfix 卻都無法將郵件重新啟動,仔細研究後才發現原來這些放置在 Queue 裡面的信件都保有當初 Relay 的狀態,必須要重新排 Queue 才能套用新的 Relay 設定。
之前在 如何刪除 Postfix 中所有還沒發送的郵件 文章中有提到過 postsuper 指令,這個指令的 -r 參數就是用來執行重新排 Queue 用的。
如果你要套用其中一筆 Queue 中的郵件,可以先用 mailq 或 postqueue 指令查詢出或篩選出你要重新排 Queue 的郵件 ID,並使用以下指令重新排 Queue:
若要套用「所有」郵件,可以使用特殊的 ALL 關鍵字:
如果想將本機的郵件全部轉到另一台發信,就可以利用此技巧達成目的!