ここでは、NIS と FNS の関係についての特定情報を説明します。
FNS は、NIS マスターおよびスレーブのサーバー上の /var/yp/domainname ディレクトリに格納されている 6 つのマップを使用します。
fns_host.ctx。ホスト属性とサブコンテキストのデータを格納する。これが最初に作成されると、hosts.byname マップから情報が得られる
fns_host.ctx。ユーザー属性とサブコンテキストのデータを格納する。これが最初に作成されると、passwd.byname マップから情報が得られる
fns_user.attr。属性による検索のためのユーザー属性を格納する
ホスト、ユーザー、およびエンタープライズのサービスとファイルのコンテキスト情報は、それぞれ fns_host.ctx、fns_user.ctx、および fns_org.ctx のマップに格納されます。プリンタのコンテキスト情報は、他のサービスのコンテキスト情報と同じマップに格納されます。しかし、古い printers.conf.byname マップはここでもサポートされます。
サイトは、エンタープライズのサブコンテキストであり、サイトのコンテキスト情報は fns_org.ctx マップに格納されます。
これらの FNS マップは、直接編集しないでください。fncreate、 fndestroy、fnbind、fnunbind、fnrename、fnattr、fnlookup、および fnlist などの適切な FNS コマンドを実行して、これらのマップで変更または作業を行います。これらのコマンドは、必ず NIS マスターサーバーで実行します。スレーブサーバーまたはクライアントマシンでこれらを実行できません。
FNS マップファイルは、/var/yp/domainname ディレクトリにあります。/var/yp にある NIS Makefile は変更され、/etc/fn/domainname にある FNS Makefile が認識されます。
NIS では、NIS マップに含まれるエントリ数に 64K という制限があります。サービスおよびプリンタのコンテキストだけが各オブジェクト (ホストまたはユーザー) に作成された場合、ユーザーまたはホストの数が 7K を超えると、エントリ数がその制限に達します。通常行われるように、ホストまたはユーザーに追加のコンテキストが作成された場合、ずっと少ないホストまたはユーザーでエントリ数が 64,000 の上限に達します。
FNS は、古いマップが最大サイズに達したら新規マップを自動的に作成して、この問題を解決します。各新規マップは、マップ名に数字の接尾辞を追加して識別されます。たとえば、2 つめの fns_user.ctx マップが作成されると、そのマップには名前 fns_user_0.ctx という名前が与えられます。3 つめのマップが必要になると、そのマップには名前 fns_user_1.ctx という名前が与えられます。追加のマップが作成されるにつれて、数字は毎回増加していきます。
Solaris 2.5 では、FNS は、printers.conf.byname という名前のマップを使用して、組織コンテキストに対して NIS のプリンタのネーミングをサポートします。現在の Solaris では、組織コンテキストのプリンタサポートは、fns_org.ctx マップに保持されています。つまり、ここでの fncreate_printer コマンドでは fns_org.ctx マップが変更され、printers.conf.byname マップは変更されません。
fncopy コマンドは、エンタープライズレベルのネームサービスを NIS から NIS+ に変更するときに、FNS 関連の側面を処理します。このコマンドは、NIS ベースの FNS コンテキストを NIS+ ベースのコンテキストにコピーして変換します。
fncopy [-i oldsvc -o newsvc] [-f filename] oldctx newctx |
オプション |
説明 |
---|---|
-i oldsvc |
ソースのネームサービス。nis または files だけが指定される |
-o newsvc |
目標のネームサービス。 nisplus または nis だけが指定される |
-f filename |
コピーされる FNS コンテキストを表示するファイル名 |
oldctx |
コピーされる古い FNS コンテキスト |
newctx |
目標の新規 FNS コンテキスト |
たとえば、ファイル /etc/sales_users に表示されるコンテキストを、NIS ベースのネームサービスの doc.com ドメインから NIS+ ネームサービスの sales.doc.com ドメインにコピーするには、次のように入力します。
fncopy -i nis -o nisplus -f /etc/sales_users org/sales.doc.com/user |