Solaris ネーミングの管理

fncreate_fs を使ってファイルコンテキストを作成する

fncreate_fs コマンドにより、組織やサイト用にファイルコンテキストが作成できます。fncreate コマンドによって作成されたホストやユーザーのためのデフォルトのファイルコンテキストを無効にするために使用されることもあります。

fncreate_fs コマンドの使用には、以下のような 2 つの方法があります。

fncreate_fs の 2 つの方法には、以下のような構文があります。

fncreate_fs [-v] [-r] -f  file   composite_name 
fncreate_fs [-v] [-r]   composite_name [options] [  location...]
表 24-1 fncreate_fs コマンドのオプション

オプション 

説明 

composite_name

ファイルコンテキストの複合名 

-f file

file という名前の入力ファイルを使用する

options

マウントのオプション 

location

マウントする位置 

-v

詳細出力に設定。作成および修正されるコンテキストに関する情報を表示 

-r

composite_name で名前付きコンテキスト、およびそのサブコンテキストのすべてのバインディングを、入力で指定したものだけで置き換える。これは、コンテキスト (およびそのサブコンテキスト) を削除し、このオプションなしで、fncreate_fs を実行するのと同じ。-r オプションは、注意して使用する必要がある

fncreate_fs コマンドは、FNS コンテキスト、および onc_fn_fs リファレンスタイプのバインディングを操作します。これは、onc_fn_fs_mount タイプのアドレスを使って、それぞれのリモートのマウント先を表わします。このタイプのアドレスに関連するデータは、XDR で符号化された 1 つの文字列で示した、対応するマウントのオプションやマウント先になっています。

入力ファイルを使って、ファイルコンテキストを作成する

入力ファイルには、composite_name のコンテキストでバインドされる名前や値が入っています。この形式は、間接自動マウントマップの形式に基づいてはいますが、全く同じではありません。入力ファイルには、以下のような形式のエントリが 1 つあるいは複数含まれています。

name [options] [location...]

各エントリについて、マウントの位置や対応するマウントのオプションのリファレンスは、composite_name/name に割り当てられます。

optionslocation の両方が省略されると、リファレンスは composite_name/name にバインドされません。既存のリファレンスもすべてバインドされません。

たとえば、kuanda のファイルシステムを図 21-4 に示すように、ホスト altair からディレクトリ /export/home/kuanda に NFS マウントするとしましょう。コマンドは以下のように実行されます。

% fncreate_fs -f infile user/kuanda/fs  

ここでは、以下を含む infile を使用します。

. altair:/export/home/kuanda

図 21-5 に示されるような、複数のサーバーに分散された複雑なファイルシステムを設定する場合、以下のコマンドを実行します。

% fncreate_fs -f infile org/sales/fs

ここでは、以下を含む infile を使用します。

tools/db	 	altair:/export/db
project		 	altair:/export/proj 
project/lib             altair:/export/lib
project/src	 	deneb:/export/src  

プロジェクトやそのサブコンテキストの srclib の NFS マウントを、読み取り専用に変更する場合、infile を以下のように変更します。

tools/db 	 			svr1:/export/db 
project	      -ro			svr1:/export/projproject/lib altair:/export/lib 
project/src  			svr2:/export/src

-ro は、3 行目と 4 行目では必要ありません。なぜならば、src および lib は、project のサブコンテキストであり、これらは、上から -ro マウントオプションを継承するからです。

以下の入力ファイルは、org/sales/fs/project/src を除いて、すべてのマウントを読み取り専用にします。

.	 		-ro 
tools/db 			 	svr1:/export/db 
project  				svr1:/export/proj 
project/lib altair:/export/lib 
project/src         -rw	         svr2:/export/src

コマンド行の入力によりファイルコンテキストを作成する

fncreate_fs コマンドにより、以下のようにバインディングの説明をコマンド行で入れることもできます。

fncreate_fs composite_name [  mmount_options] [mount_location ...]  

これは、コマンドの入力ファイル書式を使用し、キーボードから個々のバインディングを入力するのと同じです。先の kuanda のファイルシステムを設定した例は、コマンド行からは、以下のように設定できます。

% fncreate_fs user/kuanda/fs altair:/export/home/kuanda  

同様に、図 21-5 に示した階層構造は、以下のような一連のコマンドを実行することによって、設定できます。

% fncreate_fs org/sales/fs/tools/db altair:/export/db  
% fncreate_fs org/sales/fs/project altair:/export/proj  
% fncreate_fs org/sales/fs/project/lib altair:/export/lib 
% fncreate_fs org/sales/fs/project/src deneb:/export/src

これら 3 つすべてのマウントを読み取り専用にするには、以下のコマンドを実行します。

% fncreate_fs org/sales/fs -ro