Sun ONE Messaging Server 6.0 リファレンスマニュアル |
第 2 章
Message Transfer Agent のコマンド行ユーティリティこの章で説明するコマンド行ユーティリティを使うと、MTA (Message Transfer Agent) のさまざまな保守、テスト、管理などのタスクを行うことができます。
MTA のコマンドは、imsimta コマンドとも言われます。imsimta スクリプトは、msg_svr_base/ ディレクトリにあります。
msg_svr_base は、サーバーをインストールしたディレクトリパスを表します。
表 2-1 に、各コマンドの一覧を示します。
コマンドの説明MTA コマンドを実行するには、ルート (UNIX の場合) または administrator (Windows NT の場合) としてログインする必要があります。特に記載されていないかぎり、MTA コマンドは、すべて mailsrv (インストール時に作成されたメールサーバーユーザー) として実行してください。
imsimta cache
MTA は、現在キューに入っているすべてのメッセージのメモリ内キャッシュを維持します。このキャッシュは、キューキャッシュと呼ばれます。このキューキャッシュの目的は、マスタープログラムがメッセージファイルをすべて開いて、どのメッセージをどの順番でキューから取り出すかを判断しなくてもいいようにすることにより、キューから取り出す操作をより効果的にします。
構文
オプション
このコマンドのオプションは、以下のとおりです。
例
キューキャッシュを同期させるには、以下のように入力します。
tcp_local チャネルのキューキャッシュエントリを表示するには、以下のコマンドを実行します。
imsimta chbuild
imsimta chbuild コマンドは、文字セット変換テーブルをコンパイルし、その結果としてできるイメージファイルを共有メモリに読み込みます。MTA には、完全な文字セットテーブルが含まれているため、通常はこのコマンドを実行する必要はありません。文字セットを追加または修正した場合だけ、imsimta chbuild を使用します。
構文
imsimta chbuild [-image_file=ファイル_仕様 | -noimage_file]
[-maximum | -nomaximum]
[-option_file=[オプション_ファイル] | -nooption_file] [-remove]
[-sizes | -nosizes] [-statistics | -nostatistics]
オプション
このコマンドのオプションは、以下のとおりです。
例
文字セット変換テーブルをコンパイルするために使用する標準のコマンドは、以下のとおりです。
imsimta cnbuild
imsimta cnbuild コマンドは、テキストの設定、オプション、マッピング、変換、回路チェック、エイリアスファイルをコンパイルし、その結果できるイメージファイルを共有メモリに読み込みます。このイメージは、MTA テイラーファイル (msg_svr_base/config/imta_tailor) の IMTA_CONFIG_DATA オプションによって名前が付けられた imta/lib/config_data というファイルに保存されます。
MTA のコンポーネント (たとえば、チャネルプログラム) がコンパイルされた設定コンポーネントを読み取る必要がある場合は、常に、MTA テイラーファイルの IMTA_CONFIG_DATA オプションによって名前が付けられたファイルが共有メモリに読み込まれているかどうかを最初に確認します。コンパイルされたイメージは存在するが読み込まれていない場合には、MTA によってそのイメージが共有メモリに読み込まれます。MTA が共有メモリ内でコンパイルされたイメージを検出した (または検出しないが、読み込める) 場合、実行中のプログラムはそのイメージを使用します。
設定情報をコンパイルするのは、パフォーマンスのためです。ただし、コンパイルすると、元の設定ファイルを編集するたびに、イメージを再コンパイルして読み込み直さなければならないという欠点があります。また、プログラムやチャネルを起動する場合は、設定データを一度だけしか読み込まないプログラムまたはチャネルを再起動するようにしてください。例 : MTA マルチスレッド SMTP サーバー。
以下のファイルは、変更が加えられるたびに、設定を再コンパイルする必要があります。
特に、これらのファイルは、MTA テイラーファイルの IMTA_CONFIG_FILE、IMTA_ALIAS_FILE、IMTA_MAPPING_FILE、IMTA_OPTION_FILE、および IMTA_CONVERSION_FILE オプションがポイントするファイルで、通常は以下のファイルをポイントします。
構文
imsimta cnbuild [-image_file=ファイル_仕様 | -noimage_file]
[-maximum | -nomaximum]
[-option_file=[オプション_ファイル] | -nooption_file] [-remove]
[-sizes | -nosizes] [-statistics | -nostatistics]
オプション
このコマンドのオプションは、以下のとおりです。
例
コンパイルされた設定を再生成するには、以下のように入力します。
設定をコンパイルしたら、新規設定を読み込み直す必要のあるプログラムを再起動します。たとえば、SMTP サーバーを再起動します。
imsimta counters
MTA は、アクティブチャネルごとにメッセージのトラフィックカウンタを総計します。これらの統計はチャネルカウンタと呼ばれ、共有メモリに保存されます。これらのカウンタは、imsimta counters コマンドを使って操作できます。
構文
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
-associations |
-noassociations関連カウンタのインメモリキャッシュを表示するかどうかを指定する。デフォルトは -associations オプション。このオプションは、-show オプションとともに使用する
-channels |
-nochannelsインメモリキャッシュまたはチャネルカウンタを表示するかどうかを指定する。デフォルトは -channels オプション。このオプションは、-show オプションとともに使用する
-clear
-clear コマンドは、インメモリチャネルカウンタをクリアする
-create
インメモリチャネルカウンタを作成する。カウンタはデフォルトでは作成されない。カウンタを使用する場合は、作成する必要がある。MTA を再起動したあとにも、作成する必要がある。
-headers |
-noheadersカウンタテーブルの各列を説明するヘッダー行を出力するかどうかを制御する。デフォルトは -headers オプション。このオプションは、-show オプションとともに使用する
-max_channels=値
デフォルトで、インメモリチャネルカウンタは CHANNEL_TABLE_SIZE チャネルの情報を保持することができる。CHANNEL_TABLE_SIZE は、同じ名前の MTA ファイルオプションによって指定された値。-max_channels=値オプションを使って、別のサイズを選択する。このオプションは、-create オプションとともに使用する
-delete
インメモリチャネルカウンタを削除する
-show
インメモリチャネルカウンタを表示する
-headers | -noheaders
カウンタテーブルの各列を説明するヘッダー行を出力するかどうかを制御する。デフォルトは -headers オプションこのオプションは、-show オプションとともに使用する
-output=ファイル_仕様
指定されたファイルへの出力を指示する。デフォルトでは、ディスプレイにだけ出力が表示される。このオプションは、-show オプションとともに使用する
例
すべてのチャネルのカウンタを表示するには、以下のように入力します。
imsimta crdb
imsimta crdb コマンドは、MTA データベースファイルを作成し、更新します。imsimta crdb は、平文のファイルを MTA データベースレコードに変換します。そして、新規データベースを作成するか、または既存のデータベースにレコードを追加します。
一般に、入力ファイルの各行は、左側の部分と右側の部分とで構成されている必要があります。右側と左側は、1 つまたは複数のスペースかタブで区切られています。左側は、ショートデータベース (デフォルト) では 32 文字、ロングデータベースでは 80 文字に制限されています。右側は、ショートデータベースでは 80 文字、ロングデータベースでは 256 文字に制限されています。-quoted オプションを指定しないかぎり、左側にスペースとタブは表示されません。コメント行は、入力ファイルに含めることができます。コメント行は、カラム 1 において感嘆符 (!) から始まる行です。
構文
imsimta crdb 入力ファイル仕様 出力データベース仕様 [-append | -noappend]
[-count | -nocount] [-duplicates | -noduplicates]
[-long_records | -nolong_records] [-quoted | -noquoted]
[-remove | -noremove] [-statistics | -nostatistics]
[-strip_colons | -nostrip_colons]
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
入力ファイル仕様
データベースに配置されるエントリを含むテキストファイル。テキストファイルの各行に対して、対応するエントリが 1 つ必要。この属性は必須
出力データベース仕様
-dump を指定していない場合に、データベースに書き込むファイルの最初の名前文字列。.db 拡張子がファイル名に追加される。この属性は必須
-append | -noappend
デフォルトの -noappend オプションが有効になっている場合は、新しいデータベースが作成され、同じ名前の古いデータベースが上書きされる。-append オプションを使うと、既存のデータベースに新しいレコードを追加するよう MTA に指示が出される。デフォルトは -noappend オプション。重複するレコードがある場合は、-noduplicates を指定すると、追加したレコードが古いレコードを上書きする
-count | -nocount
100 行の入力グループが処理されるたびにカウントを出力するかどうかを制御する。デフォルトは -count オプション
-duplicates | -noduplicates
出力ファイルで重複レコードを許可するかどうかを制御する。現在、重複レコードは、ドメインのデータベース (書き換えルールデータベース) とディレクトリチャネルに関連するデータベースでのみ使用されている。デフォルトは -noduplicates オプション
-long_records | -nolong_records
出力レコードのサイズを制御する。デフォルトでは、左側が 32 文字、右側が 80 文字に制限されている。-long_records を指定すると、制限はそれぞれ 80 文字と 256 文字に変わる。デフォルトは -nolong_records オプション
-quoted | -noquoted
引用符の処理を制御する。通常、imsimta crdb は二重引用符に注意を払わない。-quoted を指定すると、imsimta crdb は、各入力行の左側と右側の区切りを判断しながら二重引用符を確認する。スペースとタブは、引用符セットの中であれば入力することができる。これは、スペースがデータベースキーの一部になるタイプのデータベースには便利である。-remove オプションを指定しないかぎり、引用符は削除されない。デフォルトは -noquoted オプション
-remove | -noremove
引用符を削除するかどうかを制御する。imsimta crdb が引用符に注意を払うように指示されている場合、引用符はそのまま保持される。-remove を指定すると、imsimta crdb は、各入力行の左側で、一番外側にある引用符セットを削除する。スペースとタブは、引用符セットの中であれば入力することができる。これは、スペースがデータベースキーの一部になるタイプのデータベースには便利である。-quoted が有効でない場合、-remove は無視される。デフォルトは -noremove オプション
-statistics | -nostatistics
imsimta crdb によって簡単な統計が出力されるかどうかを制御する。これには、変換されたエントリの数 (行)、検出された、重複レコードなどの例外の数、さらに、長すぎて出力データベースに収まらないため変換されなかったエントリの数が含まれる。-nostatistics を指定すると、この情報は出力されない。デフォルトは -statistics
-strip_colons | -nostrip_colons
imsimta crdb に、入力ファイルから読み取る各行の左側において一番右端にあるコロンを削除するよう指示する。これは、エイリアスファイルのエントリをエイリアスデータベースに変える場合に有用である。デフォルトは -nostrip_colons
例
以下に、「長い」レコードエントリを持つエイリアスデータベースを作成する場合のコマンドの例を示します。この作成は一時データベースを使って 2 段階のプロセスで行われるため、たとえばデータベース生成中にデータベースがロックされて MTA にアクセスできないような場合に、操作にかかる時間を最小限に抑えることができます。
imsimta crdb -dump
imsimta crdb -dump コマンドは、MTA データベースのエントリを ASCII のフラットファイルに書き込みます。特に、古いフォーマットのデータベースの内容を imsimta crdb コマンドを使って構築された新しいフォーマットのデータベースファイルに書き込む場合に、このコマンドを使用します。出力は、コメント行から始まります。このコメント行には、データベースに ASCII 形式の出力を返すために使用する imsimta crdb コマンドが表示されます。
構文
パラメータ
このコマンドのパラメータは、以下のとおりです。
パラメータ
説明
入力データベース仕様
エントリが読み取られるデータベース。デフォルトでは、MTA は所定の名前が付いた、現在のフォーマットのデータベースを探す。このデータベースが見つからない場合、MTA はその名前の古いフォーマットのデータベースを探す。IMTA_ALIAS_DATABASE、IMTA_REVERSE_DATABASE、IMTA_GENERAL_DATABASE などの特殊なキーワードをサポートしている。こういった特殊なキーワードを使用して、対応する MTA テイラーファイルオプションが指定したデータベースをダンプするよう MTA に指示を与えることができる
出力ファイル仕様
データベースに保存されているエントリが書き込まれる ASCII ファイル。このファイルは、書き込み権限のあるディレクトリにある。出力ファイルを指定しなかった場合、出力は stdout に書き込まれる
例
以下に、エイリアスデータベースの内容をファイルにダンプし、そのファイルからエイリアスデータベースを作成し直す場合の例を示します。
imsimta crdb -dump IMTA_ALIAS_DATABASE alias.txt
imsimta crdb alias.txt alias-tmp
imsimta renamedb alias-tmp IMTA_ALIAS_DATABASE
imsimta find
imsimta find ユーティリティは、指定バージョンの MTA ログファイルに対する正確なファイル名を検索します。MTA ログファイルの名前には、固有 id が追加されるため、複数のバージョンのログファイルを作成することができます。UNIX では、ファイル名の最後 (ファイル拡張子の最後) に -固有 id が追加され、Windows NT では、ファイル拡張子を除いたファイル名の最後に -固有 id が追加されます。imsimta find ユーティリティは、これらの固有の ID を識別し、要求に応じたファイル名を探し出すことができます。
構文
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
-f=オフセット-最初から
指定されたバージョン (0 から開始) のファイルを探す。たとえば、ファイルの最も古いバージョンのファイルを検索するには、-f=0 と指定する。デフォルトで、imsimta find はファイルの最新バージョンを検索するようになっている
-l=オフセット-最後から
指定されたファイルの最後のバージョンを探す。たとえば、最新のバージョンのファイルを検索するには、-l=0 と指定する。デフォルトで、imsimta find はファイルの最新バージョンを検索するようになっている
ファイル-パターン
検索するログファイルのファイル名パターンを指定する
例
以下のコマンドは、最も新しく作成された「tcp_local_slave.log-固有 id」ファイルのファイル名を印刷します。
以下のコマンドは、最も古い「tcp_bitnet_master.log-固有 id」ファイルのファイル名を表示します。
imsimta kill
imsimta kill ユーティリティは、指定されたプロセスを即座に、かつ無差別に中止します。このコマンドは UNIX の kill -9 コマンドと同じものです。電子メールを送信中のプロセスでも中止されます。したがって、ルール的にプロセスを中止する imsimta shutdown ユーティリティを使うほうが、一般的には望ましいと言えます。
構文
「コンポーネント」は、強制終了する MTA コンポーネントです。有効な値は job_controller と dispatcher です。
imsimta process
このコマンドは現在の MTA プロセスを表示します。メッセージが現在処理されている場合、または別の MTA コンポーネントが使用中である場合は、別のプロセスが表示されることもあります。
構文
例
以下のコマンドは、現在の MTA プロセスを表示します。
# imsimta process
imsimta process
USER PID S VSZ RSS STIME TIME COMMAND
mailsrv 15334 S 21368 9048 17:32:44 0:01 /export/ims/bin/msg/imta/bin/dispatcher
mailsrv 15337 S 21088 10968 17:32:45 0:01 /export/ims/bin/msg/imta/bin/tcp_smtp_server
mailsrv 15338 S 21080 11064 17:32:45 0:01 /export/ims/bin/msg/imta/bin/tcp_smtp_server
mailsrv 15349 S 21176 10224 17:33:02 0:02 /export/ims/bin/msg/imta/bin/job_controller
imsimta program
imsimta program コマンドを使うと、プログラムの配信オプションを操作できます。
このコマンドは、root または mailsrv として実行できます。mailsrv は Messaging Server のデフォルトのユーザーですが、Messaging Server がインストールされている場合は、Messaging Server の指定したユーザー名になります。
プログラムは、stdin からパースされないメッセージ全体を渡されます。これには、最初の行に From 行 (コロンなし) が含まれ、その後にヘッダーとメッセージ本体が続きます。メッセージの一部である MIME 添付ファイルが含まれることもあります。
構文
imsimta program -a -m メソッド -p プログラム [-g 引数のリスト]
[-e 実行の権限]
imsimta program -d -m メソッド
imsimta program -c -m メソッド -p プログラム | -g 引数のリスト |
-e 実行の権限
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
-a
メソッドをプログラム配信メソッドのセットに追加する。このオプションは、-d、-c、-l、または -u オプションと一緒には使用できない
-c
引数をすでに入力されているプログラムに変更する
-m メソッド
管理者が付けたメソッドの名前。これが、ユーザーに知らされるメソッドの名前になる。メソッド名に、スペース、タブ、または等号 (=) を含めることはできない。メソッド名を付けなかったり、ローカルにすることもできない。メソッド名は U.S. ASCII に限定されている。このオプションは、-a、-d、-c、-u オプションとともに使用する必要がある
-p プログラム
あるメソッドに対する実行ファイルの実際の名前。問題なく追加するためには、実行ファイルがプログラムディレクトリ (msg_svr_base/data/site-programs) になければならない。これは、他のディレクトリ内にある実行ファイルへのシンボリックなリンクである場合がある。このオプションは、-a オプションとともに使用する必要がある
-g 引数のリスト
プログラムの実行中に使用される引数のリスト。追加の際にこのオプションが指定されていない場合、引数は一切使用されない。各引数はスペースで区切り、引数全体は二重引用符で囲む必要がある。%s タグが引数リストで使われている場合、ユーザーが実行するプログラムではユーザー名に置き換えられ、inetmail で実行されるプログラムでは「ユーザー名+プログラムラベル」に置き換えられる。プログラムラベル は、そのプログラムを識別する固有の文字列。このオプションは、-a および -c オプションとともに使用できる。
-e 実行の権限
「実行の権限」は、ユーザーまたは postmaster のいずれか。ユーザーを指定すると、プログラムはユーザーとして実行される。デフォルトでは、すべてのプログラムの実行権限は postmaster に設定されている。「実行の権限」をユーザーに設定したプログラムは、UNIX アカウントを持つユーザーだけしかアクセスすることができない。このオプションは、-a および -c オプションとともに使用できる。このプログラムをポストマスターとして実行しているディレクトリは、ポストマスターのホームディレクトリ。user と指定した場合、ユーザーのホームディレクトリは、プログラムをユーザーとして実行している環境である
-d
サポートされているプログラム配信メソッドのリストからメソッドを削除する。このオプションを -a、-c、-l、-u オプションと一緒に使用することはできない
-h
このコマンドのヘルプ
-l
すべてのメソッドを一覧表示する
-u
-m オプションで指定したメソッドを使用するすべてのユーザーを一覧表示する
例
引数「-d ユーザー名」を使って procmail プログラムを実行し、かつユーザーとして実行するようなメソッド procmail1 を追加するには、以下のように入力します。
imsimta purge
imsimta purge コマンドは、古いバージョンの MTA ログファイルを削除します。imsimta purge は、MTA ログファイル名の末尾にある「固有 id」文字列からログファイルの古さを判断します。
構文
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
ファイル-パターン
ファイル-パターンが指定されている場合、そのパラメータは、パージする MTA ログファイルを決定するためのファイル名パターンを意味する。何も指定されていない場合のデフォルトのパターンは、log/imta/log
-day=d 値
過去「d 値」日間のログファイルを除いて、すべてパージする
-hour=h 値
過去「h 値」時間のログファイルを除いて、すべてパージする
-num=n 値
最も新しい「n 値」個のログファイルを除いて、すべてパージする。デフォルトは 5
例
log/imta ディレクトリにある各タイプのログファイルに対し、最も新しい 5 つのバージョンを残してすべてパージするには、以下のように入力します。
imsimta qclean
imsimta qclean ユーティリティは、エンベロープの From: アドレス、Subject: 行、または内容に特定の部分文字列が含まれているメッセージファイルを保持するか、または削除します。
構文
imsimta qclean
[-content=部分文字列] [-from=部分文字列] [-subject=部分文字列]
[-to=部分文字列] [-domain_to=部分文字列] [-database] [-delete | -hold]
[-directory_tree] [-ignore_zz] [-match=キーワード] [-min_length=n]
[-threads | -nothreads] [-verbose | -noverbose] [チャネル]
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
-content=部分文字列
-from=部分文字列
-subject=部分文字列
-to=部分文字列
-domain_to=部分文字列検索する部分文字列を指定する。-content、-from、-subject、-to、および -domain_to は、任意に組み合わせて指定することができる。ただし、それぞれのオプションを 1 つずつしか使用できない。これらのオプションを組み合わせて使用するときは、-match オプションを使って、オプションを制限 (-match=AND) と解釈するか、または代替 (-match=OR) と解釈するかを制御することができる
domain_to オプションは、頻繁に発生するエンベロープ To: アドレスをスキャンする。-to オプションと同じだが、-domain_to はエンベロープ To: アドレスの host.domain 部分だけを検索する
-database
キューキャッシュによって識別されるメッセージファイルだけを検索するように指定する
-delete
一致するメッセージファイルを削除する
-hold
一致するメッセージファイルを保持する
-directory_tree
チャネルキューのディレクトリツリーに実際にあるメッセージファイルをすべて検索する
-ignore_zz
キューに入れられたメッセージファイルのうち、名前が「ZZ」で始まるファイルを無視する。このオプションを使用すると、キューに入っているメッセージのうち、配信試行に少なくとも 1 回失敗したメッセージファイルだけをスキャンできる。
-match=キーワード
メッセージファイルを保持または削除する条件として、指定した部分文字列がすべて含まれていなければならないのか (-match=AND)、またはそのうちの 1 つだけが含まれていればよいのか (-match=OR) を制御する。デフォルトは -match=AND
-min_length=n
検索する部分文字列の最小の長さを指定する。デフォルトの場合、各部分文字列の長さは 24 バイト以上でなければならない。この制限を変更するには、-min_length オプションを使う
-threads=n | -nothreads
同時に実行される複数のスレッドに作業を分割することにより、マルチプロセッサシステムにおける検索をより高速に行う。n 個の検索スレッドを同時に実行するには、-threads=n を指定する。n の値は、1 から 8 までの整数とする。デフォルトは -nothreads
-verbose | -noverbose
操作情報を表示するように要求する (-verbose)。デフォルトは -noverbose
チャネル
メッセージを検索する MTA チャネルエリアを指定する。チャネルの指定には * または ? のワイルドカード文字を使用できる
imsimta qm
imsimta qm ユーティリティは、チャネルキューディレクトリとキューに含まれるメッセージを検査および操作します。imsimta qm には、imsimta cache や imsimta counters コマンドと重複する機能がいくつかあります。
たとえば、imsimta cache -view で返される情報のいくつかは、imsimta qm directory コマンドでも得られます。しかし、imsimta qm が完全に imsimta cache や imsimta queue の代わりになるわけではありません。
imsimta qm を実行するには、root または mailsrv でなければなりません。
imsimta qm は、インタラクティブまたは非インタラクティブモードで実行できます。インタラクティブモードで imsimta qm を実行するには、以下のように入力します。
その後、インタラクティブモードで使用できるサブコマンドを入力することができます。インタラクティブモードを終了するには、exit または quit と入力します。
非インタラクティブモードで imsimta qm を実行するには、以下のように入力します。
インタラクティブモードで使用できるサブコマンドの中には、非インタラクティブモードで使用できないものがあります。また、その逆も同様です。使用できるサブコマンドの詳細については、「サブコマンド」を参照してください。各サブコマンドには、それを使用できるモードが示されています。
サブコマンド
clean
clean サブコマンドは、エンベロープの From: アドレス、Subject: 行、または内容に特定の部分文字列が含まれているメッセージファイルを、保持するか、または削除します。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
clean [-content=部分文字列] [-from=部分文字列] [-subject=部分文字列]
[-to=部分文字列] [-domain_to=部分文字列]
[-database | -directory_tree] [-delete | -hold] [-ignore_zz]
[-match=キーワード] [-min_length=n] [-threads=n | -nothreads]
[-verbose | -noverbose] [チャネル]
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-content=部分文字列
-from=部分文字列
-subject=部分文字列
-to=部分文字列
-domain_to=部分文字列検索する部分文字列を指定する。各オプションを任意に組み合わせて使用することができる。ただし、それぞれのオプションを 1 つずつしか使用できない。これらのオプションを組み合わせて使用するときは、-match オプションを使って、オプションを制限 (-match=AND) と解釈するか、または代替 (-match=OR) と解釈するかを制御することができる
domain_to オプションは、頻繁に発生するエンベロープ To: アドレスをスキャンする。-to オプションと同じだが、-domain_to はエンベロープ To: アドレスの host.domain 部分だけを検索する
-from オプションでは、空のアドレス文字列を使用できる。たとえば imsimta qm clean -from=¥<¥>
-database | -directory_tree
検索するメッセージファイルが、キューキャッシュにエントリを持つものだけなのか (-database)、それともチャネルキューのディレクトリツリーに実際にあるすべてのメッセージファイルなのか (-directory_tree) を制御する。-database または -directory_tree のどちらも指定しなかった場合は、view サブコマンドで選択した表示が使用される。view サブコマンドが指定されていない場合は、-directory_tree が代わりに使用される
-delete | -hold
一致したメッセージファイルを保持するのか (-hold)、それとも削除するのか (-delete) を指定する。デフォルトは -hold オプション
-ignore_zz
キューに入れられたメッセージファイルのうち、名前が「ZZ」で始まるファイルを無視する。このオプションを使用すると、キューに入っているメッセージのうち、配信試行に少なくとも 1 回失敗したメッセージファイルだけをスキャンできる。
-match=キーワード
メッセージファイルを保持または削除する条件として、指定した部分文字列がすべて含まれていなければならないのか (-match=AND)、またはそのうちの 1 つだけが含まれていればよいのか (-match=OR) を制御する。部分文字列は、-content、-env_from、および -subject のオプションによって指定される。デフォルトは -match=AND
-min_length=n
検索する各部分文字列の長さ制限を変更する。デフォルトでは、制限は 24 バイト (-min_length=24)
-threads=n | -nothreads
同時に実行される複数のスレッドに作業を分割することにより、マルチプロセッサシステムにおける検索をより高速に行う。n 個の検索スレッドを同時に実行するには、-threads=n を指定する。n の値は、1 から 8 までの整数とする。デフォルトは -nothreads
-verbose | -noverbose
操作情報を表示するように要求する (-verbose)。デフォルトは -noverbose
チャネル
メッセージを検索する MTA チャネルエリアを指定する。チャネルの指定には * または ? のワイルドカード文字を使用できる
counters clear
counters clear サブコマンドは、以下の操作を実行します。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
このサブコマンドのオプションは、以下のとおりです。
いずれのオプションも指定しなかった場合は、両方のオプションが使用されます。-associations を指定して -channels を指定しなかった場合、上記の手順 3 は実行されません。
counters create
counters create サブコマンドは、以下の操作を実行します。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-max_channels=n
メモリセグメント内に許されるチャネルの数を MTA に伝える。このオプションを設定しなかった場合、MTA は imta.cnf ファイルを検索して値を判断する
counters delete
counters delete サブコマンドは、チャネルメッセージと関連カウンタ用の共有メモリセグメントを削除します。ただし、アクティブな MTA サーバープロセスとチャネルによってそのメモリセグメントは再作成されることになります。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
counters show
counters show サブコマンドを使用すると、チャネルメッセージカウンタを表示できます。オプションの「チャネル名」パラメータを設定しなかった場合は、* (ワイルドカード) が代わりに使用され、すべてのチャネルのメッセージカウンタが表示されます。チャネル名パラメータには、「*」および「?」のワイルドカード文字を含めることができます。
counters show サブコマンドは、以下の操作を実行します。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-headers または -noheaders
ヘッダーを表示するかどうかを制御する。デフォルトは -headers オプション
-output=ファイル_仕様
ファイルに出力を書き込む。出力ファイルと同じ名前の既存のファイルは、上書きされる
date
RFC 822、1123 のフォーマットで現在の日付と時刻を表示します。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
delete
最近生成されたメッセージキューリストの中で、指定されたメッセージを削除します。
id パラメータは、削除するメッセージを指定します。
-channel、-all、-confirm、および -log オプションの使い方の詳細については、「imsimta qm オプション」を参照してください。
これはインタラクティブモードでしか使用できません。
directory
キューに入っているメッセージファイルのリストを生成します。デフォルトでは、imta/queue ディレクトリツリーが、キューに入っているメッセージ情報のソースとして使用されます。このデフォルトは、view サブコマンドで変更することができます。-database および -directory_tree オプションを使ってデフォルトを変更することも可能です。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
directory [-held | -noheld] [-database] [-directory_tree]
[-envelope] [-owner=ユーザー名] [-from=アドレス] [-to=アドレス]
[-match=ブール] [-file_info | -nofile_info] [-total | -nototal]
[チャネル名]
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-database
メッセージ情報をジョブコントローラから入手する
-directory_tree
メッセージ情報のソースとして、ディスク上のディレクトリツリーを選択する
-envelope
エンベロープアドレス情報も含むリストを生成する
-total | -nototal
選択したチャネルすべての合計サイズと合計数を生成する
-owner=ユーザー名
特定のユーザーが所有するメッセージだけを一覧する。ローカルユーザーによってキューに入れられたメッセージは、そのユーザーが所有する。その他のほとんどのメッセージは、mailsrv が所有する。-owner オプションの使用は、-database を包含する
-from=アドレス、-to=アドレス、-match=ブール
指定したアドレスに一致したエンベロープ From: または To: アドレスを含むメッセージだけを一覧表示する。-from および -to の両方を指定すると、そのエンベロープの From: または To: アドレスのいずれかが指定したアドレスと一致する場合はメッセージが一覧表示される。これは、-match=or オプションに対応している。-match=and を指定すると、指定した From: および To: アドレスと一致するメッセージだけが一覧表示される。-from または -to の使用は、-envelope を包含する
address には、文字のシーケンスに一致するワイルドカード (*) や、単一の文字に一致する % 文字を含めることができる
-held | -noheld
デフォルトでは、アクティブなメッセージが一覧表示される。-held を指定すると、「保持」マークの付いたメッセージが一覧表示される。-held は、-directory_tree を包含する
-file_info | -nofile_info
ディレクトリツリーをスキャンしたときに、各メッセージファイルのサイズがブロック単位 (通常 1024 バイト) で判断される。この動作を省略して、リスト生成の速度を上げるには、-nofile_info を指定する。キューキャッシュデータベースが使用されると、サイズ情報がデータベースに保存されているため、-nofile_info オプションが無視される
チャネル名
リストを 1 つまたは複数のチャネルに制限する。チャネル名パラメータを設定しなかった場合は、すべてのチャネルに対してリストが作成される。チャネル名パラメータには、* および ? のワイルドカード文字を含めることができる
exit
imsimta qm ユーティリティを終了します。quit サブコマンドと同じです。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
held
「保持」マークが付けられているメッセージファイルのリストを生成します。このリストは、常に imta/queue/ ディレクトリツリーから生成されます。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
held [-envelope] [-file_info | -nofile_info] [-total | -nototal]
[-from=アドレス] [-to=アドレス] [-match=ブール] [チャネル名]
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-envelope
エンベロープアドレス情報も含むリストを生成する
-total | -nototal
選択したチャネルすべての合計サイズと合計数を生成する
-from=アドレス、-to=アドレス、-match=ブール
指定したアドレスに一致したエンベロープ From: または To: アドレスを含むメッセージだけを一覧表示する。-from および -to の両方を指定すると、そのエンベロープの From: または To: アドレスのいずれかが指定したアドレスと一致する場合はメッセージが一覧表示される。これは、-match=or オプションに対応している。-match=and を指定すると、指定した From: および To: アドレスと一致するメッセージだけが一覧表示される。-from または -to の使用は、-envelope を包含する
-file_info | -nofile_info
ディレクトリツリーをスキャンするときに、各メッセージファイルのサイズがブロック単位 (通常 1024 バイト) で判断される。この動作を省略して、リスト生成の速度を上げるには、-nofile_info を指定する
チャネル名
リストを 1 つまたは複数のチャネルに制限する。チャネル名パラメータを設定しなかった場合は、すべてのチャネルに対してリストが作成される。チャネル名パラメータには、* および ? のワイルドカード文字を含めることができる
history
最近生成されたメッセージキューリストの中で、指定されたメッセージに関する配信履歴情報を表示します。
これはインタラクティブモードでしか使用できません。
id パラメータを使って、履歴を表示するメッセージを指定します。
-channel、-all、および -confirm オプションの使い方の詳細については、「imsimta qm オプション」参照してください。
hold
最近生成されたメッセージキューリストの中で、指定されたメッセージに「保持」マークを付けます。
これはインタラクティブモードでしか使用できません。
id パラメータを使って、「保持」マークを付けるメッセージを指定します。
-channel、-all、-confirm、および -log オプションの詳細については、「imsimta qm オプション」を参照してください。
messages
imsimta qm messages ユーティリティは、指定したチャネルのキューに入れられたメッセージの数を表示します。これから処理されるメッセージ (または処理中のメッセージ) と、試行後に再試行バックオフ待機中のメッセージを別々にカウントします。最終的な宛先ホストが多いチャネルの場合、特に tcp_* チャネルは、メッセージは宛先ホスト別に表示されます。
例:
imsimta qm messages tcp_local
host active messages delayed messages
siroe.com 32 47
west.siroe.com 0 3
quit
imsimta qm ユーティリティを終了します。exit サブコマンドと同じ機能です。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
read
最近生成されたメッセージキューリストの中から指定されたメッセージを表示します。
これはインタラクティブモードでしか使用できません。
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-content | -nocontent
エンベロープおよびヘッダー情報とともにメッセージの内容を表示するか (-content)、または表示しない (-nocontent) ようにする。デフォルトは -nocontent
id
表示するメッセージを指定する
-channel、-all、および -confirm オプションの使い方の詳細については、「imsimta qm オプション」を参照してください。
release
指定したメッセージファイルに「保持」マークが付いている場合は、「保持」マークを取り除いて名前を変更します。ジョブコントローラが起動している場合は、他のどのメッセージより先に、このメッセージをすぐに処理する必要があることが通知されます。
これはインタラクティブモードでしか使用できません。
id パラメータを使って、.HELD 状態から解放するメッセージを指定します。
-channel、-all、-confirm、および -log オプションの使い方の詳細については、「imsimta qm オプション」を参照してください。
return
最近生成されたメッセージキューリストの中で、指定されたメッセージを未配信として送り返します。
これはインタラクティブモードでしか使用できません。
id パラメータを使って、送り返すメッセージを指定します。
-channel、-all、-confirm、および -log オプションの使い方の詳細については、「imsimta qm オプション」を参照してください。
run
ファイルで指定されたコマンドを一行ごとに処理します。
これはインタラクティブモードおよび非インタラクティブモードの両方で使用できます。
「ファイル-仕様」が開き、その中の各行が読み取られて実行されます。
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-ignore | -noignore
サブコマンドの 1 つにエラーが起こると、-ignore を指定していないかぎり、コマンドの実行は中止される
-log | -nolog
デフォルトでは、各コマンドは、実行される (-log オプション) 前に、端末にエコーする。-nolog を指定すると、このエコーを抑制できる
start
指定したチャネル用にキューに入れられたメッセージの処理を再開します。ジョブコントローラは、処理するために「OK」というマークをチャネルに付けるだけでなく、チャネル用のジョブの処理も開始します。このコマンドは、ジョブコントローラが起動しているかどうかに関わらず有効です。
チャネルパラメータは、再起動するチャネルを指定します。
stop
指定したチャネル用にキューに入れられたメッセージの処理を停止します。このコマンドにより、ジョブコントローラを停止する必要がなくなり、設定を再コンパイルする必要がなくなります。チャネルは、そのチャネルに start コマンドが発行されるまで、メッセージを処理しません。ジョブコントローラ、Messaging Server、およびホストコンピュータ自体が再起動している間、この状態が持続します。このコマンドは、ジョブコントローラが起動しているかどうかに関わらず有効です。
チャネルパラメータは、停止するチャネルを指定します。
summarize
summarize サブコマンドは、メッセージファイルのサマリーリストを表示します
summarize [-database | -directory_tree] [-heading | -noheading]
[-held | -noheld] [-trailing | -notrailing]
。
メッセージのバックログが大きい場合は、このコマンドは非常にコストがかかります。頻繁にこのコマンドを実行する代わりに、imsimta qm messages コマンドの使用を考慮すべきです。
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-database | -directory_tree
提示される情報を、ジョブコントローラから入手するのか (-database)、またはチャネルキューを含む実際のディレクトリツリーを見て入手するのか (-directory_tree) を制御する。-database または -directory_tree のどちらも指定しなかった場合は、view サブコマンドで選択した表示が使用される。view サブコマンドが指定されていない場合は、-directory_tree が代わりに使用される
-heading | -noheading
サマリーリストの最初に出力の各列を説明するヘッダー行を表示するかどうかを制御する。デフォルトは -heading オプション
-held | -noheld
出力に .HELD メッセージの数を含めるかどうかを制御する。デフォルトは -noheld オプション
-trailing | -notrailing
サマリーの最後に合計を含む最終行を表示するかどうかを制御する。デフォルトは -trailing
top
top サブコマンドは、チャネルキューのメッセージファイルの中で、最も頻繁に発生しているエンベロープ From:、Subject:、または内容フィールドを表示します。top を clean サブコマンドとともに使用すると、クエリ内に大量のスパムメールを見つけ、それを保持または削除することができます。
top [-content[=範囲]] [-from[=範囲]] [-subject[=範囲]]
[-to[=範囲]] [-database | -directory_tree] [-domain_to[=範囲]]
[-held] [-ignore_zz] [-min_count=n] [-threads=n | -nothreads]
[-top=n] [-verbose | -noverbose] [チャネル]
このサブコマンドのオプションは、以下のとおりです。
オプション
説明
-content[=範囲]
-from[=範囲]
-subject[=範囲]
-to[=範囲]
-domain_to[=範囲]-content、-from、-subject、および -to オプションは、頻繁に発生するフィールドのどれを表示するかを指定するのに使用する。デフォルトでは、Subject: フィールドだけが表示される (-subject)。頻繁に発生するエンベロープ From: フィールドを表示するには -from、頻繁に発生するエンベロープ To: フィールドを表示するには -to、頻繁に発生するメッセージ内容を表示するには -content を使用する。頻繁に発生するエンベロープ To: アドレスを表示するには、-domain_to オプションを使用する。-to オプションと同じだが、-domain_to はエンベロープ To: アドレスの host.domain 部分だけを検索する
-content、-from、-to、-domain_to、および -subject は、任意に組み合わせて指定することができる。ただし、それぞれのオプションを 1 つずつしか使用できない。-content、-from、-to、-domain_to、および -subject オプションは、オプションのパラメータ START=n および LENGTH=n を使用できる。これらのパラメータは、考慮されるフィールドの開始点とバイト数を示す。デフォルトは、-content=(START=1,LENGTH=256)、-from=(START=1,LENGTH=2147483647)、-to=(START=1,LENGTH=2147483647)、-subject=(START=1,LENGTH=2147483647)、および -domain_to=(START=1,LENGTH=214783647)。これらのパラメータは、たとえば Subject: 行の開始にランダムなテキストを使用するスパムメッセージを見つけるような場合に使うと便利である
-database | -directory_tree
スキャンされるメッセージファイルが、キューキャッシュデータベースにエントリを持つものだけなのか (-database)、またはチャネルキューのディレクトリツリーに実際にあるすべてのメッセージファイルなのか (-directory_tree) を制御する。-database または -directory_tree のどちらも指定しなかった場合は、view サブコマンドで選択した表示が使用される。view サブコマンドが指定されていない場合は、-directory_tree が代わりに使用される
held
.HELD 拡張子を持つファイルだけを一覧表示する
-ignore_zz
キューに入れられたメッセージファイルのうち、名前が「ZZ」で始まるファイルを無視する。このオプションを使用すると、キューに入っているメッセージのうち、配信試行に少なくとも 1 回失敗したメッセージファイルだけをスキャンできる。
-min_count=n
文字列を表示するための基準となる最低発生回数を変更する。デフォルトは -min_count=2
-threads=n | -nothreads
同時に実行される複数のスレッドに作業を分割することにより、マルチプロセッサシステムにおける検索の速度を上げる。n 個の検索スレッドを同時に実行するには、-threads=n を指定する。n の値は、1 から 8 までの整数とする。デフォルトは -nothreads
-top=n
表示されているフィールドで、最も頻繁に発生するフィールドの量を変更する。デフォルトは -top=20
-verbose | -noverbose
操作情報を表示するように要求する (-verbose)。デフォルトは -noverbose
チャネル
文字列の頻度をスキャンする MTA チャネルエリアを指定する。チャネルの指定には * または ? のワイルドカード文字を使用できる
view
後続のディレクトリコマンドに対し、キューに入っているメッセージ情報のソースを指定します。
これはインタラクティブモードでしか使用できません。
デフォルトでは、imta/queue/ ディレクトリツリーをスキャンして、キューに入っているメッセージのリストが生成されます。これは、-directory_tree オプションに対応しています。-database オプションを発行して、MTA キューキャッシュデータベースからリストを生成することもできます。
view サブコマンドでの設定は、別の view コマンドが指定されるか、またはユーティリティが存在しないかぎり、デフォルトとして残ります。このデフォルトは、ディレクトリコマンドの -database または -directory_tree オプションを使って変更することができます。
保持されているメッセージファイルのリストを作成する際には、常にディレクトリツリーが使用されます。
imsimta qm オプション
delete、history、hold、read、release、return サブコマンドでは、以下のオプションとパラメータを使用できます。
オプション
説明
-channel=名前
指定されたチャネルで動作する
-all
-all オプションを使うと、以前リストにされたすべてのメッセージを操作することができる。-channel オプションとともに使用すると、指定されたチャネルに対して以前リストにされたメッセージだけが操作の対象となる。-all オプションは、id パラメータとは一緒に使用できないことがある。ただし、-all または少なくとも 1 つの id パラメータを指定しなければならない
-confirm、-noconfirm
id パラメータを使って明示的にメッセージが選択されていないときに、操作を確認するよう指示するメッセージが表示される。これは、間違って delete -all サブコマンドが実行されるのを防ぐためである。この指示メッセージが出ないようにするには、-noconfirm オプションを使用する。同様に、-confirm も確認メッセージを表示する
-log、-nolog
選択した各メッセージに関する操作が報告されるかどうかを制御する
id
directory または held サブコマンドで生成された最近のリストに示されたメッセージの ID 番号。メッセージの ID 番号は、リストの一番左の列に表示されている整数値。また、id は、範囲やコンマ区切りのリストの場合もある
これらのオプションによって、コマンドを適用するメッセージが識別されるようになります。オプションが何も指定されていないときは、少なくとも 1 つの id パラメータを設定する必要があります。
たとえば、以下の表に示すように、最初のメッセージの ID 番号は 1 で、2 番めのメッセージの ID 番号は 2 です。
qm.maint> directory tcp_local
Channel: tcp_local Size Queued since
--------------------------------------------------------------
1 XS01IVX1T0QZ18984YIW.00 24 16-APR-1998 00:30:30.07
2 YH01IW2MZLN0RE984VUK.00 24 20-APR-1998 00:30:40.31
したがって、上の 2 つのメッセージは、「1,2」または「1-2」で選択することができます。
例
非インタラクティブモード
以下に、キューに入っているメッセージのリストを生成する場合の例を示します。
imsimta qm directory
Wed, 24 Feb 1999 14:20:29 -0800 (PST)
Data gathered from the queue directory tree
チャネル Channel: sims-ms Size Queued since
--------------------------------------------------------------
1 ZZ0F7O00I03CJHZD.00 1 24-Feb-1999 11:52:29
2 ZZ0F7O00I03CILY6.00 1 24-Feb-1999 11:51:57
--------------------------------------------------------------
Total size: 1 2
Grand total size: 1 2
インタラクティブモード
以下のインタラクティブセッションでは、directory サブコマンドを使って、キューに入っているメッセージのリストを得ています。その後、delete サブコマンドを使って、最初に表示されたメッセージを削除しています。最後に、別の directory サブコマンドを指定して、削除したメッセージが本当になくなっていることを示しています。
imsimta qm
qm.maint> directory
Thu, 25 Feb 1999 11:37:00 -0800 (PST)
Data gathered from the queue directory tree
チャネル Channel: sims-ms Size Queued since
--------------------------------------------------------------
1 ZZ0F7O00I03CJHZD.00 1 24-Feb-1999 11:52:29
2 ZZ0F7O00I03CILY6.00 1 24-Feb-1999 11:51:57
--------------------------------------------------------------
Total size: 2
Grand total size: 2
qm.maint> delete 1
%QM-I-DELETED, deleted the message file msg-tango/imta/queue/sims-ms/013/ZZ0F7O00I03CJHZD.00
qm.maint> directory
Thu, 25 Feb 1999 11:37:09 -0800 (PST)
Data gathered from the queue directory tree
Channel: sims-ms Size Queued since
--------------------------------------------------------------
1 ZZ0F7O00I03CILY6.00 1 24-Feb-1999 11:51:57
--------------------------------------------------------------
Total size: 1
Grand total size: 1
imsimta qtop
imsimta qtop サブコマンドは、チャネルキューのメッセージファイルの中で、最も頻繁に発生しているエンベロープ From:、To:、Subject:、または内容フィールドを表示します。
構文
imsimta qtop [-content[=範囲]] [-from[=範囲]] [-subject[=範囲]]
[-to[=範囲]] [-domain_to[=範囲]] [-database | -directory_tree]
[-ignore_zz] [-min_count=n] [-threads=n | -nothreads] [-top=n]
[-verbose | -noverbose] [チャネル]
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
-content[=範囲]
-from[=範囲]
-subject[=範囲]
-to[=範囲]
-domain_to[=範囲]頻繁に発生するどのフィールドを表示するかを指定する。デフォルトでは、Subject: フィールドだけが表示される (-subject)。頻繁に発生するエンベロープ From: フィールドを表示するには -from、頻繁に発生するエンベロープ To: フィールドを表示するには -to、頻繁に発生するメッセージ内容を表示するには -content を指定する。頻繁に発生するエンベロープ To: フィールドを表示するには、-domain_to オプションを指定する。-to オプションと同じだが、-domain_to はエンベロープ To: アドレスの host.domain 部分だけを検索する
これらのオプションは、任意に組み合わせて指定できる。ただし、それぞれのオプションを 1 つずつしか使用できない。これらのオプションには、START=n および LENGTH=n の引数を使用できる。これらの引数は、考慮されるフィールドの開始オフセットとバイト数を示す。デフォルトは、-content=(START=1,LENGTH=256)、-from=(START=1,LENGTH=2147483647)、-subject=(START=1,LENGTH=2147483647)、および -domain_to=(START=1,LENGTH=2147483647)
-database
キューキャッシュデータベースが識別できるメッセージファイルだけを検索するように指定する
-directory_tree
実際にチャネルキューのディレクトリツリーにあるメッセージファイルをすべて検索する
-ignore_zz
キューに入れられたメッセージファイルのうち、名前が「ZZ」で始まるファイルを無視する。このオプションを使用すると、キューに入っているメッセージのうち、配信試行に少なくとも 1 回失敗したメッセージファイルだけをスキャンできる。たとえば、以下のコマンドは、MTA のどのドメインにメッセージ配信上の問題があるかを示す
imsimta qtop -ignore_zz -domain_to
-min_count=n
文字列を表示するための基準となる最低発生回数を変更する。デフォルトは -min_count=2
-threads=n | -nothreads
同時に実行される複数のスレッドに作業を分割することにより、マルチプロセッサシステムにおける検索の速度を上げる。n 個の検索スレッドを同時に実行するには、-threads=n を指定する。n の値は、1 から 8 までの整数とする。デフォルトは -nothreads
-top=n
表示されているフィールドで、最も頻繁に発生するフィールドの量を変更する。デフォルトは -top=20
-verbose | -noverbose
操作情報を表示するように要求する (-verbose)。デフォルトは -noverbose
チャネル
文字列の頻度をスキャンするチャネルエリアを指定する。チャネルの指定には * および ? のワイルドカード文字を使用できる
imsimta refresh
imsimta refresh ユーティリティは、以下の機能を実行します。
基本的に、imsimta refresh は、imsimta cnbuild と imsimta restart の機能を組み合わせたものです。
構文
オプション
このコマンドのオプションは、以下のとおりです。
コンポーネント名を何も指定しなかった場合は、アクティブなコンポーネントがすべて再起動します。
imsimta reload
MTA 設定の一部は、変更後システムを停止して再起動することなく、変更を反映できます。再読み込み可能な設定は、次の部分です。
マッピング
エイリアス
一般、正引きおよび逆引き検索テーブル
これらの変更は、コンパイル後、次のコマンドを発行すると変更が反映されます。
imsimta cnbuild
imsimta reload
imsimta reload コマンドは、ディスパッチャとジョブコントローラに変更について通知し、ディスパッチャとジョブコントローラは、起動したプロセスを返答します。
imsimta renamedb
imsimta renamedb コマンドは、MTA データベースの名前を変更するためのものです。MTA はオプションで、その存在が MTA による使用をトリガーする、「ライブ」データベースをいくつか参照することがあります。そのため、MTA の名前を変更しているときにはMTA がこのようなデータベースを参照しないようにすること、またデータベースにアクセスできない時間を最小限にすることが大切です。imsimta crdb コマンドは、作成中のデータベースをロックすることによって、名前変更中のデータベースがアクセスされないようにします。
したがって、以下に示すように 2 段階に分けて MTA データベースを作成または更新することをお勧めします。
imsimta renamedb コマンドは、古いデータベースファイルを削除し、新しいデータベースファイルの名前を変更するものです。このコマンドは、名前変更中にデータベースをロックすることにより、名前の変更過程でデータベースがアクセスされることを防ぎます。そのため、データベース名を変更しているときにデータベースへのアクセスは発生せず、しかも非アクセス状態である時間を最小限に抑えることができます。名前の変更は、通常、データベースの生成よりも短い時間で行われます。
構文
パラメータ
このコマンドのパラメータは、以下のとおりです。
パラメータ
説明
旧-データベース-仕様
名前を変更する元のデータベース名
新-データベース-仕様
データベースの新しい名前。これは、実際のパス名か、または MTA テイラーファイル内にリストされている (実際のパス名をポイントしている) IMTA_ALIAS_DATABASE、IMTA_REVERSE_DATABASE、IMTA_GENERAL_DATABASE、IMTA_DOMAIN_DATABASE などの特殊な名前のいずれかになる
例
以下に、tmpdb データベースが実際の MTA エイリアスデータベース (通常 msg_svr_base/data/db/aliasesdb) となるように名前を変更するコマンド例を示します。
imsimta restart
imsimta restart コマンドは、ジョブコントローラとサービスディスパッチャを終了するためのものです。このコマンドで、MTA のマスターおよびスレーブのプログラムすべてが再起動されます。
分離された MTA プロセスは、MTA 設定が変更されるたびに再起動する必要があります。つまり、これらのプロセスは、設定から情報を一度だけ読み込み、再起動することにより、設定に対する変更を認識できるようになります。imta.cnf ファイルなどの一般的な MTA 設定ファイルの他に、コンポーネント (MTA サービスディスパッチャなど) の中には、コンポーネント特有の設定ファイル (たとえば dispatcher.cnf など) を備えているものもあります。これらのファイルが変更された場合は、コンポーネントを再起動する必要があります。
構文
MTA サービスディスパッチャを再起動すると、それが取り扱うサービスコンポーネントがすべて効果的に再起動されます。コンポーネント名を指定しなかった場合は、アクティブなコンポーネントがすべて再起動します。
例
MTA ジョブコントローラとチャネルマスタープログラムを再起動するには、以下のコマンドを入力します。
imsimta return
imsimta return コマンドは、メッセージの発信者にメッセージを送り返します。送り返されるメッセージは、2 つの部分からなる 1 つのマルチパートメッセージです。最初の部分は、メッセージが送り返された理由を説明するもので、その理由を説明したテキストは msg_svr_base/config/locale/C/LC_MESSAGES ディレクトリ内の return_bounce.txt ファイルに入っています。送り返されたメッセージの後の部分には、元のメッセージが含まれています。
構文
「メッセージ-ファイル」は、送り返されるメッセージファイルの名前です。名前には、ワイルドカードを含めることができますが、その場合は引用符で囲む必要があります。
例
以下に、指定されたメッセージを発信者に送り返すためのコマンド例を示します。
imsimta run
imsimta run コマンドは、チャネルパラメータによって指定されたチャネル内のメッセージを処理します。処理中の出力は端末に表示されるため、ユーティリティが動作している間は端末を使用できなくなります。imsimta run とは異なり、端末を独占しない imsimta submit コマンドも参照してください。
このコマンドを使って実行するチャネル配信プログラムは、imsimta submit コマンドとは異なり、保留中のバックオフ遅延期限が切れる前にメッセージを配信しようとします。
構文
パラメータ
このコマンドのパラメータは、以下のとおりです。
例
tcp_local チャネルのメッセージを処理するには、以下のコマンドを入力します。
imsimta start
imsimta start コマンドは、分離された MTA プロセスを起動するためのものです。コンポーネントパラメータを何も指定していない場合は、MTA ジョブコントローラと MTA サービスディスパッチャが起動します。サービスディスパッチャを起動すると、サービスディスパッチャが取り扱うように設定されているすべてのサービスが開始します。これには通常 SMTP サーバーが含まれます。
MTA サービスディスパッチャによって取り扱われるサービスは、MTA サービスディスパッチャを起動することによって開始する必要があります。imsimta start コマンドを使うと、MTA サービスディスパッチャによって取り扱われないサービスだけを個々に開始できます。サービスディスパッチャは、マルチスレッド SMTP サーバーなど、さまざまなサービスを取り扱うように設定できます。
構文
コンポーネントパラメータを指定すると、そのコンポーネントに関連する分離されたプロセスだけが起動します。標準のコンポーネント名は、以下のとおりです。
例
以下に、MTA ジョブコントローラと MTA サービスディスパッチャを起動するためのコマンド例を示します。
imsimta stop
imsimta stop コマンドは、MTA ジョブコントローラと MTA ディスパッチャを終了するためのものです。MTA ディスパッチャを終了すると、ディスパッチャが取り扱うすべてのサービスが終了します (例: SMTP)。
構文
例
以下に、MTA ジョブを終了するためのコマンド例を示します。
imsimta submit
imsimta submit コマンドは、プロセスを進めるようジョブコントローラに指示します。これにより、チャネルパラメータによって指定されたチャネルのキューに入っているメッセージが実行されます。
構文
パラメータ
このコマンドのパラメータは、以下のとおりです。
パラメータ
説明
チャネル
処理するチャネルを指定する。このパラメータを指定しなかった場合は、デフォルトでローカルチャネル 1 が選択される
ポーリング
「ポーリング」を指定すると、処理するメッセージがチャネルのキューになくてもチャネルプログラムが実行される
例
以下のコマンドを使うと、tcp_local チャネルのメッセージを処理できます。
imsimta test
imsimta test ユーティリティは、MTA のさまざまな機能領域についてテストを実行するためのものです。
imsimta test -mapping
imsimta test -mapping は、マッピングファイル内のマッピングテーブルの動作をテストします。入力文字列をマッピングした結果は、指定されたメタ文字に関する情報と一緒に出力文字列内に出力されます。
コマンド行に入力文字列を指定した場合は、その入力文字列をマッピングした結果だけが出力されます。入力文字列を指定しないと、imsimta test -mapping はループに入ります。つまり、入力文字列を要求し、その文字列をマッピングした後、別の入力文字列を要求します。CTRL-D キーを押すと、imsimta test -mapping は終了します。
imsimta test -match
imsimta test -match は、ワイルドカードとグローバル照合をテストするために、マッピングパターンをテストします。
imsimta test -match は、パターンを要求した後、そのパターンと比較するためのターゲット文字列を要求します。これに対する出力は、ターゲット文字列が一致するかどうかを示すものです。一致した場合は、パターンの各ワイルドカードに一致したターゲット文字列内の文字が表示されます。imsimta test -match ユーティリティはループを形成します。つまり、CTRL-D キーを押してユーティリティを終了するまで、入力のプロンプトが表示されます。
imsimta test -rewrite
imsimta test -rewrite を実行すると、実際にメッセージを送信することなく、MTA のアドレス書き換えとチャネルマッピングプロセスをテストすることができます。さまざまなオプションを使って、imsimta test -rewrite が設定テキストファイルやコンパイルされた設定 (ある場合)、または作成された出力の量などを使用するかどうかを制御することができます。
コマンド行でテストアドレスを指定すると、imsimta test -rewrite は、MTA アドレス書き換えをそのアドレスに適用し、結果を報告して終了します。テストアドレスを指定しないと、imsimta test -rewrite はループに入ります。つまり、アドレスを要求し、書き換えを実行した後、別のアドレスを要求します。CTRL-D キーを押すと、imsimta test -rewrite は終了します。
制限された配布リストに対する電子メールアドレスをテストすると、imsimta test -rewrite はローカル postmaster の返信用アドレスを掲示アドレスとして使用します。返信用アドレスは、MTA オプションファイルの RETURN_ADDRESS オプションで指定されないかぎり、「postmaster@localhost」です。
imsimta test -url
imsimta test -url は、LDAP クエリ URL をテストします。クエリする LDAP サーバーは、local.conf にある LDAP_SERVER オプションの設定により制御されています。
構文
imsimta test -rewrite [アドレス] [-alias_file=ファイル名]
[-channel | -nochannel]
[-check_expansions | -nocheck_expansions]
[-configuration_file=ファイル名 ] [-database=データベース_リスト]
[-debug | -nodebug] [-delivery_receipt | -nodelivery_receipt]
[-destination_channel=チャネル] [-filter | -nofilter]
[-from=アドレス | -nofrom] [-image_file=ファイル名 | -noimage_file]
[-input=入力-ファイル] [-local_alias=値 | -nolocal_alias]
[-mapping_file=ファイル | -nomapping_file]
[-option_file=ファイル名 | -nooption_file] [-output=出力-ファイ ル]
[-read_receipt | -noread_receipt] [-restricted=設定]
[-source_channel=チャネル] [-noreprocess]
imsimta test -mapping [入力_文字列] [-debug | -nodebug]
[-flags=文字 | -noflags]
[-image_file=ファイル名 | -noimage_file] [-mapping_file=ファイル 名]
[-option_file=ファイル名 | -nooption_file] [-table=テーブル名]
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
アドレス
書き換えるテストアドレスを指定する。このオプションを設定しないと、コマンドはアドレスの入力を要求してくる。-rewrite オプションとともに使用する
入力_文字列
マッピングテーブルの左側にある照合する文字列。-mapping オプションとともに使用する
ldap_url
imsimta test -url が解釈しようとする LDAP URL
-alias_file=ファイル名
imsimta test -rewrite が使用する別のエイリアスファイルを指定する。通常、imsimta test -rewrite は、書き換え中に、MTA テイラーファイル (msg_svr_base/config/imta_tailor) の IMTA_ALIAS_FILE オプションによって名前が付けられたデフォルトのエイリアスファイルを参照する。-noimage_file を指定しなかった場合、またはコンパイルされた設定がある場合、つまり、何らかのエイリアスファイルを読み取るように設定されたコンパイル済みの設定がない場合、このオプションは効果がない。コンパイルされた設定があると、どのエイリアスファイルも読み取られない
-block
入力全体を単一の Sieve スクリプトとして扱う。デフォルトは、各行を別々のスクリプトとして扱う
-channel | -nochannel
アドレスが一致するチャネルに関する詳細情報を、imsimta test -rewrite が出力するかどうかを制御する (例、チャネルフラグ)
-check_expansions | -nocheck_expansions
エイリアスアドレスエクスパンションの確認を制御する。通常、MTA は、エクスパンド後のアドレスがルールに則したものであれば、そのエイリアスのエクスパンションは成功したとみなす。-check_expansions オプションを使用すると、より厳しいポリシーが適用されるようになる。imsimta test -rewrite -check_expansions を使用すると、エクスパンド後のアドレスが慎重に確認され、正しく書き換えることのできないアドレスのリストが作成される
-configuration_file=ファイル
IMTA_CONFIG_FILE によって名前が付けられたファイルの代わりに使用する代替ファイルを指定する。通常、imsimta test -rewrite は、書き換え中に、MTA テイラーファイル (msg_svr_base/config/imta_tailor) の IMTA_CONFIG_FILE オプションによって名前が付けられたデフォルトの設定ファイルを参照する。-noimage_file を指定しなかった場合、またはコンパイルされた設定がある場合、このオプションは効果を発揮しない。コンパイルされた設定があると、どの設定ファイルも読み取られない
-database=データベース - リスト
さまざまなデータベースへの参照を無効にするか、またはデータベースパスを非標準の場所にリダイレクトする。通常、imsimta test -rewrite は、その操作中に標準の MTA データベースを参照する。ここに入力できる項目は、alias、noalias、domain、nodomain、general、nogeneral、reverse、およびnoreverse。no で始まる項目は、対応するデータベースの使用を無効にする。残りの項目には、関連する値 (データベースの名前) が必要
-debug | -nodebug
書き換えプロセスに追加する詳細説明を作成することができる。このオプションは、デフォルトで無効になっている
-delivery_receipt | -nodelivery_receipt
対応する配達証明書リクエストフラグを設定する。これらのオプションは、転送先アドレスまたはメーリングリストを書き換える際、配達証明書リクエストの送受信の取り扱いをテストするのに有用である
-destination_channel=チャネル
imsimta test -rewrite がアドレスを書き換える際の対象となる宛先すなわちターゲットチャネルを制御する。アドレス書き換えの中には、宛先チャネルに固有のものもある。通常、imsimta test -rewrite は、チャネルの宛先がローカルチャネル 1 であると仮定する
-exp
*** 定義が必要 ***
-filter | -nofilter
指定したアドレスに適用されるフィルタを出力する
-from=アドレス | -nofrom
-from オプションが指定された場合、アクセスコントロールプローブにどのエンベロープ From: アドレスを使うかを制御する。「アドレス」を指定しなかった場合は、postmaster の返信用アドレスが使われる。-nofrom オプションを指定した場合は、MTA はプローブのアクセスに空欄のエンベロープ From: アドレスを使用する
-flags=文字 | -noflags
-flags オプションが指定された場合にマッピングテストでセットされる特定のフラグを指定する。たとえば、REVERSE マッピングをテストする場合、「文字」には E (エンベロープ)、B (ヘッダー / 本体)、または I (メッセージ ID) を指定できる。このオプションは、-mapping オプションとともに使用される
-image_file=[ファイル名] | -noimage_file
-noimage_file オプションは、以前コンパイルされた設定を無条件で無視するようコマンドに指示し、代わりにさまざまなテキストファイルから設定を読み取るように指示する。-image_file オプションをファイル名なしで指定した場合、IMTA_CONFIG_DATA オプションによって名前が付けられたファイル (通常 msg_svr_base/config/imta.cnf) から MTA テイラーファイル (msg_svr_base/config/imta_tailor) にコンパイルされた設定が読み込まれる。ファイル名が指定されている場合は、指定されたファイルからコンパイルされた設定が読み込まれる
-input=入力 - ファイル
入力ソースを指定する。デフォルトでは、imsimta test は stdin から入力を得る
-local_alias=値 | -nolocal_alias
ローカルホストのエイリアス設定を制御する。MTA は、ローカルホストに対する複数の「識別情報」をサポートしている。ローカルホストはチャネルごとに異なる識別情報を持つことがで きる。このオプションは、ローカルホストのエイリアスを特定の値に設定する場合に使用できる。書き換え後のアドレス内にあるローカルホストは、この値に置き換えられる
-mapping_file=ファイル | -nomapping_file
MTA テイラーファイル (msg_svr_base/config/imta_tailor) の IMTA_MAPPING_FILE オプションによって名前が付けられたデフォルトのマッピングファイルではなく、指定されたマッピングファイルを使うように指示する。このマッピングファイルは、通常、msg_svr_base/config/mappings によって名前が付けられている。-noimage_file が指定されている場合、またはコンパイルされた設定がある場合、このオプションは効果を発揮しない。コンパイルされた設定があると、マッピングファイルは読み取られない。-nomapping_file オプションを使用すると、コンパイルされたファイルがない場合に、IMTA_MAPPING_FILE ファイルが読み取られるのを防ぐことができる
-message=メッセージファイル
テストするメッセージが含まれているテキストファイルを指定する。メッセージファイルは RFC 822 メッセージしか使えない。キューファイルにはならない
-mm
-noreprocess
再処理フラグが設定されていなくても操作するほかのコンポーネントの動作をシミュレートするための、内部再処理フラグを無効にする
-option_file=ファイル名 | -nooption_file
MTA テイラーファイル (msg_svr_base/config/imta_tailor) の IMTA_OPTION_FILE オプションによって名前が付けられたデフォルトのオプションファイルではなく、指定されたマッピングファイルを使うように指示する。このマッピングファイルは、通常、msg_svr_base/config/options.dat によって名前が付けられている。-noimage_file を指定しなかった場合、またはコンパイルされた設定がある場合、このオプションは効果を発揮しない。コンパイルされた設定があると、どの設定ファイルも読み取られない。-nooption_file オプションを使用すると、コンパイルされた設定がない場合に、IMTA_OPTION_FILE が読み取られることを防ぐことができる
-output=出力-ファイル
imsimta test の出力先を指定する。デフォルトでは、imsimta test は stdout に出力を書き込む。このオプションは、mailsrv アカウントが現在の作業ディレクトリに対して書き込みアクセスできる場合にのみ、機能する
-read_receipt | -noread_receipt
対応する配達証明書リクエストフラグを設定する。これらのオプションは、転送先アドレスまたはメーリングリストを書き換える際、配達証明書リクエストの送受信の取り扱いをテストするのに有用である
-restricted=設定
制限フラグの設定を制御する。デフォルトでは、このフラグは 0 に設定されている。1 に設定すると (-restricted=1)、制限フラグがセットされ、アドレスは RFC 1137 が推奨する制限メールボックスエンコーディングフォーマットを使って書き換えられる。このフラグは、RFC 1137 の仕様に基づいて強制的にアドレスメールボックス名を書きえるために使用される
-source_channel=チャネル
書き換えを実行するソースチャネルを制御する。アドレス書き換え操作の中には、ソースチャネルに固有なものもある。通常、imsimta test -rewrite は、書き換えるチャネルのソースがローカルチャネル 1 であると仮定する
-table=テーブル名
テストするマッピングテーブルの名前を指定する。このオプションを指定しないと、imsimta test -mapping によってテーブル名を入力するように指示するメッセージが表示される
例
以下に、imsimta test -rewrite によって生成された一般的な出力例を示します。imsimta test -rewrite によって生成された情報のうち最も重要なものは、出力の末尾に数行にわたって表示されています。ここには、imsimta test -rewrite が、指定されたテストアドレスを持つメッセージを送信するチャネルと、テストアドレスがそのチャネルに対して書き換えられた場合の結果が示されています。この出力は、設定に関する問題をデバッグする場合に役立ちます。
imsimta test -rewrite
Address:joe.blue
channel = l
channel description =
channel description =
channel flags #1 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
channel flags #2 = NOSMTP POSTHEADBODY HEADERINC NOEXPROUTE
channel flags #3 = LOGGING NOGREY NORESTRICTED
channel flags #4 = EIGHTNEGOTIATE NOHEADERTRIM NOHEADERREAD RULES
channel flags #5 =
channel flags #6 = LOCALUSER NOX_ENV_TO RECEIPTHEADER
channel flags #7 = ALLOWSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
channel flags #9 = NOTHURMAN INTERPRETENCODING
text/plain charset def = (7) US-ASCII 5 (8) ISO-8859-1 51
channel envelope address type = SOURCEROUTE
channel header address type = SOURCEROUTE
channel official host = mailserver.eng.alpha.com
channel local alias =
channel queue name =
channel after param =
channel daemon name =
channel user name =
notices =
channel group ids =
header To:address = joe.blue@mailserver.eng.alpha.com
header From:address = joe.blue@mailserver.eng.alpha.com
envelope To:address = joe.blue@mailserver.eng.alpha.com (route (mailserver.eng.alpha.com,mailserver.eng.alpha.com))
envelope From:address = joe.blue@mailserver.eng.alpha.com
name =
mbox = joe.blue
Extracted address action list:joe.blue@mailserver.eng.alpha.com
Extracted 733 address action list:joe.blue@mailserver.eng.alpha.com
Expanded address:
joe.blue@mailserver.eng.alpha.com
Submitted address list:
ims-ms
joe.blue@ims-ms-daemon (sims-ms-daemon) *NOTIFY FAILURES* *NOTIFY DELAYS*
Submitted notifications list:
Address:
#
以下に、サンプルの PAGER マッピングのテスト例を示します。-mapping_file オプションを使って、デフォルトのマッピングファイルの代わりに pager_table.sample マッピングファイルを選択しています。
以下の例では、いくつかのサンプルターゲット文字列に対して、サンプルのマッピングパターン $[ax1]*@*.xyz.com をテストしています。
imsimta test -match
Pattern:$[ax1]*@*.xyz.com
[ 1S] cglob [1ax]
[ 2] "@"
[3S] glob, req 46, reps 2
[ 4] "."
[ 5] "x"
[ 6] "y"
[ 7] "z"
[ 8] "."
[ 9] "c"
[ 10] "o"
[ 11] "m"
Target:xx11aa@sys1.xyz.com
Match.
0 - xx11aa
1 - sys1
Pattern:$[ax1]*@*.xyz.com
Target:12a@node.xyz.com
No match.
Pattern:$[ax1]*@*.xyz.com
Target:1xa@node.acme.com
Match.
0 - 1xa
1 - node
Pattern:^D
%
imsimta version
imsimta version コマンドは、MTA バージョン番号を印刷したり、システム名、オペレーティングシステムのリリース番号とバージョン、ハードウェアの種類を表示したりするためのコマンドです。
構文
例
実行中の MTA バージョンを確認するには、以下のコマンドを実行します。
% imsimta version
imsimta view
imsimta view ユーティリティは、ログファイルを表示するためのものです。
構文
オプション
このコマンドのオプションは、以下のとおりです。
オプション
説明
-f=オフセット-最初から
ログファイルの指定されたバージョンを表示する (0 から開始)。たとえば、ファイルの最も古いバージョンのファイルを検索するには、-f=0 と指定する。デフォルトで、imsimta view は最新バージョンのログファイルを検索する
-l=オフセット-最後から
指定されたファイルの最新バージョンを表示する。たとえば、ファイルの最新バージョンを表示するには、-l=0 を指定する。デフォルトで、imsimta view は最新バージョンのファイルを検索する
ファイル-パターン
表示するファイル名パターンを指定する