next up previous contents
Next: 4.3.1.4 マップ中での変数置換 Up: 4.3.1 オートマウントの設定 Previous: 4.3.1.2 ダイレクトマップ

4.3.1.3 インダイレクトマップ

インダイレクトマップは、マスターマップで指定されたあるディレクトリ以下の サブディレクトリのマウントについての指定を行ないます。 例えば、マスターマップが先の例のようだったとして、 /home/net以下のマウントを制御するauto_homeファイルが 次のように記述されていたとしましょう。

staff1  -rw newkamui:/home/staff
work    -rw nosyappu:/export/work

このとき、クライアントからの/home/net/staff1へのアクセスは、サーバnewkamuiの /home/staffへアクセスすることになり、/home/net/workで作業すれば、 実際にはサーバのnosyappuの/export/workディレクトリで作業することになります。 このようにすれば、複数のユーザが一時的な作業に使用可能な領域を確保するのに 便利でしょう。なお、第2番目の欄はここでも省略可能なマウント時オプションです。

これだけならば話は簡単ですが、実はインダイレクトマップに関しては もう少し高度な設定ができます。 まず、マウントポイントに対応するサブディレクトリが第1欄に書かれていいますが、 このマップの同じ行の中で「&」という記号を用いると、 この記号はこのサブディレクトリの名前に置換されます。 ですから、上の例の場合、2番めの行は、次のように書いても同じです。

work    -rw nosyappu:/export/&

これだけでは、確かにほんの数文字記述を省略できましたが、特にありがたいとは いえませんね。実はもう一つ、第1欄のサブディレクトリ名にワイルドカード 「*」を指定することができます。 これは、/home/net以下へのアクセス要求で、 この行以前の記述に当てはまらなかったもの全てに該当することになります。 典型的には、次のようなエントリをauto_home中に用意しておけば

*       &:/home/&

任意のNFSサーバserverに対し、/home/net/server以下へのアクセスを行なえば serverの/home/serverディレクトリが使用されることになります。しかも、 NFSサーバを何台に増やしてもクライアントの設定を変更する必要がありません。 各ユーザのホームディレクトリをそれぞれのNFSサーバ上の、「/home/サー バ名」という ディレクトリ以下に作成しておけば、どのクライアントからログインしても 自分のホームディレクトリにアクセスできることになります。 実際にある程度の規模のネットワーク環境でUNIXワークステーションを使用する場合、 一般ユーザにとってはこのような設定がされていなければ使用するマシンが 変わる毎に自分のファイルをあるマシンから別のマシンへとコピーしなければならず、 混乱のもとになるばかりでなく、ディスク資源の無駄にもなり、 実用に耐えないかもしれません。



Noriyo Kanayama