Solaris のシステム管理 (ネーミングとディレクトリサービス : NIS+ 編)

テーブルを作成する

NIS+ テーブルには、少なくとも 1 つの列が必要で、その列のうち少なくとも 1 つが検索可能でなければなりません。NIS+ テーブルを作成するには、nistbladm コマンドに -c オプションを付けて使います。


nistbladm -c tabletype columnspec \
 ... tablename

引数の意味はそれぞれ以下のとおりです。


 nistbladm -c tabletype columnspec columnspec \
 columnspec tablename

columnspec の書式については、「テーブルの列を指定する」を参照してください。

テーブルの列を指定する

columnspec エントリは、以下の形式のように、2 つから 4 つの要素から成っています。


name=type,rights: 
表 19–3 テーブルの列の構成要素

構成要素 

目的 

name

列の名前 

=

等号記号 (必須) 

type

(オプション) SI、または C で列の種類を指定する。表 19–4 参照。このコマンドは省略可能です。type を指定しないと、その列はデフォルトとなる

rights

(オプション) アクセス権を指定する。ここに指定したアクセス権は、テーブル全体や特定エントリに付与したアクセス権より優先される。access を指定しないと、その列のアクセス権は、テーブル全体や特定エントリに付与したアクセス権になる。アクセス権の構文については、「コマンドによるアクセス権の指定」を参照

列には、次に挙げる種類のうち 1 つを指定できます。

表 19–4 列の種類

種類 

目的 

 

等号 (=) のみ。列の種類は指定しない。その列は検索可能にもならなければ、暗号化されることもない

S

検索可能 

I

大文字と小文字の区別をしない。NIS+ コマンドで列を検索する場合、大文字と小文字を区別しない 

C

暗号化する 

NIS+ の各コマンドは、列全体を調べ、検索可能列の値に基づいて個々の行を識別します。検索可能列は S または I オプションで指定します (データベース用語では、検索可能列のことをキー列といいます)。テーブルの最初の列は必ず検索可能にします。その他の列は検索可能にする必要はありません。NIS+ テーブルのキーは、検索可能列に対して作成されます。このため、検索可能列が複数存在する場合は、最初の列から連続した領域に割り当てなければなりません。検索可能列以外の列がその領域に存在してはなりません。たとえば、テーブルの検索可能列が 1 列だけの場合は、最初の列に配置しなければなりません。検索可能列が 2 列の場合は、最初の 2 列に配置しなければなりません。検索可能列の詳細については、nistbladm、検索可能列、キー、列の値」を参照してください。

アクセス権だけを指定する場合、コンマを使用する必要はありません。-S-I-C フラグの 1 つか複数を指定する場合は、アクセス権の前にコンマを追加します。

以下の例では、上と同じテーブルが作成されますが、最初の 2 列にはその列に固有なアクセス権が付与されます。


master% nistbladm -c depts Name=I,w+m Site=w+m Name=C \
 divs.mydir.doc.com.

テーブル作成時の列のアクセス権の指定については、「テーブル作成時の列権利設定」を参照してください。


注 –

NIS+ では、すべての列エントリが NULL で終了するものと仮定しています。NIS+ テーブルに情報を書き込むアプリケーションやルーチンは、列エントリをすべて NULL で終了するように構成しなければなりません。


自動マウントテーブルを追加作成する

自動マウントテーブルには 2 つの列しか作ることができません。1 番目の列には key という名前を付け、2 番目の列には value という名前を付けます。たとえば、auto1 という名前の自動マウントテーブルを作成するには、次のように入力します。


master% nistbladm -c key-value key=S value= auto1.org_dir.doc.com.