INNXMIT(8)

名前
innxmit - リモートの NNTP server への記事の配送

形式
innxmit [ -A alt_spool ] [ -a ] [ -c ] [ -d ] [ -l ] [ -M ] [ -r ] [ -s ] [ -t timeout ] [ -T timeout ] [ -p ] [ -S ] [ -P portnum ] [ -v ] host file

機能説明
innxmit は host で指定した NNTP サーバに接続し、 file で指定したバッチファイルを配送します。 これは通常、 cron(8) からのスクリプト — 通常は、 nntpsend — から起動され、そのスクリプトは、 shlock(1) を使用してホスト名でロックし、 ctlinnd(8) コマンドでバッチファイルを flush します。

file が絶対パス名でなければ、 /var/news/spool/out.going というディレクトリからの相対パスとみなします。 バッチファイルは通常、 newsfeeds(5) ファイルで ``Wnm'' flag を指定して出力されます。 バッチファイルの各行は次のうちのいずれかでなければいけません。

    filename Message-ID
    filename

filename フィールドは配送する記事のファイル名です。 これが絶対パス名でなければ、ニューススプールディレクトリの /var/news/spool/articles からの相対パスとみなします。 Message-ID フィールドがなければ、記事のファイルを調べて取得します。 filename と Message-Id フィールドはスペースで区切られます。

write(2) エラー等の通信上のエラーが起きると、 innxmit は配送を停止し、バッチファイルをリライトしてその内容をカレントの記事と未配送の記事となるようにします。

オプション

-t  innxmit は通常、コネクションが確立されるまで待ちます。 コネクションが確立するまでのタイムアウトを指定する場合、``-t'' オプションを使用します。

-T  記事の配送にかかる総時間を制限する場合、``-T'' オプションを使用します。 デフォルトでは I/O エラーが起きるか、すべての記事が配送されるまで終了しません。 ``-T'' オプションを使用すると、記事の配送を行う前に時間をチェックします。 なお、記事の配送途中では終了しません。 いずれのオプションの値も秒単位でチェックされます。

-P  デフォルト以外のポート番号を指定する場合、-P オプションを使用します。

-r  リモートのサーバから期待していないリプライを受けると、 innxmit は記事を再度キューに入れ、引続き処理を行います。 記事を再度キューに入れないようにするには、``-r'' オプションを使用します。

-v  innxmit は終了すると、 syslog(3) 経由で配送と CPU の使用率の統計を報告します。 ``-v'' オプションを使用すると、標準出力にも出力します。

-a  すべての記事が正常に配送されれば、 innxmit はバッチファイルを削除します。 正常に配送されていなければ、未配送の記事のリストをリライトします。 記事がまったく配送されないか、拒否されれば、file はそのままです。 この場合、多くの記事が expire され、通信上の問題が続く場合には、 バッチファイルが極端に大きくなってしまいます。 バッチファイルを常にリライトするには、``-a'' オプションを使用します。

-p  ``-p'' オプションを使用すると、接続はせず、 すでに存在していないファイルのエントリを削除します。 これは暗に``-a'' オプションを指定することにもなります。

-S  ``-S'' オプションを使用すると、 innxmit は、 innd(8) で説明した ``xreplic'' という NNTP での共通拡張を使用して、指定した host に記事を配送します。 xreplic プロトコルでは streaming はサポートしていないため、 ``-S'' オプションは暗に ``-s'' オプションを指定することになります。 このオプションを使用する場合、入力ファイルには history データ(コンマはサーバでスペースに置き換えられます)が含まれていなければいけません。 このオプションを使用するには、入力データには history のエントリが含まれていなれければいけません。 これは通常、 newsfeeds ファイルのエントリで ``WnR'' flag を指定することにより得られます。

-d  ``-d'' オプションを使用すると、標準エラー出力にデバッグ情報を出力します。 これにより、 innxmit とリモートの NNTP サーバ間でのプロトコルトランザクションを出力します。

-l  ``-l'' オプションを使用すると、リモートのサーバが記事を拒否する理由をログに出力しません。

-M  ``-M'' オプションを使用すると、 innxmit は配送する前に記事のヘッダをスキャンします。 この場合、記事が 7 ビットフォーマットでない MIME 記事のようであれば、記事は ``quoted-printable'' 形式で配送されます。

-A  ``-A'' オプションを使用すると、 記事が見つからなかった場合の別のスプールディレクトリを指定することができます。 これは通常 expire までの期間が長めのサーバを NFS マウントしている場合のスプールディレクトリを指定することになるでしょう。

-s  innxmit は相手サーバと接続時に NNTP での共通拡張の streaming モードを使用するかどうかの調整を行おうとします。 調整が成功すれば、``check/takethis'' という通常(``ihave'')とは少し異なるプロトコルを使用してスループットを向上させます。 相手サーバが streaming モードを理解しない場合、 innxmit は通常の NNTP 配送モードに戻します。 ``-s'' オプションを使用すると、streaming モードの調整をしようとしなくなります。

-c  streaming モードでは相手サーバにすでに存在している記事の配送をしないようにするために Message-ID の check を行います。 ``-c'' オプションを使用すると、相手サーバが streaming モードをサポートしていれば、 check 無しで記事を配送します。 これにより、相手サイトが"末端"サイトの場合のように、 記事をまだ受け取っていないことが分かっている場合、 わずかにスループットを向上させるには有効となり得ます。

履歴
InterNetNews 用に Rich $alz <rsalz@uunet.uu.net> により記述されました。

関連事項
ctlinnd(8)、 innd(8)、 newsfeeds(5)、 shlock(1)、 nntpsend(8)