この節では、キューの管理に役立つ作業について説明します。クライアント専用のキューの詳細については、「新しい構成ファイル submit.cf」 を参照してください。他の関連情報については、「キューの新しい機能」 を参照してください。
キューにあるメッセージの数とそれらのメッセージがキューから消去されるのにかかる時間を表示するには、次の手順に従います。
次の情報を表示するには、以下に示すコマンドを使用します。
キュー ID
メッセージのサイズ
メッセージがキューに入った日付
メッセージの状態
送信者と受信者
# /usr/bin/mailq | more |
このコマンドは、認証属性 solaris.admin.mail.mailq を確認します。確認が取れると、sendmail で -bp フラグを指定するのと同じ処理が実行されます。確認ができない場合は、エラーメッセージが表示されます。デフォルトでは、この認証属性はすべてのユーザーで使用できるようになっています。認証属性は、prof_attr 内のユーザーエントリを変更することにより無効にできます。詳細は、prof_attr(4) および mailq(1) のマニュアルページを参照してください。
たとえば、以前にメッセージを受信できなかったシステムへのメッセージを処理するには、次の手順に従います。
スーパーユーザーになるか、それと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
キューを強制処理し、キューが消去されるとジョブの進捗状況を表示します。
# /usr/lib/sendmail -q -v |
たとえば、ホスト名などアドレスの部分文字列を強制的に処理したり、キューから特定のメッセージを強制処理したりするには、次の手順に従います。
スーパーユーザーになるか、それと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
-qRstring を使用して、いつでもメールキューのサブセットを実行できます。
# /usr/lib/sendmail -qRstring |
string |
受信者の別名または user@host.domain の部分文字列 (ホスト名など) を指定 |
代わりに、-qInnnnn を使ってメールキューのサブセットを実行することもできます。
# /usr/lib/sendmail -qInnnnn |
nnnnn |
キュー ID を指定 |
メールホストのスーパーユーザーになるか、同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
sendmail デーモンを終了します。
# /etc/init.d/sendmail stop |
これで、sendmail はキューディレクトリを処理しなくなります。
/var/spool ディレクトリに移動します。
# cd /var/spool |
mqueue ディレクトリとディレクトリ内のすべての内容を omqueue ディレクトリに移動します。次に、mqueue という名前の新しい空のディレクトリを作成します。
# mv mqueue omqueue; mkdir mqueue |
ディレクトリのアクセス権を所有者は読み取り/書き込み/実行に、またグループは読み取り/実行に設定します。また、所有者とグループを daemon に設定します。
# chmod 750 mqueue; chown root:bin mqueue |
sendmail を起動します。
# /etc/init.d/sendmail start |
スーパーユーザーになるか、それと同等の役割になります。
役割については、『Solaris のシステム管理 (セキュリティサービス)』の「特権付きアプリケーションの使用」を参照してください。
古いメールキューを実行します。
# /usr/lib/sendmail -oQ/var/spool/omqueue -q |
-oQ フラグは代替キュー (待ち行列) ディレクトリを指定し、-q フラグはキューでの各ジョブを処理するように指示します。画面に冗長出力を表示している場合は、- v フラグを使用します。
空のディレクトリを削除します。
# rmdir /var/spool/omqueue |