Categories: Linux

Postfix 伺服器郵件佇列管理指令整理教學與範例

介紹 Postfix 伺服器郵件佇列常用的管理指令,包含查閱、立即嘗試遞送、刪除佇列中的郵件等。

檢查郵件佇列

如果要檢查目前存在於 Postfix 郵件佇列中的郵件(例如 deferred 與 pending 的郵件),可以使用 postqueue 指令加上 -p 參數:

# 查看 Postgix 郵件佇列
postqueue -p

另外亦可使用 mailq 指令,兩者作用完全相同:

# 查看 Postgix 郵件佇列(相容 Sendmail 介面指令)
mailq

立即傳送郵件

如果希望 Postfix 伺服器可以馬上嘗試傳送所有尚未遞送出去的郵件,可以執行 postqueue 加上 -f 參數:

# 立即嘗試遞送所有郵件
postqueue -f

如果只需要嘗試遞送指定的郵件,可以使用 -i 參數並指定郵件 ID:

# 立即嘗試遞送指定郵件
postqueue -i MAIL_ID

查閱特定郵件

若需要查看郵件佇列中指令郵件的內容,可以使用 postcat 指令,並以 -q 參數指定郵件 ID:

# 查看特定郵件
postcat -q MAIL_ID

其中 MAIL_ID 要替換為郵件的 ID。

刪除佇列中所有郵件

如果希望一次刪除目前郵件佇列中所有的郵件,可以使用 postsuper 指令:

# 刪除所有佇列中的郵件
postsuper -d ALL

亦可刪除指定郵件佇列中的所有郵件:

# 刪除 deferred 佇列中所有的郵件
postsuper -d ALL deferred

在一般的正式伺服器中,通常不會這樣刪除所有的郵件,所以若要使用此指令,請再三確認。

刪除特定信箱寄出的郵件

若要刪除所有從特定信箱寄出的郵件,可以參考以下指令稿:

# 刪除所有從 test@test.com 寄出的郵件
mailq | tail +2 | \
  awk 'BEGIN { RS = "" } / test@test\.com$/ { print $1 }' | \
  tr -d '*!' | postsuper -d -

參考資料:WIREHIVEEasyEngineLinux Hint

Share
Published by
Office Guide
Tags: Postfix

Recent Posts

Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤

本篇介紹如何在 Python ...

9 個月 ago

Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例

本篇介紹如何在 Ubuntu ...

9 個月 ago

Linux 網路設定 ip 指令用法教學與範例

本篇介紹如何在 Linux 系...

9 個月 ago

Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例

本篇介紹如何在 Windows...

10 個月 ago

Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例

介紹如何在 Linux 中使用...

10 個月 ago

Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例

介紹如何在 Linux 系統中...

10 個月 ago