Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all bug

名前

       nsswitch.conf - ネームサービススイッチの設定ファイル

説明

       The  Name  Service  Switch (NSS) configuration file, /etc/nsswitch.conf, is used by the GNU C Library and
       certain other applications to determine the sources from which to obtain name-service  information  in  a
       range of categories, and in what order.  Each category of information is identified by a database name.

       設定ファイルは通常の  ASCII テキストで、列はスペースかタブ文字で 区切られる。最初の列はデータベース名を示
       す。 残りの列は、情報を問い合わせる情報源の順序と、 検索結果に対して実行するアクションを規定する。

       GNU C ライブラリでは以下のデータベースを扱うことができる。

       aliases     メールのエイリアス。 getaliasent(3) や関連する関数が使用する。

       ethers      イーサーネット番号。

       group       ユーザーのグループ。 getgrent(3) や関連する関数が使用する。

       hosts       ホスト名とホスト番号。 gethostbyname(3) や関連する関数が使用する。

       initgroups  補助グループアクセスリスト。 getgrouplist(3) 関数が使用する。

       netgroup    ネットワークワイドに用いられるホストやユーザーのリスト。アクセス制限に利用 される。 glibc 2.1
                   より前の C ライブラリは、 NIS による netgroup のみを サポートしていた。

       networks    ネットワーク名と番号。 getnetent(3) と関連する関数が使用する。

       passwd      ユーザーパスワード。 getpwent(3) や関連する関数が使用する。

       protocols   ネットワークプロトコル。 getprotoent(3) や関連する関数が使用する。

       publickey   NIS+ と NFS によって用いられる secure_rpc の公開鍵と秘密鍵。

       rpc         リモート手続き呼び出し  (remote procedure call) の名前と番号。 getrpcbyname(3) と関連する関数
                   が使用する。

       services    ネットワークサービス。 getservent(3) や関連する関数が使用する。

       shadow      シャドウユーザーパスワード。 getspnam(3) や関連する関数が使用する。

       The GNU C Library ignores databases with unknown names.  Some applications use this to implement  special
       handling for their own databases.  For example, sudo(8)  consults the sudoers database.

       以下は /etc/nsswitch.conf ファイルの例である。

           passwd:         compat
           group:          compat
           shadow:         compat

           hosts:          dns [!UNAVAIL=return] files
           networks:       nis [NOTFOUND=return] files
           ethers:         nis [NOTFOUND=return] files
           protocols:      nis [NOTFOUND=return] files
           rpc:            nis [NOTFOUND=return] files
           services:       nis [NOTFOUND=return] files

       最初の列はデータベース名である。 残りの列で以下を指定する。

       *  1 個以上のサービス指定 (例: "files", "db", "nis")。この行に記載された サービスの順序で、結果が得られる
          まで、指定されたサービスに対する 問い合わせが順番に行われる。

       *  特定の結果が直前のサービスで得られた場合に実行されるアクション (例: "[NOTFOUND=return]")。アクションは
          省略可能である。

       利用しているシステムでどのサービス指定が利用できるかは、共有ライブラリ があるかどうかに依存しており、その
       ためサービス指定は拡張できるように なっている。/lib/libnss_SERVICE.so.X という名前のライブラリが  SERVICE
       という名前のサービスを提供する。標準のインストールを行った 場合、"files", "db", "nis", "nisplus" が利用で
       きる。 データベース hosts の場合には、追加で "dns" も指定できる。 データベース passwd, group, shadow の場
       合には、追加で "compat" (下記の 互換モード を参照)。バージョン番号 X は、 glibc 2.0 の場合は 1、glibc 2.1
       の場合は  2  で、それ以降も同様である。   追加のライブラリがインストールされているシステムでは、"hesiod",
       "ldap", "winbind", "wins" などの追加のサービスが利用できる。

       サービス指定の次にアクションを指定することもできる。アクションを 使うと、直前のデータ源から結果が得られた
       後の動作を変更できる。 アクション指定は、一般的には以下の形式となる。

           [STATUS=ACTION]
           [!STATUS=ACTION]

       STATUS と ACTION はそれぞれ以下の値を取る。

           STATUS => success | notfound | unavail | tryagain
           ACTION => return | continue | merge

       ! はテスト結果を反転させる。 つまり、指定された以外の全ての結果にマッチする。  キーワードの大文字、小文字
       は無視される。

       STATUS  は、直前のサービス指定で呼び出しされた検索処理の結果に 対して照合が行われる。 STATUS には以下のい
       ずれかを指定できる。

           success     エラーは発生せず、要求されたエントリーが返された。     この場合のデフォルトのアクションは
                       "return" である。

           notfound    検索は成功したが、要求されたエントリーが見つからなかった。 この場合のデフォルトのアクショ
                       ンは "continue" である。

           unavail     サービスが永続的に利用できない。  必要なファイルを読み込むことができない、   ネットワーク
                       サービスの場合には、サーバが利用できないとか、 サーバが問い合わせを許可していない、などが
                       考えられる。 この場合のデフォルトのアクションは "continue" である。

           tryagain    サービスが一時的に利用できない。 ファイルがロックされている、サーバがこれ以上接続を受け付
                       けることができない、 などが考えられる。デフォル トのアクションは "continue" である。

       ACTION には以下のいずれかを指定できる。

           return      結果をすぐに返す。 これ以上検索処理は呼び出されない。 ただし、互換性のため、 選択されたア
                       クションが group データベースに対するもので、 ステータスが notfound であった場合で、 設定
                       ファイルに  initgroups の行が含まれていない場合には、次の検索処理は常に呼び出される (検索
                       結果への影響はない)。

           continue    次の検索処理を呼び出す。

           merge       [SUCCESS=merge] is used between two database entries.  When a group  is  located  in  the
                       first  of  the  two  group  entries, processing will continue on to the next one.  If the
                       group is also found in the next entry (and the group name and GID are  an  exact  match),
                       the  member  list  of  the second entry will be added to the group object to be returned.
                       Available since glibc 2.24.  Note that merging will not be done for getgrent(3)  nor will
                       duplicate members be pruned when they occur in both entries being merged.

   互換モード (compat)
       The  NSS  "compat"  service  is similar to "files" except that it additionally permits special entries in
       corresponding files for granting users or members of netgroups  access  to  the  system.   The  following
       entries are valid in this mode:

           For passwd and shadow databases:

               +user       NIS パスワード/shadow マップの指定された user を含める。

               +@netgroup  指定された netgroup の全ユーザーを含める。

               -user       NIS パスワード/shadow マップの指定された user を除外する。

               -@netgroup  指定された netgroup の全ユーザーを除外する。

               +           Include every user, except previously excluded ones, from the NIS passwd/shadow map.

           For group database:

               +group      NIS グループマップの指定された group を含める。

               -group      NIS グループマップの指定された group を除外する。

               +           NIS    グループマップのグループのうち、それまでに除外されていない全てのグループを含め
                           る。

       By default, the source is "nis", but this may be overridden by specifying any NSS service except "compat"
       itself as the source for the pseudo-databases passwd_compat, group_compat, and shadow_compat.

ファイル

       SERVICE  という名前のサービスは libnss_SERVICE.so.X という 名前の共有オブジェクトライブラリで実装されてい
       る。 これは /lib に置かれる。

           /etc/nsswitch.conf       NSS の設定ファイル。
           /lib/libnss_compat.so.X  "compat" ソースを実装したもの。
           /lib/libnss_db.so.X      "db" ソースを実装したもの。
           /lib/libnss_dns.so.X     "dns" ソースを実装したもの。
           /lib/libnss_files.so.X   "files" ソースを実装したもの。
           /lib/libnss_hesiod.so.X  "hesoid" ソースを実装したもの。
           /lib/libnss_nis.so.X     "nis" ソースを実装したもの。
           /lib/libnss_nisplus.so.X "nisplus" ソースを実装したもの。

       The following files are read when "files" source is specified for respective databases:

           aliases     /etc/aliases
           ethers      /etc/ethers
           group       /etc/group
           hosts       /etc/hosts
           initgroups  /etc/group
           netgroup    /etc/netgroup
           networks    /etc/networks
           passwd      /etc/passwd
           protocols   /etc/protocols
           publickey   /etc/publickey
           rpc         /etc/rpc
           services    /etc/services
           shadow      /etc/shadow

注意

       nsswitch.conf を利用するプロセスは、ファイルは一度しか読み込まない。 その後で nsswitch.conf  が書き換えら
       れても、そのプロセスは古い設定のままで 動作を継続する。

       伝統的には、サービス情報の情報源は一つだけであり、      その設定ファイルの形式も一つであった      (例えば
       /etc/passwd)。 一方で、 Network Information Service (NIS) や Domain Name Service (DNS) などの他の名前サー
       ビスが一般的になるに連れて、C ライブラリに埋め 込まれた固定順序ではなく、検索順序を柔軟に指定する方法が必
       要になった。 ネームサービススイッチ機構は、この問題に対するよりきれいな解決方法と  なっている。ネームサー
       ビススイッチ機構は、 Sun Microsystems が Solaris 2 の C ライブラリで使った機構が基になっている。

関連項目

       getent(1), nss(5)

この文書について

       この  man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告
       に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。