この章では、サンプルの NIS+ 名前空間を作成する方法を説明します。NIS+ 名前空間のサンプルは、/etc 内のファイルと NIS マップから作成されます。このサンプルでは、サイトで NIS を実行している場合と実行していない場合の両方について、スクリプトの使用方法を説明します。サーバーが NIS クライアントにサービスを提供する場合、サーバーを NIS 互換モードに設定できます。NIS 互換モードの詳細については、第 26 章「NIS から 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 |
rpc.nisd デーモンを起動 - NIS (および DNS) との互換性なし、またはありでクライアントをサーバーにするために必要 |
クライアントマシン。スーパーユーザーとして行う |
rpc.nisd または rpc.nisd -Y または rpc.nisd -Y -B |
サーバーをルート複製サーバーにする |
ルートマスターサーバー。スーパーユーザーとして行う |
nisserver -R -d domain. -h clientname |
サーバーを非ルートマスターサーバーにする |
ルートマスターサーバー。スーパーユーザーとして行う |
nisserver -M -d newsubdomain.domain. -h clientmachine |
ファイルまたは NIS マップから新しいマスターサーバーテーブルを生成する |
新しいサブドメインマスターサーバー。スーパーユーザーとして行う |
nispopulate -F -p /subdomaindirectory -d newsubdomain.domain. または nispopulate -Y -d newsubdomain.domain.-h NISservername -a NIS_server_ipaddress -y NIS_domain |
クライアントをマスターサーバーの複製にする |
サブドメインマスターサーバー。スーパーユーザーとして行う |
nisserver -R -d subdomain.domain. -h clientname |
サブドメインの新しいクライアントを初期設定する。クライアントは、サブドメインの複製またはそのほかのサーバーにできる |
新しいサブドメインクライアントマシン。スーパーユーザーとして行う |
nisclient -i -d newsubdomain .domain. -h subdomainmaster |
ユーザーを NIS+ クライアントとして初期設定する |
クライアントマシン。ユーザーとして行う |
nisclient -u |
実際にコマンドを実行させずに、NIS+ スクリプトがどんなコマンドを呼び出すかを表示するには、-x オプションを使います。-x オプションによって、あたかも実際にスクリプトを実行しているかのように、それらのコマンド名とそれぞれのおおよその出力を画面に表示できます。最初に -x を指定してスクリプトを実行すれば、結果を先に見ることができます。詳細は各スクリプトのマニュアルページを参照してください。