This is ndtpd-ja.info, produced by makeinfo version 4.0 from
ndtpd-ja.texi.

INFO-DIR-SECTION CD-ROM Book Utilities
START-INFO-DIR-ENTRY
* NDTPD-ja: (ndtpd-ja).         Server for accessing CD-ROM books with NDTP.
END-INFO-DIR-ENTRY

   NDTPD: NDTP サーバ、笠原基之

   Copyright (C) 1997, 98, 99, 2000, 01  Motoyuki Kasahara

   Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.

   Permission is granted to copy and distribute modified versions of
this manual under the conditions for verbatim copying, provided that
the entire resulting derived work is distributed under the terms of a
permission notice identical to this one.

   Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be stated in a
translation approved by Free Software Foundation, Inc.


File: ndtpd-ja.info,  Node: Top,  Next: Introduction,  Prev: (dir),  Up: (dir)

   この文書は第 3.1.5 版です。NDTPD バージョン 3.1.5 に対応しています。

* Menu:

* Introduction::                はじめに
* Installation::                NDTPD のインストール
* Configuration File::          設定ファイルの書き方
* Configuration Checker::       設定ファイルの確認
* Setup Your Environment::      環境設定
* Start the Server::            `ndtpd' の起動
* Terminate and Restart::       `ndtpd' の終了および再始動
* Daily Works::                 毎日の管理作業
* Network License::             ネットワークライセンス

* FAQ::                         よく訊かれる質問集

 --- The Detailed Node Listing ---

NDTPD のインストール

* Basic Installation::          基本的なインストール方法
* Compilers and Options::       コンパイラとコンパイルオプションの選択
* Multiple Architectures::      複数のアーキテクチャでコンパイル
* Installation Names::          インストール名の変更
* Optional Features::           取捨選択の可能な機能
* System Type::                 システムの種類
* Sharing Defaults::            `configure' スクリプトのデフォルト
                                を共通の値に設定するには
* Operation Controls::          `configure' の動作の制御
* Optional Feature List::       取捨選択の可能な機能の一覧

設定ファイル

* Single Directive::            単独指示子の一般形
* Single Directive List::       単独指示子の一覧
* Group Directive::             複合指示子の一般形
* Book Group Directive::        複合指示子の一覧
* Sample Configuration::        設定ファイルの例

設定ファイルのチェックコマンド

* Invoking ndtpcheck::          `ndtpcheck' の実行
* ndtpcheck Options::           `ndtpcheck' のオプション

環境設定

* Services::                    `services' ファイルの設定
* Syslog::                      `syslog.conf' ファイルの設定
* Working Directory::           NDTPD の作業用ディレクトリ
* Mount CD-ROM Books::          CD-ROM 書籍のマウント
* Appendix Package::            appendix パッケージの用意
* Install NDTP Client::         NDTP クライアントのインストール

サーバの起動

* Run as Standalone::           `ndtpd' をスタンドアロンで起動
* Run as a Child of inetd::     `ndtpd' を inetd 経由で起動
* Run as a Child of xinetd::    `ndtpd' を xinetd 経由で起動
* Checking with telnet::        `telnet' を用いた確認
* ndtpd Options::               `ndtpd' のオプション

サーバの終了および再始動

* Invoking ndtpcontrol::        `ndtpcontrol' の実行
* ndtpcontrol Options::         `ndtpcheck' のオプション

毎日の管理作業

* ndtpdaily Options::           `ndtpdaily' のオプション

ネットワークライセンス

* Count the Number of Clients::  クライアントの数え上げ

よく訊かれる質問集

* Question 1::                  質問 1 (`ndtpd' がすぐに終了する)
* Question 2::                  質問 2 (書籍が読めません)
* Question 3::                  質問 3 (appendix パッケージ)
* Question 4::                  質問 4 (`diclookup-mule')
* Question 5::                  質問 5 (すべての接続を拒否)
* Question 6::                  質問 6 (テキストが変な位置で切れる)


File: ndtpd-ja.info,  Node: Introduction,  Next: Installation,  Prev: Top,  Up: Top

はじめに
********

   NDTPD は TCP 上の NDTP (Network Dictionary Transfer Protocol)
というプロトコルを用いて、 CD-ROM 書籍へのアクセスを行うサーバです。
dserver は NDTPD に置き換えることが可能です。

   NDTPD は UNIX 系 OS のシステム上で動作させることができます。 EB,
EBG, EBXA, EBXA-C, S-EBXA および EPWING 形式の CD-ROM 書籍に対応してい
ます。 これらの形式の CD-ROM 書籍は、日本で一般的に使われています。
CD-ROM 書籍自体は ISO 9660 形式になっていますので、他の ISO 9660 形式
と同じ要領でマウントすることができます。

   サーバのコマンドは `ndtpd' といいます。 `ndtpd' は、デフォルトではス
タンドアロンで動作しますが、`inetd' 経由で起動するようにすることも可能
です。

   NDTPD はフリーソフトウェアです。あなたは、Free Software Foundation
が公表した GNU General Public License (GNU 一般公有使用許諾) バージョ
ン 2 あるいはそれ以降の各バージョンの中からいずれかを選択し、そのバージ
ョンが定める条項に従って本プログラムを再頒布または変更することができま
す。

   NDTPD は有用とは思いますが、頒布にあたっては、市場性及び特定目的適合
性についての暗黙の保証を含めて、いかなる保証も行ないません。詳細につい
ては GNU General Public License をお読み下さい。

   加えて、あなたは自分の所有する CD-ROM 書籍の使用許諾も守らなくてはい
けません。 NDTPD はフリーソフトウェアですが、あなたの書籍が自由に使え
るものであるとは限りません。 使用を許されていないホストやユーザに対し
て、あなたの書籍を公開しないで下さい。

   この文書は NDTPD バージョン 3.1.5 に対応しています。

   最新の NDTPD は <ftp://ftp.sra.co.jp/pub/net/ndtp/ndtpd/> から入手で
きます。

   NDTPD に関する情報は <http://www.sra.co.jp/people/m-kasahr/ndtpd/>
から得ることができます。

   コメントやバグの報告は <m-kasahr@sra.co.jp> 宛に、日本語か英語でお送
り下さい。


File: ndtpd-ja.info,  Node: Installation,  Next: Configuration File,  Prev: Introduction,  Up: Top

NDTPD のインストール
********************

   NDTPD は CD-ROM 書籍にアクセスするために、EB ライブラリを使用してい
ます。 NDTPD をインストールする前に、EB ライブラリ 3.3 もしくはそれ以
降のバージョンをインストールする必要があります。

   最新の EB ライブラリは <ftp://ftp.sra.co.jp/pub/misc/eb/> から入手で
きます。

   EB ライブラリに関する情報は
<http://www.sra.co.jp/people/m-kasahr/eb/> から得ることができます。

* Menu:

* Basic Installation::          基本的なインストール方法
* Compilers and Options::       コンパイラとコンパイルオプションの選択
* Multiple Architectures::      複数のアーキテクチャでコンパイル
* Installation Names::          インストール名の変更
* Optional Features::           取捨選択の可能な機能
* System Type::                 システムの種類
* Sharing Defaults::            `configure' スクリプトのデフォルト
                                を共通の値に設定するには
* Operation Controls::          `configure' の動作の制御
* Optional Feature List::       取捨選択の可能な機能の一覧


File: ndtpd-ja.info,  Node: Basic Installation,  Next: Compilers and Options,  Prev: Installation,  Up: Installation

基本的なインストール方法
========================

   以下に記したのは、一般的なインストールの方法です。

   `configure' シェルスクリプトは、コンパイル中に使用される、システム
依存のチェック項目の値を正しく推定しようと努めます。 `configure'は、判
定した値を利用してパッケージ中の各ディレクトリの
`Makefile'を生成します。 加えて、システムに依存する定義内容を記した
`.h' ファイルを一つもしくはいくつか生成することもあります。 最後に、
`configure' は `config.status' というシェルスクリプト `config.cache'、
`config.log' というファイルを生成します。 `config.status' は、現在のコ
ンフィグレーションを後で再度生成するときに用います。 `config.cache'
は、再度コンフィグレーションを行うときにスピードアップを図るために、テ
ストの結果を保存してあります。 `config.log' には、(主に `configure' の
デバッグに役立つような) コンピュータの出力が記録されています。

   あなたがパッケージをコンパイルするにあたって、特別なことをしなければ
ならなかったときは、 `configure'
がどのような判定をしていたのかを調べてみて、`README' に記されたアドレス
に宛てて、相違点や指摘をメールで送って下さい。 そうすれば、次回のリリ
ースに向けて検討されると思います。 もし、`config.cache' に見られたくな
い結果が記録されている場合は、その部分を削除したり編集したりしても構い
ません。

   `configure.in' というファイルは、 `autoconf' というプログラムが
`configure' を生成するときに参照します。 あなたにとって `configure.in'
というファイルが必要になるのは、 `configure.in' の内容を変更したい場合
か、`autoconf' のもっと新しいバージョンで `configure' を生成したい場合
の、いずれかだけです。

パッケージの最も単純なコンパイル方法は次の通りです。

  1. パッケージのソースコードが置かれているディレクトリに移動 (`cd')
     し、 あなたのシステム向けのコンフィグレーションを行うために
     `./configure' を実行します。 あなたが古いバージョンの System V で
     `csh' を使用している場合は、 `csh' 自身がスクリプトを実行してしま
     わないように、 `sh. /configure' とする必要があるかも知れません。

     `configure' の実行には少々時間がかかります。 実行している間は、ど
     のような項目をチェックしているのかを記したメッセージが出力されま
     す。

  2. `make' を実行してパッケージをコンパイルします。

  3. 任意で、パッケージに付属しているセルフテストを実行する場合は、
     `make check' を実行します。

  4. `make install' を実行して、プログラムおよびデータファイル、ドキュ
     メントをインストールします。

  5. `make clean' を実行すると、生成されたプログラムのバイナリファイル
     やオブジェクトファイルを、ソースコードの置かれたディレクトリから
     消すことができます。 一緒に `configure' が生成したファイルも消す
     には (こうすることで、別の種類のコンピュータでパッケージをコンパ
     イルできます)、 `make distclean' を実行します。 `make
     maintainer-clean' というターゲットも用意されていますが、これは主
     にそのパッケージの開発者のためのものです。 `make maintainer-clean'
     を実行してしまうと、パッケージに元々含まれていたファイルを再生成
     するために、他のいろいろなプログラムを入手しなくてはいけなくなる
     かも知れません。


File: ndtpd-ja.info,  Node: Compilers and Options,  Next: Multiple Architectures,  Prev: Basic Installation,  Up: Installation

コンパイラとコンパイルオプション
================================

   システムによっては、`configure' スクリプトが理解していない、コンパ
イルやリンクのための特別なオプションを与える必要があります。 環境変数を
通して、`configure' に対して初期値を与えることができます。 Bourne シェ
ルと互換性のあるシェルを使用している場合は、次のようにします。
     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure

`env' というコマンドがシステムにあるならば、次のようにすることもできま
す。
     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure


File: ndtpd-ja.info,  Node: Multiple Architectures,  Next: Installation Names,  Prev: Compilers and Options,  Up: Installation

複数のアーキテクチャでのインストール
====================================

   オブジェクトファイルをアーキテクチャ毎に別々のディレクトリに置くよう
にすることにより、種類の異なる複数のコンピュータが、パッケージを同時に
コンパイルできます。 これを行うには、GNU `make' のように、`VPATH' 変数
に対応した `make' を使用する必要があります。 オブジェクトファイルや実行
形式のファイルを置いておきたいディレクトリに移動 (`cd') して、そこで
`configure' スクリプトを実行します。 `configure' は、自身の存在するディ
レクトリおよび `..' にソースコードがあるかどうかを自動的に調べます。

   `VPATH' 変数に対応していない `make' を使用している場合は、ソースコ
ードディレクトリの下で、一度に一つのアーキテクチャずつコンパイルしてい
くしかありません。一つのアーキテクチャのコンパイルが終わったら、別のア
ーキテクチャでコンパイルするために再コンフィグレーションを行う前に
`make distclean' を実行して下さい。


File: ndtpd-ja.info,  Node: Installation Names,  Next: Optional Features,  Prev: Multiple Architectures,  Up: Installation

インストール名
==============

   デフォルトでは、`make install' を実行すると、パッケージ中のファイル
が `/usr/local/bin'、 `/usr/local/man' などにインストールされます。
`configure' に対して `--prefix=パス' オプションを指定することで、
`/usr/local' 以外のインストール先を指定するとができまます。

   アーキテクチャに依存したファイルとそうでないファイルを、それぞれ異な
ったインストール先にインストールすることも可能です。 `configure' に対
して `--exec-prefix=パス' を指定すると、 プログラムやライブラリなどのイ
ンストール先がパスに変わります。
ドキュメントや、データファイルなどは、通常のインストール先にインストー
ルされます。

   加えて、あなたが通常とは異なったディレクトリレイアウトを採用している
場合は、`--bindir=パス' といったオプションを指定することで、特定の種
類のファイルのインストール先だけを変えることができます。 `configure
--help' を実行すると、どのようなディレクトリを変更できるのか、どのよう
な種類のファイルがどのディレクトリにインストールされるのかが分かります。

   パッケージがサポートしているならば、 `configure' に
`--program-prefix=接頭辞' や `--program-suffix=接尾辞' というオプション
を与えることで、 インストール時にプログラム名に接頭辞や接尾辞を付加する
ことができます。


File: ndtpd-ja.info,  Node: Optional Features,  Next: System Type,  Prev: Installation Names,  Up: Installation

取捨選択の可能な機能
====================

   パッケージによっては、`configure' が `--enable-機能' オプションを認
識することがあります。 ここで機能は、パッケージにおいて取捨選択の可能
な機能を表します。 また、`--with-パッケージ' オプションを認識することも
あります。 ここでパッケージは、 `gnu-as' や (X
ウィンドウシステムのための) `x' といったものです。 `README' ファイルで
は、どのような `--enable-'、`--with-' オプションをパッケージが認識する
のか、記しておくべきです。

   一般に、X ウィンドウシステムを使用しているパッケージでは、 `configure'
は X の include ファイルとライブラリファイルを自動的に見つけ出すことが
できますが、見つけられない場合は、 `configure' のオプション
`--x-includes=ディレクトリ' と `--x-libraries=ディレクトリ' を用いるこ
とでディレクトリの位置を明示的に指定することができます。


File: ndtpd-ja.info,  Node: System Type,  Next: Sharing Defaults,  Prev: Optional Features,  Up: Installation

システムの種類の指定
====================

   設定項目によっては、 `configure'
が自動的に識別できなくても、パッケージが動作するホストの種類を基に決定
しなければならないときもあります。 通常、`configure' はそのホストの種類
を識別することができますが、もしも `configure' がホストの種類を識別で
きないという旨のメッセージを出力してきたときは、`--host=種類' オプショ
ンを与えて下さい。 種類は `sun4' のようなシステムの種類を表した短い名
前か、あるいは次のように 3 つの項からなる正式名称のいずれかです。
     CPU-社名-システム

それぞれの項にどのような値が指定可能なのかについては、`config.sub' ファ
イルをご覧下さい。 パッケージが `config.sub' を含んでいないのであれば、
そのパッケージはホストの種類を識別する必要がないことを意味しています。

   あなたがクロスコンパイルのためのコンパイラツールをインストールしよう
としている場合は、`--target=種類' オプションを使用することで、どのホ
スト向けのコードを生成させるのかを指定できます。そして、 `--build=種類'
オプションを使用することで、パッケージをコンパイルしようとしているシス
テムの種類を指定することができます。


File: ndtpd-ja.info,  Node: Sharing Defaults,  Next: Operation Controls,  Prev: System Type,  Up: Installation

デフォルト値の共有
==================

   複数の `configure' スクリプトに対して共通のデフォルト値を設定したい
ときは、サイト毎に `config.site' というシェルスクリプトを作成し、そこ
に `CC' や `cache_file'、`prefix' といった変数のデフォルト値を記述して
下さい。 `configure' は `PREFIX/share/config.site' があれば、 それを調
べ、次に `PREFIX/etc/config.site' があればそれを調べます。 あるいは、
環境変数 `CONFIG_SITE' を設定することで、サイト固有のスクリプトの位置
を指定することもできます。 ただし、すべての `configure' スクリプトがサ
イト固有のスクリプトを見に行くわけではありませんので、ご注意下さい。


File: ndtpd-ja.info,  Node: Operation Controls,  Next: Optional Feature List,  Prev: Sharing Defaults,  Up: Installation

`configure' の動作の制御
========================

   `configure' は次に記したオプションを認識します。

`--cache-file=ファイル'
     テストの結果の読み込みや書き出しに使用するファイルは、通常
     `./config.cache' ですが、代わりにファイルを用います。
     `configure' をデバッグするときは、ファイルに `/dev/null' を指定す
     ることで、キャッシュを抑制することができます。

`--help'
     `configure' のオプションの一覧を表示して、終了します。

`--quiet'
`--silent'
`-q'
     どのチェック項目を行っているのかを示すメッセージを出力しません。
     通常のメッセージ出力をすべて抑制するには、 `/dev/null'
     へリダイレクトして下さい (ただし、エラーメッセージについては出力さ
     れてしまいますが)。

`--srcdir=ディレクトリ'
     パッケージのソースコードを探し出す際に、ディレクトリを探します。
     通常、`configure' は自動的にディレクトリを決定します。

`--version'
     `configure' スクリプトがどのバージョンの Autoconf
     によって生成されたのかを表示して、終了します。

役に立つ場面は限られますが、`configure' には他にもいくつかのオプション
が用意されています。


File: ndtpd-ja.info,  Node: Optional Feature List,  Prev: Operation Controls,  Up: Installation

選択可能な機能の一覧
====================

   本パッケージの `configure' は以下に記した `--enable-' および
`--with-' オプションを認識します。

`--with-logdir=DIR'
     `ndtpdaily' がローテーションを行う syslog ファイルが置かれるディ
     レクトリのデフォルトとして DIR を指定します。 無指定時は、
     `LOCALSTATEDIR/ndtpd/log' です。

`--with-eb-conf=FILE'
     EB ライブラリの設定ファイルとして FILE を読み込みます。 デフォルト
     は、`SYSCONFDIR/eb.conf' です。

`--with-gnu-ld'
     C コンパイラが GNU ld を使用していると仮定します。 デフォルトは、
     `no' です。

`--enable-ipv6'
     IPv6 に対応させます。 システムが IPv6 に対応している場合、 The
     default value is `yes' if the system supports IPv6.


File: ndtpd-ja.info,  Node: Configuration File,  Next: Configuration Checker,  Prev: Installation,  Up: Top

設定ファイル
************

   `ndtpd' を始動させるためには、まず設定ファイルを編集する必要があり
ます。 `ndtpd' は始動時および再始動時にこのファイルを読み込みます。 こ
のファイルの内容によって、サーバの様々な挙動が決定されます。

   NDTPD を `/usr/local' 以下にインストールし、かつ、マシン固有の読み
込み専用のデータを置くディレクトリ (`sysconfdir') の位置を変更していな
ければ、無指定時に読み込まれる設定ファイルは
`/usr/local/etc/ndtpd.conf' になります。 設定ファイルの位置は、`ndtpd'
のコマンドラインオプション `--configuration-file' (あるいは `-c') を用
いることで変更が可能です (*note `ndtpd' のオプション: ndtpd Options.)。

   設定ファイルの中では、空行、および空白以外の最初の文字がハッシュ記号
(`#') である行は無視されます。 他の行はすべて、"単独指示子 (single
directive)" か "複合指示子 (group directive)" のいずれかでなくてはなり
ません。 単独指示子と複合指示子は、どのような順序で定義しても差し支えあ
りません。

   各行は、改行文字を含め 511 文字を越えてはなりません。

* Menu:

* Single Directive::            単独指示子の一般形
* Single Directive List::       単独指示子の一覧
* Group Directive::             複合指示子の一般形
* Book Group Directive::        複合指示子の一覧
* Sample Configuration::        設定ファイルの例


File: ndtpd-ja.info,  Node: Single Directive,  Next: Single Directive List,  Prev: Configuration File,  Up: Configuration File

単独指示子の一般形
==================

   単独指示子とは、1 行で完結する指示子です。 単独指示子の一般形は次の
通りです。

     指示子の名前    指示子の値

以下の例では、`syslog-facility' が指示子の名前、 `local0'
がその値です。

     syslog-facility    local0

指示子名の大文字と小文字は区別されますので、 `syslog-facility' を
`Syslog-Facility' と書くことはできません。
指示子の名前と値の区切りには、空白かタブを用います。 連続した空白とタブ
が、行頭および行末にあった場合、それらは無視されます。


File: ndtpd-ja.info,  Node: Single Directive List,  Next: Group Directive,  Prev: Single Directive,  Up: Configuration File

単独指示子の一覧
================

   単独指示子には次のようなものがあります。

`ndtp-port'
     `ndtp-port' 指示子では、サーバが見張るポートの番号を指定します。
     指示子の値は、TCP のサービス名 (例: `NDTP') か、ポート番号 (例 :
     `2010') でなくてはいけません。 `ndtpd' を `inetd' 経由で起動した場
     合は、この指示子は無視されます。 この指示子は必ずしも定義する必要
     はありません。 また、2 度以上定義することはできません。 無指定時の
     値は `NDTP' です。

`http-port'
     `ndtpd' はこの指示子を常に無視します。

`user'
     `user' 指示子では、 `ndtpd' プロセスを所有するユーザを指定します。
     指示子の値は、ユーザ名 (例: `nobody') か、ユーザ ID (例: `65535')
     でなくてはいけません。 別のユーザに所有ユーザを変える場合は、
     `ndtpd' を起動したときの所有ユーザが `root'
     でなくてはいけません。 所有ユーザの変更に失敗すると、`ndtpd' は走
     行の継続を断念します。 この指示子は必ずしも定義する必要はありませ
     ん。 また、2 度以上定義することはできません。 この指示子を定義しな
     かった場合、`ndtpd' プロセスの所有ユーザは変化しません。

     `ndtpuser' のようなダミーのユーザアカウントを一つ作って、それをこ
     の指示子で指定することをお薦めします。

`group'
     `group' 指示子では、`ndtpd' プロセスのグループを指定します。 指示
     子の値は、ユーザ名 (例: `nogroup') か、グループ ID (例: `65534')
     でなくてはいけません。 グループの変更に失敗すると、`ndtpd' は走行
     の継続を断念します。
     この指示子は必ずしも定義する必要はありません。 また、2 度以上定義
     することもできません。 この指示子を定義しなかった場合、`ndtpd' プ
     ロセスのグループは変化しません。

     `ndtpgrp'
     のようなダミーのグループアカウントを一つ作って、それをこの指示子で
     指定することをお薦めします。

`max-clients'
     `max-clients' 指示子では、同時に `ndtpd' に接続できるクライアント
     の数の上限を指定します。 指示子の値は、0 以上の整数でなくてはいけ
     ません。 この指示子は必ずしも定義する必要はありません。 また、2 度
     以上定義することはできません。 無指定時の値は `1' です。 指示子の
     値を 0 に設定すると、無制限になります。

`hosts'
     `hosts' 指示子では、どのホストが `ndtpd' に接続でき、どのホストが
     接続できないのかを指定します。 指示子の値は IP
     アドレス、ホスト名、アドレス /ネットマスクのいずれかです。
     加えて、直前に感嘆符 (`!') を付けることができます。 指示子の値が感
     嘆符で始まっていた場合は、それに続く IP アドレスまたはホスト名に
     マッチするホストからの接続要求は拒否します。 感嘆符がない場合は、
     指示子の値にマッチするホストからの接続要求は許可します。


          # `host.xxx.yyy.jp' からの接続を許可する。
          hosts host.xxx.yyy.jp
          
          # `127.0.0.1' からの接続を許可する。
          hosts 127.0.0.1
          
          # `192.24.1.0/24'.からの接続を拒否する。
          hosts !192.24.1.0/24

     ホスト名に限り、アスタリスク (`*') と疑問符 (`?') を使うことがで
     きます。 アスタリスクは、先頭の感嘆符を除いた任意の 0 文字以上の文
     字列にマッチします。


          # `xxx.yyy.jp' ドメインのホストからの接続を拒否する。
          hosts !*.xxx.yyy.jp
          
          # どのホストからの接続も許可する。
          hosts *

     疑問符は "未知のホスト名" を表します。


          # ホスト名が分からないホストからの接続を拒否する。
          hosts !?

     この指示子は必ずしも定義する必要はありません。 また、何度でも定義
     することが可能です。 設定ファイルに `hosts' 指示子が無くてもエラー
     にはなりませんが、どのクライアントもサーバにはアクセスできなくな
     ります。 いずれの `hosts' 指示子にもマッチしないホストからの接続要
     求は拒否されます。 複数の `hosts' にマッチする場合は、設定ファイ
     ルの先頭に最も近いものが採用されます。

     以下の例では、 `sub1.xxx.yyy.jp'
     ドメインに属するホストからの接続要求は拒否していますが、それ以外の
     `xxx.yyy.jp'
     ドメインに属するホストからの接続要求は許可しています。


          hosts !*.sub1.xxx.yyy.jp
          hosts *.xxx.yyy.jp

     この例では、指示子の順序は重要です。
     順序を引っくり返してしまうと、 `sub1.xxx.yyy.jp' を含め、
     `xxx.yyy.jp' ドメインに属するすべてのホストがサーバに接続できてし
     まいます。


          # 間違い!!!
          hosts *.xxx.yyy.jp
          hosts !*.sub1.xxx.yyy.jp

     ホスト名を比較する際、`ndtpd' は常にクライアントの正式ホスト名を
     使用します。 ホスト名は、クライアントのアドレスから DNS などの名前
     解決のサービスを利用して取得します。 別名は使用されませんので、注
     意して下さい。

     IPv6 アドレスおよび IPV6 アドレス/ネットマスクパターンを指定する
     ことも可能です。 IPv6 対応機能を有効にしてコンパイルされていない
     `ndtpd' は IPv4 クライアントとしか通信できませんが、設定ファイルに
     書かれた IPv6 アドレスを解釈することはできます。


          # `12ab:0:0:cd3/60' と `::1' からの接続を許可する。
          hosts ::1
          hosts 12ab:0:0:cd3/60

     `hosts' 指示子では、IPv4 アドレス (例 `192.168.1.1') とそれに対応
     する IPv4 射影 IPv6 アドレス (例 `::ffff:192.168.1.1') は等価にな
     ります。 つまり、 IPv4 クライアント `192.168.1.1' は `hosts' 指示子
     `::ffff:192.168.1.1' にマッチし、 IPv6 クライアント
     `::ffff:192.168.1.1' は `hosts' 指示子 `192.168.1.1' にマッチしま
     す。

`timeout'
     `timeout' 指示子では、交信が途絶えたクライアントとの接続を `ndtpd'
     が切断するまでの秒数を指定します。 指示子の値は、0 以上の整数でな
     くてはいけません。 この指示子は必ずしも定義する必要はありません。
     また、2 度以上定義することはできません。 無指定時の値は `900' (15
     分) です。 指示子の値を 0 に設定すると、時間切れによる切断は行いま
     せん。

`work-path'
     `work-path' 指示子では、`ndtpd' の作業用ディレクトリのパスを指定
     します (*note 作業用ディレクトリ: Working Directory.)。 指示子の値
     は、絶対パスでなくてはいけません。 `ndtpd' はこのディレクトリの下
     に作業用のファイルをいくつか作成します。 また、異常終了によってコ
     アファイルをダンプするときは、このディレクトリに作成します。 この
     指示子は必ずしも定義する必要はありません。 また、2 度以上定義する
     ことはできません。 NDTPD を `/usr/local' 以下にインストールし、か
     つ、マシン固有の更新されうるデータを置くディレクトリ
     (`localstatedir') を変更していなければ、無指定時の値は
     `/usr/local/var/ndtpd/' になります。

`max-hits'
     `max-hits' 指示子では、一回の検索で `ndtpd' が返すヒット数の上限
     を指定します。 `ndtpd' は、この指示子で指定された値と同じだけのヒ
     ット数を見つけた時点で、ただちに検索を中止します。 この指示子は必
     ずしも定義する必要はありません。 また、2 度以上定義することはでき
     ません。 無指定時の値は `50' です。 指示子の値を 0 に設定すると、
     無制限になります。

`max-text-size'
     `max-text-size' 指示子は、`ndtpd' がクライアントへの応答 1 回で返
     すテキストのバイト数の上限を指定します。 この指示子は必ずしも定義
     する必要はありません。 また、2 度以上定義することはできません。 無
     指定時の値は `32768' です。 指示子の値を 0 に設定すると、無制限に
     なります。

`syslog-facility'
     `syslog-facility' 指示子では、syslog のファシリティを指定します (
     例: `daemon', `local0' など)。 この指示子は必ずしも定義する必要は
     ありません。 また、 2 度以上定義することはできません。 無指定時は
     `daemon' を用います。 また、`ndtpd' が設定ファイルを読み込み終わる
     までは、`daemon' が用いられます。


File: ndtpd-ja.info,  Node: Group Directive,  Next: Book Group Directive,  Prev: Single Directive List,  Up: Configuration File

複合指示子の一般形
==================

   複合指示子 (指示命令) とは、記述が設定ファイル内の複数行に渡る指示子
です。 複合指示子の一般形は次の通りです。

     begin 複合指示子の名前
         副指示子の名前    副指示子の値
                  :
                  : (repeated)
                  :
     end

キーワード `begin' は、複合指示子の開始を表します。 `begin' は後ろに複
合指示子の名前を引数として取ります。 `begin' と複合指示子の名前は空
白かタブで区切り、両方とも同じ行の中に置きます。 キーワード `end' は、
複合指示子の終了を表します。 `end' は、単独で 1 行にして置きます。

   NDTPD バージョン 3.1.5 では、使用できる複合指示子の名前は `book' だ
けです。 それぞれの "副指示子" は、 `begin' と `end'
の行の間に置きます。 副指示子に関する記述の一般的な規則は、単独指示子と
変わりません (たとえば、 副指示子の名前と副指示子の値は空白かタブで区
切ることなど)。

   以下は、 `book' 複合指示子の記述例です。

     begin book
             name            EJDICT
             title           English Japanese Dictionary
             path            /mnt/cdrom
             hosts           127.0.0.1
             hosts           host.your.domain
     end


File: ndtpd-ja.info,  Node: Book Group Directive,  Next: Sample Configuration,  Prev: Group Directive,  Up: Configuration File

`book' 複合指示子
=================

   一つの `book' 複合指示子は一冊の CD-ROM 書籍に対応しますので、
CD-ROM 書籍一冊ごとにこの複合指示子を定義しなくてはいけません。 `book'
複合指示子の副指示子として、NDTPD が認識するものは次の通りです。

`name'
     `name' 副指示子では、その書籍の名前を指定します。 副指示子の値に用
     いることができるのは、英小文字 (`a'..`z')、 数字 (`0'..`9')、下線
     (`_')、ハイフン (`-') だけで、 長さは 14 文字までです。
     この名前は、書籍を識別するために使いますので、各書籍には異なる名前
     を付けなくてはいけません。 この副指示子は、それぞれの `book' 複合
     指示子に必須です。 また、1 つの `book' 複合指示子で 2 度以上定義す
     ることはできません。

`title'
     `title' 副指示子では、その書籍の題名を指定します。 副指示子の値に
     は、改行文字とナル文字 (`\0') を除く任意の文字を使って指定するこ
     とができますが、長さは 80 バイトまでです。 EUC (Extended Unix
     Code) を用いれば日本語の文字も使用可能です。 副指示子の値の中に空
     白やタブを用いることも可能で、これらは他の文字と同じく一文字とし
     て解釈されます。

     この副指示子は、それぞれの `book' 複合指示子に必須です。 また、1
     つの `book' 複合指示子で 2 度以上定義することはできません。

`path'
     `path' 副指示子では、その書籍の絶対パスを指定します。 パスはその書
     籍のトップディレクトリ、つまり `CATALOG' または `CATALOGS' ファイ
     ルの存在するディレクトリを指してしなくてはいけません。

     この副指示子は、それぞれの `book' 複合指示子に必須です。 また、1
     つの `book' 複合指示子で 2 度以上定義することはできません。

`appendix-path'
     `appendix-path' 副指示子では、その書籍に対応する appendix (付録)
     パッケージの絶対パスを指定します。 パスは appendix パッケージのト
     ップディレクトリ、つまり `CATALOG' または `CATALOGS' ファイルの存
     在するディレクトリを指してしなくてはいけません。

     この副指示子は、必ずしも定義する必要はありません。 また、 1 つの
     `book' 複合指示子で 2 度以上定義することはできません。 書籍を使う
     上で、appendix パッケージは必須ではありませんが、ないと外字が識別
     不可能になるため、読みづらいかも知れません。

`max-clients'
     `max-clients'
     副指示子には、この書籍を同時にいくつのクライアントが使うことができ
     るのかを指定します。 副指示子の値には、0 以上の整数を指定します。
     この副指示子は、必ずしも定義する必要はありません。 また、 1 つの
     `book' 複合指示子で 2 度以上定義することはできません。 無指定時の
     値は `1' です。 0 を指定すると、無制限になります。

`hosts'
     `hosts'
     副指示子には、この書籍にどのホストがアクセスできて、どのホストがで
     きないのかを指定します。 この副指示子は、必ずしも定義する必要はあ
     りません。 また、1 つの `book' 複合指示子で何度でも定義することが
     可能です。 `book' 複合指示子が `hosts' 副指示子を持たなくてもエラ
     ーにはなりませんが、その書籍はどのクライアントからもアクセスでき
     ません。

     この副指示子の表記方法は、単独指示子の `hosts' と同じです。

`alias-eiwa'
`alias-waei'
`alias-kojien'
     大抵の NDTP クライアントは、サーバと接続する度に書籍の一覧をサーバ
     から取得しますが、古い NDTP クライアントにはこれができません。 古
     い NDTP クライアントは、`eiwa'、`waei'、`kojien' という 3 つの決
     まった書籍名しか理解しません。 `eiwa' という別名は英和辞典用、
     `waei' は和英辞典用、 `kojien' は日本語の国語辞典用です。 NDTP サ
     ーバがこれら 3 つの書籍名を持った書籍を提供していることを、古い
     NDTP クライアントは前提としていますが、この規則はすでに時代遅れと
     なっています。

     このようなクライアントのために、この副指示子を用いることで `eiwa',
     `waei', and `kojien' という書籍名を別名 (alias) として定義し、正式
     な書籍名と対応させることができます。 副指示子の値には、その書籍に
     含まれる副本 (subbook) のディレクトリ名を記します。

     `ebinfo' コマンドを用いると、あなたの所有している書籍にどのような
     副本が含まれているのかを知ることができます。 NDTPD を
     `/usr/local' 以下にインストールし、かつ、一般ユーザが実行しうるコ
     マンドを置くディレクトリ (`bindir') を変更していなければ、
     `ebinfo' コマンドは `/usr/local/bin' にインストールされています。
     以下は `ebinfo' の実行例です。

          % ebinfo /mnt/cdrom
          ディスクの形式: EB/EBG/EBXA/EBXA-C/S-EBXA
          文字コード: JIS X 0208
          副本の数: 2
          副本  1:
            題名: 新英和辞典（第三版）
            ディレクトリ: ejdict
            検索方式: 前方一致後方一致条件メニュー
            フォントの大きさ: 16 24 30 48
            半角フォントの文字: 0xa121 -- 0xa24e
            全角フォントの文字: 0xa321 -- 0xa27e
          副本  2:
            題名: この書籍の使い方
            ディレクトリ: howto
            検索方式: 前方一致後方一致条件メニュー
            フォントの大きさ: 16 24 30 48
            半角フォントの文字:
            全角フォントの文字: 0xa321 -- 0xa27e

     `ebinfo' は `ndtpd' の設定ファイルは読み込まないので、その点はご
     注意下さい。 CD-ROM 書籍のトップディレクトリをコマンド行の引数で明
     示的に指定する必要があります (`ebinfo' についての詳細は *note
     `ebinfo' の実行: (ebinfo-ja)Invoking ebinfo.)。

     この例では、2 つの副本が書籍には含まれており、それらのディレクトリ
     名は `ejdict' と `howto' だということが分かります。 そこで、 `eiwa'
     という別名を次のように定義することができます。


          alias-eiwa    ejdict

     複数の別名を同一の副本に対応させることは可能ですが、それぞれの別名
     は設定ファイル内で一回しか定義できません。 これらの副指示子は、必
     ずしも定義する必要はありません。


File: ndtpd-ja.info,  Node: Sample Configuration,  Prev: Book Group Directive,  Up: Configuration File

設定ファイルの例
================

   NDTPD を `/usr/local' 以下にインストールし、かつ、マシン固有の読み
込み専用のデータを置くディレクトリ (`sysconfdir') の位置を変更していな
ければ、この設定ファイルのサンプルは `/usr/local/etc/ndtpd.conf.sample'
にインストールされています。

     ######################################################################
     # NDTPD の設定ファイルのサンプル
     # (このファイルを `ndtpd.conf' にコピーして、編集してください)
     ######################################################################
     
     ### `ndtpd' が見張るポート番号
     ### (無指定の場合: ndtp)
     # ndtp-port	ndtp
     
     ### `ebhttpd' が見張るポート番号
     ### (無指定の場合: http)
     # http-port	http
     
     ### サーバのプロセスの所有ユーザ
     ### (無指定の場合: なし)
     user		ndtpuser
     
     ### サーバのプロセスのグループ
     ### (無指定の場合: なし)
     group		ndtpgrp
     
     ### サーバに同時に接続できるクライアントの数
     ### (無指定の場合: 1)
     # max-clients	1
     
     ### サーバに接続できるホスト、できないホスト
     ### (無指定の場合: なし)
     hosts		127.0.0.1
     hosts		::1
     hosts		!?
     hosts		host.your.domain
     
     ### サーバが交信の途絶えたコネクションを切るまでの時間
     ### (無指定の場合: 900)
     # timeout		900
     
     ### 作業用ディレクトリのパス
     ### サーバを起動する前に、このディレクトリを作り、サーバプロセスが
     ### 書き込めるようにしておいて下さい。
     ### (無指定の場合: /usr/local/var/ndtpd)
     # work-path	/usr/local/var/ndtpd
     
     ### 一回の検索で、サーバが返す、ヒットしたエントリの最大個数
     ### (無指定の場合: 50)
     # max-hits	50
     
     ### クライアントへの一回の応答で、サーバが返すテキストの最大サイズ
     ### (default: 32768)
     # max-text-size		32768
     
     ### syslog のファシリティ
     ### (無指定の場合: daemon)
     syslog-facility	local0
     
     ###
     ### 書籍のエントリ
     ###
     begin book
         ### 書籍名
         ### (必須)
         name		JITENBAN97
     
         ### 書籍の題名
         ### (必須)
         title		Jitenban 97
     
         ### 書籍のトップディレクトリ
         ### (必須)
         path		/cdrom
     
         ### appendix (付録) パッケージのトップディレクトリ
         ### (無指定の場合: なし)
         appendix-path	/usr/local/share/eb/appendix/jitenban97-2.1
     
         ### 同時にアクセスできるクライアントの数
         ### (無指定の場合: 1)
         max-clients		1
     
         ### この書籍を利用できるホスト、できないホスト
         ### (無指定の場合: なし)
         hosts		127.0.0.1
         hosts		::1
         hosts		!?
         hosts		host.your.domain
     
         ### 別名の定義
         ### (無指定の場合: なし)
         alias-eiwa		CHUJITEN
         alias-waei		CHUJITEN
         alias-kojien	IWAKOKU
     end
     
     ### もし、NDTPD を介して読みたい CD-ROM 書籍が他にもあるなら、`book'
     ### 複合指示子  (`begin book' から `end' の間の行) を追加し
     ### て下さい。`book' 複合指示子は、書籍一冊毎に必要です。


File: ndtpd-ja.info,  Node: Configuration Checker,  Next: Setup Your Environment,  Prev: Configuration File,  Up: Top

設定ファイルのチェックコマンド
******************************

   編集し終えた設定ファイルをチェックするには、 `ndtpcheck'
というチェックコマンドを使うと良いでしょう。 NDTPD を `/usr/local' 以下
にインストールし、かつ、システム管理用のコマンドを置くディレクトリ
(`sbindir') の位置を変更していなければ、 `ndtpcheck' は
`/usr/local/sbin' にインストールされています。

* Menu:

* Invoking ndtpcheck::          `ndtpcheck' の実行
* ndtpcheck Options::           `ndtpcheck' のオプション


File: ndtpd-ja.info,  Node: Invoking ndtpcheck,  Next: ndtpcheck Options,  Prev: Configuration Checker,  Up: Configuration Checker

`ndtpcheck' の実行
==================

   `ndtpcheck' コマンドは、`ndtpd' と同じ要領で設定ファイルを読み込ん
で、チェックします。 `ndtpcheck' コマンドの一般的な起動方法は次の通りで
す。

     % /usr/local/sbin/ndtpcheck

ただし、NDTPD を `/usr/local' 以下にインストールし、かつ、システム管理
用のコマンドを置くディレクトリ (`sbindir') の位置を変更していないと仮
定しています。

   記述の誤りが発見されると、`ndtpcheck' は標準エラー出力に以下のよう
なメッセージを出力します。

     /usr/local/etc/ndtpd.conf:12: unknown user: noboy
     configuration failure


File: ndtpd-ja.info,  Node: ndtpcheck Options,  Prev: Invoking ndtpcheck,  Up: Configuration Checker

`ndtpcheck' のオプション
========================

   `ndtpcheck' コマンドは、伝統的な一文字オプション名と覚えやすい長い
オプション名の両方を扱うことができます。 長いオプション名を表すには、
`-' ではなく `--' を用います。 オプション名が一意に決まる範囲内で、名前
の後方部分を省略することができます。

   `ndtpcheck' コマンドは以下に挙げたオプションを解釈することができま
す。

`-c ファイル'
`--configuration-file ファイル'
     設定ファイルを指定します。 無指定時のファイル名は、ヘルプメッセー
     ジの中に記されています。

`-d'
`--debug'
`--verbose'
     デバッグ用の情報を標準エラー出力に出力します。
     デバッグ用の情報は、設定ファイルの各行がどのように解釈されるのかを
     示してくれます。

`-h'
`--help'
     ヘルプメッセージを標準出力に出力して、終了します。

`-v'
`--version'
     バージョン番号を標準出力に出力して、終了します。


File: ndtpd-ja.info,  Node: Setup Your Environment,  Next: Start the Server,  Prev: Configuration Checker,  Up: Top

環境設定
********

   サーバ周辺のシステムの環境を設定をする必要があるかも知れません。 設
定には、おそらくスーパーユーザの権限が必要になるでしょう。

* Menu:

* Services::                    `services' ファイルの設定
* Syslog::                      `syslog.conf' ファイルの設定
* Working Directory::           NDTPD の作業用ディレクトリ
* Mount CD-ROM Books::          CD-ROM 書籍のマウント
* Appendix Package::            appendix パッケージの用意
* Install NDTP Client::         NDTP クライアントのインストール


File: ndtpd-ja.info,  Node: Services,  Next: Syslog,  Prev: Setup Your Environment,  Up: Setup Your Environment

`services' ファイル
===================

   サービス名 `ndtp' があなたのシステムの `services' ファイルに無けれ
ば、追加しなくてはなりません (大抵の場合 `/etc/services')。 もし、あな
たのホストが NIS クライアントならば、代わりに NIS サーバ上にある NIS
のマップを修正しなくてはなりません。

   もし、次の行が無ければ足します。

     ndtp          2010/tcp

次のように、システムの `services' ファイルにはすでに別のサービス名で
`2010/tcp' というエントリが入っているかも知れません。

     search        2010/tcp

この場合は、 `ndtp'
というサービス名を別名としてその行に追加して下さい。

     search        2010/tcp        ndtp

(詳しくは、あなたのシステムのマニュアルをご覧下さい。)


File: ndtpd-ja.info,  Node: Syslog,  Next: Working Directory,  Prev: Services,  Up: Setup Your Environment

`syslog.conf' ファイル
======================

   `ndtpd' は syslog を使ってログを残します。 `syslogd' の設定ファイル
(大抵の場合 `/etc/syslog.conf') に、 次のような行を追加して下さい。 一
般にフィールドの区切りにはタブしか許されていませんので、空白を使わない
ように注意して下さい。

     local0.info   /usr/local/var/ndtpd/log/ndtpd.log

`ndtpd' が使用する syslog のファシリティは、 `ndtpd' の設定ファイルの
`syslog-facility' 指示子で決まることに留意して下さい (*note
`syslog-facility': Single Directive List.)。

   もしログファイルが存在しなければ、空のファイルを作成します。

     % touch /usr/local/var/ndtpd/log/ndtpd.log
     % chmod 644 /usr/local/var/ndtpd/log/ndtpd.log

現在走行している `syslogd' プロセスの PID を調べます。

     % ps axuww | grep syslogd

(詳しくは、あなたのシステムのマニュアルをご覧下さい。)
`syslogd' が走っているならば、次のような行が見つかるはずです。

     root        63  0.0  1.1   188  316  ??  Is   10:04PM    0:00.16 syslogd

ハングアップシグナル (`SIGHUP') を `syslogd' に送ると、 `syslogd' は
`syslog.conf' を読み込み直します。

     % kill -HUP 63

あなたのシステムに `logger' コマンドがあれば、次のようにして `syslogd'
にテストメッセージを送ることができます。

     % logger -p local0.info "test message"


File: ndtpd-ja.info,  Node: Working Directory,  Next: Mount CD-ROM Books,  Prev: Syslog,  Up: Setup Your Environment

作業用ディレクトリ
==================

   `ndtpd' は作業用のディレクトリの下にいくつかのファイルを作成します。
このディレクトリは、設定ファイルの中の `work-path' 指示子で指定するこ
とができます (*note `work-path': Single Directive List.)。

   このディレクトリを作り、`ndtpd' プロセスとスーパーユーザだけが書き
込めるようにしておいて下さい。

     # mkdir /usr/local/var/ndtpd
     # chown ndtpuser /usr/local/var/ndtpd
     # chmod 755 /usr/local/var/ndtpd

(あなたのシステムでは `ndtpd' プロセスを所有するユーザが `ndtpuser' で
あると仮定しています。)

   ただし、`ndtpd' プロセスの所有ユーザとグループは、設定ファイルの中
の `user', `group' 指示子でそれぞれ決まりますので、注意して下さい
(*note `user': Single Directive List., および *note `group': Single
Directive List.)。


File: ndtpd-ja.info,  Node: Mount CD-ROM Books,  Next: Appendix Package,  Prev: Working Directory,  Up: Setup Your Environment

CD-ROM 書籍のマウント
=====================

   先に述べたように、 CD-ROM 書籍自体は ISO 9660 形式に従っています。
CD-ROM 書籍は、他の ISO 9660
形式のディスクと同じ方法でマウントすることができます。 もし、ISO 9660
の CD-ROM ディスクのマウント方法が分からなければ、あなたのシステムのマ
ニュアルを調べて下さい。

   `ndtpd' は `ebzip' で圧縮された辞書をアクセスすることができます
(*note 圧縮: (ebzip-ja)Compression.)。


File: ndtpd-ja.info,  Node: Appendix Package,  Next: Install NDTP Client,  Prev: Mount CD-ROM Books,  Up: Setup Your Environment

appendix パッケージの用意
=========================

   "appendix" ("付録") とは CD-ROM 書籍の補助データのことです。
appendix は CD-ROM 書籍の出版社から提供されているものではなく、 EB ライ
ブラリに固有のものです。

   appendix は以下のデータを CD-ROM 書籍に対して提供します。

本文の区切りコード
     あなたが NDTPD を使って CD-ROM 辞書の中のある単語を引く際、その単
     語の説明が終了する箇所で、NDTPD が本文の出力を止めることをあなた
     は期待するのではないでしょうか。 しかし、NDTPD はそのような動作を
     保証することができません。 なぜなら、CD-ROM 書籍の本文には、項目の
     終わりを示す印が存在しないからです。

     幸いにも、多くの CD-ROM
     書籍には、項目の終わりを示す印の代替として使える、"区切りコード"
     ("stop code") というものを持っています。 通常、 NDTPD (正確には EB
     ライブラリ) はこの区切りコードを自動的に推測するようになっている
     のですが、時々誤った区切りコードを導き出すことがあります。
     appendix の区切りコードは、その書籍の正しい区切りコードを NDTPD に
     教えてやるために用います。

外字の代替文字列
     多くの CD-ROM 書籍は、外字 (独自に定義した文字) を持っており、本文
     中でその外字を使っています。 CD-ROM 書籍では外字のビットマップフ
     ォントを用意しており、 NDTP クライアントアプリケーションが外字を出
     力するには、そのフォントを描画しなくてはなりません。

     appendix では、外字の "代替文字列" ("alternation text") を定義する
     ことができます。 アプリケーションは、ビットマップフォントを描画す
     る代わりに、その代替文字列を出力することにしても良いでしょう。

   appendix パッケージのレイアウトは CD-ROM
書籍のものとよく似ています。 トップディレクトリには `CATALOG' もしくは
`CATALOGS' ファイルが存在し、各副本のデータは対応するサブディレクトリに
配置されています。 appendx を使うには、設定ファイルの中の、複合指示子
`book' の `appendix-path' 副指示子で指定します (*note `appendix-path':
Group Directive.)。

   EB ライブラリの公式な FTP サイト
(<ftp://ftp.sra.co.jp/pub/misc/eb/appendix/>) に、appendix パッケージが
いくつか置いてあります。 ここに載っていない CD-ROM 書籍用の appendix パ
ッケージを作成する場合は、 `ebappendix' コマンドを使いましょう。
appendix のデータファイルの整形を行うことができます。


File: ndtpd-ja.info,  Node: Install NDTP Client,  Prev: Appendix Package,  Up: Setup Your Environment

NDTP クライアントのインストール
===============================

   `ndtpd' は NDTP サーバですので、CD-ROM 書籍を読むためにはさらにクラ
イアントも必要です。 もし、まだクライアントのソフトウェアをインストール
していないのであれば、インストールして下さい。 NDTPD の配布物には、
NDTP クライアントは含まれていません。

   Web ページ <http://www.sra.co.jp/m-kasahr/ndtpd/related.html> に
`ndtpd' と通信可能なクライアントソフトウェアの一覧があります。


File: ndtpd-ja.info,  Node: Start the Server,  Next: Terminate and Restart,  Prev: Setup Your Environment,  Up: Top

サーバの起動
************

   設定ファイルの編集を終えたならば、 `ndtpd' を起動することができます。
`ndtpd' は、スタンドアロンのデーモン、あるいは `inetd' の子プロセスと
して起動することができます。 指定がなければ、スタンドアロンのデーモンと
して起動するようになっています。

   サーバへコネクションが頻繁に来ないなら、メモリの消費を抑えるために
`ndtpd' を `inetd' の子プロセスとして起動する方が良いでしょう。

   しかし、`inetd' によって起動される度に、`ndtpd' は設定ファイルを読
み込み、初期化のために CD-ROM 書籍からデータを部分的に読み込みます。 コ
ネクションが頻繁に来るようなら、`ndtpd' をスタンドアロンのデーモンとし
て起動した方が良いでしょう。

* Menu:

* Run as Standalone::           `ndtpd' をスタンドアロンで起動
* Run as a Child of inetd::     `ndtpd' を inetd 経由で起動
* Run as a Child of xinetd::    `ndtpd' を xinetd 経由で起動
* Checking with telnet::        `telnet' を用いた確認
* ndtpd Options::               `ndtpd' のオプション


File: ndtpd-ja.info,  Node: Run as Standalone,  Next: Run as a Child of inetd,  Prev: Start the Server,  Up: Start the Server

スタンドアロンのデーモンとして起動
==================================

   `ndtpd' をスタンドアロンのデーモンとして起動するには、次のようにコ
マンドを実行して下さい。スーパーユーザの権限が必要かも知れません。

     % /usr/local/sbin/ndtpd

NDTPD を `/usr/local' 以下にインストールし、かつ、システム管理用のコマ
ンドを置くディレクトリ (`sbindir') の位置を変更していなければ、 `ndtpd'
は `/usr/local/sbin' にインストールされています。


File: ndtpd-ja.info,  Node: Run as a Child of inetd,  Next: Run as a Child of xinetd,  Prev: Run as Standalone,  Up: Start the Server

`inetd' の子プロセスとして起動
==============================

   `ndtpd' を `inetd' の子プロセスとして起動には、次の手順が必要になり
ます。 次のエントリを `inetd.conf' ファイル (大抵の場合
`/etc/inetd.conf') に加えます。 `--inetd' (または `-i') オプションを足
すのを忘れないようにして下さい。

     ndtp  stream  tcp  nowait  root  /usr/local/sbin/ndtpd ndtpd --inetd

(ただし、NDTPD を `/usr/local' 以下にインストールし、かつ、システム管
理用のコマンドを置くディレクトリ (`sbindir') の位置を変更していないと
仮定しています。)

   走行している `inetd' プロセスの PID を探し出します。 BSD 系のシステ
ムでは、次のようにします。

     % ps axuww | grep inetd

SYSV 系のシステムなら、次のようにします。

     % ps -ef | grep inetd

(詳しくは、あなたのシステムのマニュアルをご覧下さい。)
`inetd' が走っているならば、次のような行が見つかるはずです。

     root        79  0.0  1.1   224  340  ??  Is   10:04PM    0:00.29 inetd

見つかったならば、ハングアップシグナル (`SIGHUP') を `inetd'
に送ります。 おそらく、スーパーユーザの権限が必要です。

     % kill -HUP 79

