この章では、サンプルの NIS+ 名前空間を作成する方法を説明します。NIS+ 名前空間のサンプルは、/etc 内のファイルと NIS マップから作成されます。このサンプルでは、サイトで NIS を実行している場合と実行していない場合の両方について、スクリプトの使用方法を説明します。サーバーが NIS クライアントにサービスを提供する場合、サーバーを NIS 互換モードに設定できます。NIS 互換モードの詳細については、「Solaris 1.x と NIS 互換モード」を参照してください。
サイトの実際の NIS+ 名前空間とそのドメイン階層は、名前空間サンプルのものとはおそらく異なり、サーバー、クライアント、およびドメインの数も異なります。最終的なドメイン構成と階層は、このサンプルと異なるものと考えてください。この名前空間サンプルは、NIS+ スクリプトの使用法を説明するためだけのものです。この名前空間サンプルを作成すると、自分のサイトでのドメイン、サーバー、およびクライアントの作成方法も理解できるはずです。
名前空間サンプルには次の構成要素があります。
ルートマスターサーバー 1 台 (名称 master、doc.com. ドメイン用)
ルートドメイン (doc.com.) のクライアント 4 台
client1 は、ルート複製サーバーとなる (doc.com. ドメイン用)
client2 は、新しいサブドメインのマスターサーバーとなる (sub.doc.com. ドメイン用)
client3 は、新しいサブドメインのルート以外の複製サーバーとなる (sub.doc.com. ドメイン用)
client4 は、ルートドメインのクライアントとして残る (doc.com. ドメイン用)
サブドメインの 2 台のクライアント (名称 subclient1 および subclient2、sub.doc.com. ドメイン用)
ここでは、/etc/hosts などのシステム情報ファイルと NIS マップの両方を使用してネットワークサービス情報を格納するサイトで、NIS+ の設定に使用されるスクリプトを説明します。NIS+ 名前空間サンプルでこのような混合型のサイトを使用するのは、単にサンプルとして示すことが目的です。
表 4–2 に、NIS+ ドメインのサンプルを作成するときの、NIS+ スクリプトとコマンドの汎用的な手順を示します。このあとの節ではこれらのコマンド行について詳しく説明します。NIS+ のドメイン、サーバー、およびクライアントの作成に必要な作業に習熟した後、表 4–2 はコマンド行のクイックリファレンスガイドとして使用してください。表 4–2 は、NIS+ 名前空間サンプルを作成するために実際に入力するコマンドと変数をまとめたものです。
表 4–2 NIS+ ドメインの構成に使うコマンド行のまとめ
動作 |
マシン |
コマンド |
---|---|---|
/usr/lib/nis をルートのパスに追加する。C シェルまたは Bourne シェルを使用 |
ルートマスターサーバーとクライアントマシン。スーパーユーザーとして行う |
setenv または
|
オプションで DES 認証を使用する場合には、Diffie-Hellman キー長を選択する |
サーバーとクライアントマシン。スーパーユーザーとして行う |
nisauthconf -dhkey-length-alg-type des |
NIS (YP) との互換性があるか、または互換性がないルートマスターサーバーを作成する |
ルートマスターサーバー。スーパーユーザーとして行う |
nisserver -r-dnewdomain. または nisserver -Y-r-d newdomain. |
ファイルまたは NIS マップからルートマスターサーバーテーブルを生成する |
ルートマスターサーバー。スーパーユーザーとして行う |
nispopulate -F-p /files -d newdomain. または nispopulate -Y-d newdomain. -h NISservername\ -a NIS_server_ipaddress -y NIS_domain |
NIS+ 管理グループにユーザーを追加する |
ルートマスターサーバー。スーパーユーザーとして行う |
nisgrpadm -a admin.domain.name.domain. |
NIS+ データベースのチェックポイントを実行する |
ルートマスターサーバー。スーパーユーザーとして行う |
nisping -C domain. |
新しいクライアントマシンを初期設定する |
クライアントマシン。スーパーユーザーとして行う |
nisclient -i-d domain. -h master1 |
ユーザーを NIS+ クライアントとして初期設定する |
クライアントマシン。ユーザーとして行う |
nisclient -u |
NIS+ サービス (rpc.nisd デーモン) を起動する — クライアントを NIS との互換性 (および DNS 転送機能) を備えた (または備えていない) サーバーに変換するのに必要となる |
クライアントマシン。スーパーユーザーとして行う |
必要に応じて -Y または -B オプションを /lib/svc/method/nisplus ファイルに追加してから、NIS+ サービスを有効にする svcadm enable /network/rpc/nisplus |
サーバーをルート複製サーバーにする |
ルートマスターサーバー。スーパーユーザーとして行う |
nisserver-R-d domain. -h clientname |
サーバーをルート以外のマスターサーバーにする |
ルートマスターサーバー。スーパーユーザーとして行う |
nisserver -M-d newsubdomain.domain. -h\clientmachine |
ファイルまたは NIS マップから新しいマスターサーバーテーブルを生成する |
新しいサブドメインマスターサーバー。スーパーユーザーとして行う |
nispopulate -F-p/subdomaindirectory -d \ newsubdomain.domain. または nispopulate-Y-dnewsubdomain .domain.-h NISservername -aNIS_server_ipaddress -y NIS_domain |
クライアントをマスターサーバーの複製にする |
サブドメインマスターサーバー。スーパーユーザーとして行う |
nisserver-R-dsubdomain .domain パターンを使用して名前を付けることができます。-h clientname |
サブドメインの新しいクライアントを初期設定する。クライアントは、サブドメインの複製またはそのほかのサーバーにできる |
新しいサブドメインクライアントマシン。スーパーユーザーとして行う |
nisclient -i -d newsubdomain.domain パターンを使用して名前を付けることができます。-h \ subdomainmaster |
ユーザーを NIS+ クライアントとして初期設定する |
クライアントマシン。ユーザーとして行う |
nisclient -u |
実際にコマンドを実行させないで、しかも NIS+ スクリプトがどんなコマンドを呼び出すかを表示するには、-x オプションを使います。-x オプションによって、あたかも実際にスクリプトを実行しているかのように、それらのコマンド名とそれぞれのおおよその出力を画面に表示できます。最初に -x を指定してスクリプトを実行すれば、結果を先に見ることができます。詳細は各スクリプトのマニュアルページを参照してください。