【Qmail】Qmailキューの処理
そもそも、Qmailキューの存在自体初めて知ったわけで…。
キューの確認 … /var/qmail/bin/qmail-qstat
キューの詳細 … /var/qmail/bin/qmail-qread
キューの再送 … kill - ALRM xxxx (send-mailプロセスにALRMを渡す)
また、キューがどうしても処理できない場合は強制的に削除する。
■ 強制的に削除する場合
qmHandle というソフトウェアを利用します。
http://qmhandle.sourceforge.net/
インストールは単純に解凍するだけ。
tar xvzf qmmhandle-1.2.0.tar.gz
Perlのスクリプトなので環境に合わせて設定を変更する必要があります。
今回は/etc/rc.d/init.d/qmailを利用してqmailの起動・終了を行っている場合の記述です。
# For instance, this is if you have DJB's daemontools
#my ($stopqmail) = '/usr/local/bin/svc -d /var/service/qmail';
#my ($startqmail) = '/usr/local/bin/svc -u /var/service/qmail';
# While this is if you have a Debian GNU/Linux with its qmail package
my ($stopqmail) = '/etc/init.d/qmail stop';
my ($startqmail) = '/etc/init.d/qmail start';
あとは、/usr/local/bin以下にでも移動させればよい。
# install -o root -g qmail -m 0755 qmHandle /user/local/bin
オプションは以下の通り
-a … 再配送
-l … キュー内のローカルキュー・リモートキューのヘッダーとサマリー情報を表示
-L … ローカルキューのヘッダーとサマリー情報を表示
-R … リモートキューのヘッダーとサマリー情報を表示
-s … キューの数を表示
-mX … メール番号Xの内容表示
-dX … メール番号Xの削除
-D … キュー内のすべてのメールを削除
便利ですね。