manpath

Autres langues

Langue: ja

Autres versions - même langue

Version: 2010-02-16 (fedora - 01/12/10)

Autres sections - même nom

Section: 5 (Format de fichier)

名前

manpath - /etc/man_db.conf ファイルのフォーマット

説明

manpath 設定ファイルは、ユーザの manpath を実行時に評価したり、 `global' として扱うマニュアルページ階層 (manpath) を指示したり、 cat ファイルの保管用ディレクトリを指定するためにマニュアルページ ユーティリティにより使用される。

環境変数 $MANPATH がすでに設定されている場合には、 /etc/man_db.conf に含まれている 情報はそれを上書きしない。

フォーマット

現在のところ、以下のフィールドタイプが認識される。
# comment
空行や # で始まる行はコメントとみなされ、無視される。
MANDATORY_MANPATH manpath_element
この形式の行は、自動的に生成される $MANPATH には必ず含まれているべき manpath を示す。 /usr/man などが典型である。
MANPATH_MAP path_element manpath_element
この形式の行は $PATH から $MANPATH へのマッピングを設定する。それぞれの path_element がユーザの $PATH に含まれていると、 manpath_element が $MANPATH に追加される。
MANDB_MAP manpath_element [ catpath_element ]
この形式の行は、どの manpath を `global' として扱い、またそれらの cat ページをどこに保存するかを指定する (catpath_element は省略可)。 この形式のフィールドは、 man が setuid されたプログラムの場合は特に重要である。なぜなら、これは どの階層を setuid されたユーザー権限でアクセスし、どれを起動ユーザーの 権限でアクセスするかを指定することになるからである。

`global' なマニュアルページの階層は、通常 /usr 以下に保管されている。例えば /usr/man, /usr/local/man, /usr/X11R6/man などがこれにあたる。

特定の manpath_element からの cat ページを保管したくない場合や、従来の位置に保管したい場合には、 catpath_element は省略する。

従来用いられていた cat ファイルの保管場所 (/usr/man/cat?/ など) は、 マニュアルページの階層がリードオンリーでマウントされている場合には 使用することができなかった。このため、保管場所として 任意のディレクトリ階層を指定することが可能になっている (もちろん指定した ディレクトリは有効なものでなければならない)。 Linux FSSTND に従う場合には、 キーワード `FSSTND' を実際のディレクトリ名の代わりに用いることができる。

残念ながら、 `global' な man のツリーパスは すべて 指定しなければならない。 他のシステムパス ( /usr/man/sun のようなもの) やすべての NLS ロケール パス ( /usr/man/de_DE.88591 のようなもの) も、それぞれすべて指定する必要がある。

情報は書かれた順に一行ずつ評価されるので、他の階層のサブツリーとなって いるような manpath は先に書かなければならない。そうしないとマッチが 正しく行われない可能性がある。例えば /usr/man/de_DE.88591/usr/man より先に来なければならない。

バグ

上記のルールが正しく守られない場合には、マニュアルページャーの機能は 正しく動作しない。これらのルールは不必要に難しい。