ypinit スクリプトは、マスターサーバー、スレーブサーバー、クライアントが NIS を使用するように設定します。また最初に make を実行して、マスターサーバー上にマップを作成します。
ypinit を使用して新規に NIS マップセットをマスターサーバーに作成する場合は、次の手順に従います。
マスターサーバーでスーパーユーザーになります。
nsswitch.files ファイルの内容を nsswitch.conf ファイルにコピーします。
# cp /etc/nsswitch.files /etc/nsswitch.conf
/etc/hosts ファイルまたは /etc/inet/ipnodes ファイルを編集して、NIS サーバーのそれぞれの名前と IP アドレスを追加します。
新しいマップをマスターサーバーに作成します。
# /usr/sbin/ypinit -m
ypinit によって NIS スレーブサーバーになる他のマシンのリストを求めるプロンプトが表示されたら、作業中のサーバー名と NIS スレーブサーバー名を入力します。
致命的でないエラーが発生したときにすぐに処理を終了するか、引き続き処理を継続するかを ypinit が尋ねてきたら、y と入力します。
y を選択すると、ypinit は最初の問題が発生すると終了します。問題を解決して ypinit を再起動します。ypinit を初めて実行する場合はこの手順に従うようにしてください。処理を継続する場合は、発生する問題をすべて手動で解決してから ypinit を再起動します。
マップファイルの一部が存在しないと、致命的でないエラーが発生することがあります。これは NIS の機能に影響するエラーではありません。マップが自動的に作成されない場合は、必要に応じて手動で追加します。デフォルトの NIS マップの詳細については、デフォルトの NIS マップ を参照してください。
/var/yp/domainname ディレクトリ内の既存のファイルを破棄してもよいかどうか ypinit が尋ねてきます。
このメッセージは、NIS を以前に設定したことがある場合にだけ表示されます。
ypinit は、サーバーのリストを作成し終わると make を起動します。
このプログラムは、/var/yp に置かれた Makefile (デフォルトまたは修正されたもの) に含まれている命令を使用します。make コマンドは、指定したファイルにコメント行があればその行を取り除きます。また、指定したファイルに対して makedbm を実行して適切なマップを作成し、各マップにマスターサーバー名を設定します。
マスターサーバー上で domainname コマンドを実行すると返されるドメイン以外に対するマップの転送を Makefile で行う場合は、ypinit シェルスクリプトの中で make コマンドの変数 DOM
に適切なドメイン名を指定して起動すれば、マップを正しいドメインに転送することができます。次のように入力してください。
# make DOM=domainname password |
このコマンドによって、マスターサーバーが属するドメインではなく目的のドメインに password マップが転送されます。
次のように入力してネームサービスとして NIS を有効にします。
# cp /etc/nsswitch.nis /etc/nsswitch.conf
現在のスイッチファイルが、デフォルトの NIS 用スイッチファイルに置き換えられます。このファイルは必要に応じて編集可能です。
NIS マスターサーバーは通常、NIS ドメインだけをサポートします。ただし、マスターサーバーを使用して複数のドメインをサポートする場合は、前の節で説明したように、追加のドメイン用にサーバーを設定するときに手順を若干修正する必要があります。
サーバー上で domainname コマンドを実行します。このコマンドによって返されるドメイン名はサーバーのデフォルトドメインです。前の節で説明した手順は、このデフォルトドメインへのサービスを設定する場合は正しく機能します。他のドメインへのサービスを設定する場合は、ypinit シェルスクリプトを次のように修正する必要があります。
# make DOM=correct-domain passwd
correct-domain はサービスを設定している他のドメインの名前であり、passwd は make のターゲットです。このコマンドによって、マスターサーバーが属するドメインではなく目的のドメインに passwd マップが転送されます。