AMD(8)

名称
amd - 自動的にファイルシステムをマウントする

書式
amd -H
amd [ -F conf_file ]
amd [ -nprvHS ] [ -a mount_point ] [ -c duration ] [ -d domain ] [ -k kernel-arch ] [ -l logfile ] [ -o op_sys_ver ] [ -t interval.interval ] [ -w interval ] [ -x log-option ] [ -y YP-domain ] [ -C cluster-name ] [ -D option ] [ -F conf_file ] [ -O op_sys_name ] [ -T tag ] [ directory mapname [ -map-options ] ] ...

解説
amd は、ファイルシステムがアクセスされたときに自動的にそのファイルシステムを マウントするデーモンです。マウントされたファイルシステムは、 アクセスがなければ自動的にアンマウントされます。

amd は、自分自身を NFS サーバとして、指定された directory に結び付けます。指定したディレクトリ内の lookup は amd が行います。 amd は、 mapname で定義されたマップを使って、どのように lookup を解決するかを決定します。 一般に mapname は、ホスト名やファイルシステムの情報、マウントオプションから構成されます。

上記の最初の形式では、 amd は簡単なヘルプを表示します。 2 番目の形式では amd はコンフィギュレーションパラメータをファイルから読みますが、 -F が指定されるとファイル conf_file から読み込み、オプションが指定されなかった場合にはデフォルトの /etc/amd.conf から読み込みます。最後の形式については後で述べます。

オプション

-a temporary-directory
    マウントポイントの代替位置を指定します。 実際にマウントされる位置はこちらです。 デフォルトは /a です。

-c duration
    ディレクトリが使われないときに、探索に使われた名前をキャッシュして 保持する秒数を指定します。デフォルトは 5 分です。

-d domain
    ローカルドメイン名を指定します。もしこのオプションが与えられなければ、 ドメイン名はホスト名から決定されます。

-k kernel-arch
    カーネルアーキテクチャを指定します。これは単に ${karch} セレクタを 設定するだけです。

-l logfile
    マウントおよびアンマウントのイベントを記録するログファイルを指定します。 もし、 logfile が syslog という文字列なら、ログメッセージは syslog(3) によってシステムログデーモンに送られます。 デフォルトでは、syslog のファシリティに LOG_DAEMON を使います。 もしこれを変更したい場合には、ログファイル名の後ろに コロン 1 個で区切って名前を書いてください。たとえば、 logfile の文字列が syslog:local7 であれば、 amd は LOG_LOCAL7 のファシリティ (これがシステムにあれば) にした syslog(3) を使ってログメッセージを残します。

-n  ホスト名を正規化します。${rhost} で参照される名前は、 使われる前にホストデータベースと比較して正規化されます。 これは、エイリアスを ``公式な'' ホスト名に変換する効果があります。

-o op_sys_name
    コンパイル時にオペレーティングシステムのバージョン番号が 内部に組み込まれますが、これを上書きします。 下位互換を保つためには組み込まれたバージョン番号では望ましくない という場合に有効です。 例えば、組み込み済みのバージョン番号が ``2.5.1'' である場合、 これを ``5.5.1'' と上書きすれば、後者で記録されている古いマップが使えるようになります。

-p  PID を表示します。 amd のプロセス ID が標準出力に出力されるので、これをファイルにセーブする ことができるようになります。

-r  現存するマウントをリスタートします。 amd はマウントファイルテーブルをスキャンして、 どのファイルシステムが現在マウントされているかを判断します。 ファイルシステムが自動マウントされたものであれば、 amd はそれを 継承 します。

-t interval.interval
    NFS/RPC/UDP のリトライの間隔を、10 分の 1 秒単位で指定します。 初期値は 0.8 秒です。2 番目の値は再送カウンタを変更します。 どちらか一方か、両方の値が設定されていなければ、適当な初期値が設定されます。

-v  バージョンの V です。標準出力にバージョン情報と設定情報を表示します。

-w interval
    キャッシュする時間を超えたファイルシステムのマウントを解除する時間を 秒単位で指定します。初期値は 2 分です。

-x options
    実行時に何をログに記録するかを指定します。 オプションには、fatal, error, user, warn, info, map, stats, all から選んだものをカンマで区切って指定します。

-y domain
    NIS マップをとってくる際に用いる NIS ドメインを指定します。 初期値はシステムのドメイン名です。このオプションは、NIS を動かしていないときには無視されます。

-C cluster-name
    HP-UX で使うクラスタ名を指定します。

-D option
    様々あるデバッグオプションから選択します。オプションの頭に no をつけると、そのオプションの逆の影響を与えます。 オプションは並べて指定することができます。もっとも役に立つのは all です。 -D はデバッグのときにだけ使うものであるため、ここでは他のオプションについては 説明しません。サポートされているオプションは -v オプションで表示されますが、 詳細はソースコードに記述されています。

-F conf_file
    amd が使用するコンフィギュレーションファイルを指定します。このファイルの フォーマットに関する記述は amd.conf(5) を参照して下さい。このコンフィギュレーションファイルは、 コマンドライン上でたくさんオプションをタイプして指定する代りとして 利用できます。 amd.conf ファイルには、 amd が持っている全てのコマンドラインオプション命令を入れることができ、 コンフィギュレーションファイルを使ってでしか指定できないオプションも さらにたくさんあります。 このオプションで指定されたコンフィギュレーションファイルは、 このオプションのコマンドライン上の位置に関係なく、 他の全てのオプションが処理された後で処理されます。

-H  ヘルプと使用法が出力されます。

-O op_sys_name
    コンパイルした時点で内部に組み込み済みのオペレーティングシステムの名前を 上書きします。下位互換を保つためには組み込まれた名前では望ましくない という場合に有効です。 例えば、組み込み済みの名前が ``sunos5'' である場合、これを ``sos5'' と上書きすれば、後者で記録されている古いマップが使えるようになります。

-S  amd の実行可能ページをメモリにロックしません。 amd のパフォーマンスを上げるため、 plock(3) をサポートするシステムでは amd プロセスをメモリにロックすることができます。 これを行うと、場合によってはオペレーティングシステムが amd プロセスを スケジュールしたりページアウトさせたりスワップさせたりする可能性が 減ります。これにより、 amd プロセス自身が使用するメモリを確保する時のコストの関係で、 結果として amd のパフォーマンスが向上しやすくなります。 もしこの動作を望まないならば、 -S オプションを使ってください。

-T tag
    amd.conf(5) で使用するタグを指定します。 tag でタグ付けされた全マップエントリが処理されます。 タグ付けされていないマップは常に処理されます。 tag 以外のタグを持つマップエントリは処理されません。

関連ファイル
/a  動的にファイルシステムがマウントされるディレクトリ
/etc/amd.conf
    デフォルトのコンフィギュレーションファイル

注意
マウントマップを作成する場合には注意が必要です。

NFS ファイルシステム上のシンボリックリンクは、信じられないほど非効率的です。 NFS の実装のほとんどが、書込みはカーネル内でキャッシュされず、 lookuppn による変換でシンボリックリンクに出会うたびに NFS サーバに対して RPC コールを行います。キャッシュをどこかに加えることによって、 リアルタイム性能がかなりよくなるはずです。 オートマウンタをうまく実装して、オートマウンタでシンボリックリンクの 置き換えを行えば、リアルタイム性能が大きく向上するでしょうが、 プロセスのコンテキストスイッチがたくさん起きます。

amd のすべての機能を駆使できれば非常に便利ですが、 それにはかなりの想像力が必要になります。

関連項目
amd.conf(5), amq(8), domainname(1), hostname(1), automount(8), mount(8), umount(8), mtab(5), syslog(3).

Amd - The 4.4 BSD Automounter

作者
Jan-Simon Pendry <jsp@doc.ic.ac.uk>, Department of Computing, Imperial College, London, UK.

Erez Zadok <ezk@cs.columbia.edu>, Department of Computer Science, Columbia University, New York, USA.

am-utils に対する上記以外の作者や貢献者は、am-utils と一緒に配布されている AUTHORS ファイルに書かれています。