Kawa.netxp queue-fast.pl - qmail のメールキューの閲覧・削除

queue-fast.pl は、qmail のメールキューを閲覧・削除する Perl プログラムです。

ダウンロードはこちらから: queue-fast.20050210.tar.gz GET

内部的に qmail-qread 等を呼ばずに、自前でキュー探索しているため、 例えばSPAMメール爆弾などによってキューに100万通レベルのメールが 溜まってしまった場合でも、許容できる時間内に処理します。
環境にもよりますが、1時間あたり1万通以上のメール削除も行いました。

queue-fast.pl では、 qmail のキュー中のメールのうち、 「messages in queue」に該当するメール、 「messages in queue but not yet preprocessed」に該当するメールの どちらも表示・削除されます。

全てのキューの閲覧

キュー内の全てのメールを表示する手順:

    perl queue-fast.pl

各メールの差出人アドレス・宛先アドレスが表示されます。
閲覧モードではファイルの削除や変更は一切行いません。
表示のみですので、安全に実行できます。
queue-fast.pl は、root 権限にて実行してください。

指定アドレス宛のキューの閲覧

キュー内の user@domain.name 宛の全てのメールのみを表示する手順:

    perl queue-fast.pl user@domain.name

「指定したアドレスのみを宛先としたメール」を表示します。
また、Cc: などを使って複数の宛先アドレスが指定されたメールは除外されます。

第2引数以降(=スペース区切り)で複数の宛先アドレスを指定することも可能です。
現在は、差出人アドレスを指定することはできません。

指定アドレス宛のキューの削除

qmail を停止して、user@domain.name 宛の全てのメールを削除する手順:

    svc -d /var/qmail/supervise/qmail-send
    perl queue-fast.pl -d user@domain.name
    svc -u /var/qmail/supervise/qmail-send

-d オプションを利用した場合は、 qmailの仕様 に基いて、メール1通につき queue ディレクトリ内の複数のファイルが削除されます。
安全のため、-d オプションを実行してファイルを削除する前に 予めqmail-send を停止しておく必要があります。

バーチャルドメイン利用時の注意

virtualdomains を利用してバーチャルドメインの転送を実装したり、 vpopmail でPOPサーバを稼動している場合は、 qmail の内部処理的な宛先アドレスが書き換えられている場合がありますので、 いったんオプションなしの queue-fast.pl や qmail-qread コマンドで 内部処理的な宛先アドレスを確認してから削除することをお勧めします。

更新履歴

SEE ALSO

コメントはこちらへ by AjaxCom

その他のページへのリンク

このページへのトラックバック by AjaxTB

トラックバックURL:http://www.kawa.net/service/tb/ajaxtb.cgi/works/qmail/queue-fast.html

Kawa.netxp © Copyright 2004 Yusuke Kawasaki