KAKIMASSE

ネットで見つけた面白い記事や、役立つのではと感じたネタなどを書いています。

Linux:sendmailのメールキューを削除するには?

      2011/01/12

以前書いたpostfixのメールキュー削除方法とは別に
sendmailで送信しているメールキューを削除したい状況が発生しました。
で、例のごとく"sendmail キュー 削除 コマンド"のキーワードでググってみるとHITします。
まずは溜まっているキューの状態を確認

# mailq
/var/spool/mqueue (19 requests)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
m7U62Mfd010217 17 Sat Aug 30 15:02 foo@example.com
(host map: lookup (example.net): deferred)
bar@example.net
.
.
.
Total requests: 19
※内容は例です。

実際のメールはファイルとして存在しており、その保存場所は
/var/spool/mqueue です。
ディレクトリ移動

# cd /var/spool/mqueue

ファイルを確認

# ls -l
-rw------- 1 root root 17 8月 30 15:02 dfm7U62Mfd010217
-rw------- 1 root root 733 8月 30 15:02 qfm7U62Mfd010217

よく見るとmailqの時に表示されていた Q-ID m7U62Mfd010217 と同じidを持つファイルが
それぞれ頭に df と qf が付加されて存在しています。
df が付いている方はメールの本文、
qf が付いている方はメールのヘッダー情報がそれぞれ保存されています。
と言う事で削除対象のメールファイルがどれかを特定できたら削除します。

# rm -f [dq]f(削除したいメールのQ-ID)

上記の例でいくと

# rm -f [dq]fm7U62Mfd010217

これでファイル
dfm7U62Mfd010217 と
qfm7U62Mfd010217 が削除されます。
もう一度mailqコマンドを実行してキューが削除されている事を確認してみて下さい。
と、特定のメールキューを削除する方法は分かったんですが、
メチャクチャ溜まっているメールキューを全部一括で削除したい場合は
どうしたら良いのかも気になって更に調べてみました。
そうすると見つかったのは

# find /var/spool/mqueue/ -type f -exec rm -rf {} \;

または

# rm -f /var/spool/mqueue/*

要は/var/spool/mqueue/ 内のファイルを全部削除しちゃっていいって事ですね^^;
もしかしてと思っていましたが。
ちなみに削除した後sendmailでメールを送信したらちゃんと届きました。
※尚、くれぐれもメールの削除については皆さんの自己責任で行って下さい。

 - linux

SPONSORD LINKS

スポンサーリンク

スポンサーリンク

Message

メールアドレスが公開されることはありません。

  関連記事

no image
vsftpd:接続が遅い場合(30秒かかる)の対処方法

Centos5.3にvsftpdをインストールし、外部からFFFTPで接続すると ...

no image
linux:複数ユーザのパスワードを楽に設定(変更)するコマンドchpasswd

大量のユーザを作成する場合など、かなり面倒ですよね。 で探してて見つけたのがこれ ...

no image
Centos5でipv6を無効にする

そもそもipv6が原因では?と気づいたのが、 PHPでfile()やfile_g ...

Linuxで1枚のNICに複数の固定IPを割り当てる方法

photo credit: MightyBoyBrian via photopi ...

no image
Linux:ディレクトリ以下を再帰的にgrepしたい

特定のディレクトリ以下から、指定した文字列を含むファイルを検索したいときのコマン ...

【CentOS】「kernel panic - not syncing fatal exception NMI received for unknown reason 20 on cpu 0 dazed and confused but trying to continue 」エラーで起動しない

Centos4.xの環境で起動時に、 「kernel panic - not s ...