Solaris オペレーティング環境では、さまざまなネームサービスに対応できるように、nsswitch.conf(4) テンプレートファイルが 4 つ用意されています。各ファイルでは、デフォルトの情報ソース (一次ソース、および二次以降のソース) として、それぞれ異なる内容が指定されています。
4 つのテンプレートファイルは、次のとおりです。
「LDAP テンプレートファイル」(nsswitch.ldap ファイル)。この構成ファイルでは、マシンの情報の一次ソースとして LDAP ディレクトリが指定されています。
LDAP ネームサービスを使用するには、すべての LDAP クライアントマシンを正しく設定し、nsswitch.conf を変更する必要があります。詳細については、第 16 章「クライアントの設定手順 (手順)」を参照してください。
「NIS+ テンプレートファイル」(nsswitch.nisplus ファイル)。この構成ファイルでは、passwd、group、automount、aliases を除くすべての情報の一次ソースとして NIS+ が指定されています。passwd、group、automount、aliases の一次ソースとして指定されているのは /etc ディレクトリのファイルで、二次ソースとして指定されているのは NIS+ テーブルです。[NOTFOUND=return] という検索基準は、「No such entry」というメッセージを受け取ったら NIS+ テーブルの検索を停止するという意味です。また、ローカルファイルを検索するのは NIS+ サーバーを使用できない場合だけです。
「NIS テンプレートファイル」(nsswitch.nis ファイル)。この構成ファイルは、NIS+ テーブルではなく NIS マップを使用するという点を除けば、NIS+ テンプレートファイルとほぼ同じです。passwd と group の情報に関しては files nis という順序で検索するよう指定されているため、/etc/passwd と/etc/group の各ファイルに + エントリを指定する必要はありません。
「Files テンプレートファイル」(nsswitch.files ファイル)。この構成ファイルでは、マシンの情報ソースとしてローカルの /etc ディレクトリのファイルだけが指定されています。netgroup に関する files のソースは存在しないため、クライアントがスイッチファイルでこのエントリを使用することはありません。
要件に一番近いテンプレートファイルを nsswitch.conf 構成ファイルにコピーして、必要に応じてファイルを変更します。
たとえば、LDAP テンプレートファイルを使用する場合は、次のコマンドを入力します。
mymachine# cp nsswitch.ldap nsswitch.conf
Solaris オペレーティング環境で用意されている 4 つのスイッチファイルは、次のとおりです。
# # /etc/nsswitch.nisplus: # # An example file that could be copied over to /etc/nsswitch.conf; # it uses NIS+ (NIS Version 3) in conjunction with files. # # "hosts:" and "services:" in this file are used only if the # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" # transports. # the following two lines obviate the "+" entry in /etc/passwd # and /etc/group. passwd: files nisplus group: files nisplus # consult /etc "files" only if nisplus is down. hosts: nisplus [NOTFOUND=return] files # Uncomment the following line, and comment out the above, to use # both DNS and NIS+. You must also set up the /etc/resolv.conf # file for DNS name server lookup. See resolv.conf(4). # hosts: nisplus dns [NOTFOUND=return] files services: nisplus [NOTFOUND=return] files networks: nisplus [NOTFOUND=return] files protocols: nisplus [NOTFOUND=return] files rpc: nisplus [NOTFOUND=return] files ethers: nisplus [NOTFOUND=return] files netmasks: nisplus [NOTFOUND=return] files bootparams: nisplus [NOTFOUND=return] files publickey: nisplus netgroup: nisplus automount: files nisplus aliases: files nisplus sendmailvars: files nisplus |
# # /etc/nsswitch.nis: # # An example file that could be copied over to /etc/nsswitch.conf; # it uses NIS (YP) in conjunction with files. # # "hosts:" and "services:" in this file are used only if the # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" # transports. # # the following two lines obviate the "+" entry in /etc/passwd # and /etc/group. passwd: files nis group: files nis # consult /etc "files" only if nis is down. hosts: nis [NOTFOUND=return] files networks: nis [NOTFOUND=return] files protocols: nis [NOTFOUND=return] files rpc: nis [NOTFOUND=return] files ethers: nis [NOTFOUND=return] files netmasks: nis [NOTFOUND=return] files bootparams: nis [NOTFOUND=return] files publickey: nis [NOTFOUND=return] files netgroup: nis automount: files nis aliases: files nis # for efficient getservbyname() avoid nis services: files nis sendmailvars: files |
# # /etc/nsswitch.files: # # An example file that could be copied over to /etc/nsswitch.conf; # it does not use any naming service. # # "hosts:" and "services:" in this file are used only if the # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" # transports. passwd: files group: files hosts: files networks: files protocols: files rpc: files ethers: files netmasks: files bootparams: files publickey: files # At present there isn't a 'files' backend for netgroup; # the system will figure it out pretty quickly, and will notuse # netgroups at all. netgroup: files automount: files aliases: files services: files sendmailvars: files |
# # /etc/nsswitch.ldap: # # An example file that could be copied over to /etc/nsswitch.conf; it # uses LDAP in conjunction with files. # # "hosts:" and "services:" in this file are used only if the # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports. # the following two lines obviate the "+" entry in /etc/passwd and /etc/group. passwd: files ldap group: files ldap hosts: ldap [NOTFOUND=return] files networks: ldap [NOTFOUND=return] files protocols: ldap [NOTFOUND=return] files rpc: ldap [NOTFOUND=return] files ethers: ldap [NOTFOUND=return] files netmasks: ldap [NOTFOUND=return] files bootparams: ldap [NOTFOUND=return] files publickey: ldap [NOTFOUND=return] files netgroup: ldap automount: files ldap aliases: files ldap # for efficient getservbyname() avoid ldap services: files ldap sendmailvars: files |
Solaris オペレーティング環境を初めてインストールするときのデフォルトの nsswitch.conf ファイルは、Solaris のソフトウェアをインストールする際に選択したネームサービスで決まります。このファイルの各行は、ネットワーク情報の種類 (ホスト、パスワード、グループなど) と、それに対する 1 つ以上の情報ソース (NIS+ テーブル、NIS マップ、DNS ホストテーブル、同一マシン上の /etc など) を対応させています。クライアントは、この情報ソースから各情報を検索します。ネームサービスを選択すると、そのサービスのスイッチテンプレートファイルがコピーされ新しい nsswitch.conf ファイルが作成されます。たとえば、NIS+ を選択した場合は、nsswitch.nisplus ファイルがコピーされ新しい nsswitch.conf ファイルが作成されます。
/etc/nsswitch.conf ファイルは、Solaris 9 リリースをインストールすると各マシンの /etc ディレクトリに自動的に作成されます。また、次の 4 つの代替テンプレートファイルも作成されます。
これらの 4 つの代替テンプレートファイルには、それぞれネットワーク情報の情報ソースとして NIS+、NIS、ローカルファイル、 または LDAP を使用する標準的なスイッチ構成が設定されています。DNS 用のデフォルトファイルは提供されませんが、これら 4 つのファイルのどれでも編集して DNS 用に使用できます。第 5 章「DNS の管理 (参照情報)」を参照してください。Solaris オペレーティング環境をマシンに最初にインストールするときに、インストール担当者はマシンのデフォルトのネームサービス (NIS+、NIS、ローカルファイル、または LDAP) を選択します。インストール中に、選択されたネームサービスに対応するテンプレートファイルが /etc/nsswitch.conf にコピーされます。たとえば、NIS+ を使用しているクライアントマシンでは、インストールの過程で nsswitch.nisplus が nsswitch.conf にコピーされます。
ネットワークがインターネットに接続されており、ユーザーが DNS を使用してインターネット上のホストにアクセスできるようにする場合は、DNS 転送を有効にする必要があります。
特殊な名前空間を持っている場合を除き、通常の操作には nsswitch.conf にコピーされるデフォルトのテンプレートファイルを使用します。