Solaris ネーミングの管理

nismkdir コマンド


注 -

この節では、nismkdir コマンドを使用して既存のドメインに非ルートサーバーを追加する方法を説明します。nisserver スクリプトを使うともっと簡単に非ルートサーバーを追加できますが、その方法については『Solaris ネーミングの設定と構成』で説明します。


nismkdir コマンドは、ルート以外の NIS+ ディレクトリを作成し、これをマスターサーバーに関連付けます。ルートディレクトリを作成するには、「nisinit コマンド」で説明する nisinit -r コマンドを使います。nismkdir コマンドを使って、複製サーバーを既存のディレクトリに追加できます。

NIS+ ディレクトリを作成するには、いくつかの関連作業のほかに、いくつかの前提条件があります。詳細は、『Solaris ネーミングの設定と構成』を参照してください。

ディレクトリを作成するには、以下のように入力します。


nismkdir [-m master-server]  directory-name

複製を既存のディレクトリに追加するには、以下のように入力します。


nismkdir -s replica-server  directory-name
nismkdir -s replica-server  org_dir.directory-name
nismkdir -s replica-server groups_dir.directory-name 

ディレクトリを作成する

ディレクトリを作成するには、(ドメインのマスターサーバー上の) 親ディレクトリに対する作成権が必要です。まず -m オプションを使ってマスターサーバーを定義し、次に -s オプションを使って複製を定義します。


nismkdir -m master  directory
nismkdir -s replica  directory

注意 - 注意 -

nismkdir は必ず (複製サーバーではなく) マスターサーバー上で実行してください。複製サーバーで実行すると、マスターサーバーと複製サーバーの間で通信上の問題が発生します。


次の例では、sales.doc.com. ディレクトリを作成し、そのマスターサーバーである smaster.doc.com. とその複製サーバーである rep1.doc.com を指定します。これはルートマスターサーバーから入力します。


rootmaster% nismkdir -m smaster.doc.com. sales.doc.com. 
rootmaster% nismkdir -m smaster.doc.com. org_dir.sales.doc.com.
rootmaster% nismkdir -m smaster.doc.com. groups_dir.sales.doc.com.
rootmaster% nismkdir -s rep1.doc.com. sales.doc.com.
rootmaster% nismkdir -s rep1.doc.com. org_dir.sales.doc.com.
rootmaster% nismkdir -s rep1.doc.com. groups_dir.sales.doc.com.

Graphic

小規模またはテスト用の名前空間でないかぎりは推奨しませんが、nismkdir コマンドを使えば、独自のディレクトリを指定する代わりに、新しいディレクトリとして親ディレクトリのサーバーを使えます。次に 2 つの例を示します。

Graphic

2 番目の例では、sales.doc.com. ディレクトリを作成し、独自のマスターサーバーである smaster.doc.com. を指定します。


rootmaster% nismkdir -m smaster.doc.com. sales.doc.com. 

複製サーバーは指定されないため、nismkdir を再び使用して複製を割り当てるまでは、新しいディレクトリにはマスターサーバーしかありません。sales.doc.com. ドメインがすでに存在する場合、上記の nismkdir コマンドは、salesmaster.doc.com. をその新しいマスターサーバーとし、その古いマスターサーバーを複製サーバーに格下げします。

複製サーバーを既存のディレクトリに追加する

この章では nismkdir コマンドを使用して複製サーバーを既存のシステムに追加する方法を説明します。簡単な方法としては、『Solaris ネーミングの設定と構成』で説明している nisserver スクリプトを使う方法があります。

以下の点に注意してください。

新しい複製サーバーを既存のディレクトリに割り当てるには、-s オプションと、既存のディレクトリ名を使います。


nismkdir -s replica-server existing-directory-name 
nismkdir -s replica-server org_dir.existing-directory-name
nismkdir -s replica-server groups_dir.existing-directory-name 

nismkdir コマンドは、ディレクトリがすでに存在することを知っているため、再び作成しません。単に、追加の複製サーバーを割り当てるだけです。たとえば、新しい複製サーバーマシン名が rep1 である場合は、以下のように入力します。


rootmaster% nismkdir -s rep1.doc.com. doc.com. 
rootmaster% nismkdir -s rep1.doc.com. org_dir.doc.com.
rootmaster% nismkdir -s rep1.doc.com. groups_dir.doc.com.

注意 - 注意 -

nismkdir は必ず (複製サーバーではなく) マスターサーバー上で実行してください。複製サーバーで実行すると、マスターサーバーと複製サーバーの間で通信上の問題が発生します。


先述のように nismkdir を 3 回繰り返して実行した後は、以下の 3 つのディレクトリでマスターサーバーから nisping を実行する必要があります。


rootmaster# nisping doc.com.
rootmaster# nisping org_dir.doc.com.
rootmaster# nisping group_dir.doc.com.

この結果は以下のようになります。


rootmaster# nisping doc.com.
Pinging replicas serving directory doc.com. :
Master server is rootmaster.doc.com.
 Last update occurred at Wed Nov 18 19:54:38 1995
Replica server is rep1.doc.com.
 Last update seen was Wed Nov 18 11:24:32 1995
 Pinging ... rep1.doc.com

マスターサーバーの cron ファイルに、nisping コマンドが少なくとも 24 時間に一度 (この 3 つのディレクトリに対して) 実行されるよう設定しておくことをお勧めします。