Provided by: manpages-ru_4.18.1-1_all bug

ИМЯ

       nsswitch.conf - файл настроек диспетчера службы имён

ОПИСАНИЕ

       Файл  настроек  диспетчера  службы  имён  (Name  Service Switch, (NSS)) /etc/nsswitch.conf
       используется библиотекой GNU C и другими приложениями  для  определения  источников  служб
       имён  разных категорий и их очерёдности. Каждая категория информации обозначается по имени
       её базы данных.

       Данный файл представляет собой простой текст в кодировке ASCII с  колонками,  разделёнными
       пробелами  или  символами  табуляции.  В  первой  колонке  указывается  имя базы данных. В
       оставшихся колонках задаётся порядок запросов к источникам и ограниченный набор  действий,
       который может быть выполнен в зависимости от результата запроса.

       Библиотека GNU C распознаёт следующие базы данных:

       aliases     Почтовые псевдонимы, используемые getaliasent(3) и подобными функциями.

       ethers      Номера ethernet.

       group       Группы пользователей, используемые getgrent(3) и подобными функциями.

       hosts       Имена узлов и номера, используемые gethostbyname(3) и подобными функциями.

       initgroups  Дополнительный список групп доступа, используется функцией getgrouplist(3).

       netgroup    Список узлов и пользователей сети, используемый для правил доступа. Библиотеки
                   C до версии glibc 2.1 поддерживают сетевые группы только посредством NIS.

       networks    Имена сетей и номера, используемые getnetent(3) и подобными функциями.

       passwd      Пароли пользователей, используемые getpwent(3) и подобными функциями.

       protocols   Сетевые протоколы, используемые getprotoent(3) и подобными функциями.

       publickey   Открытые и секретные ключи для Secure_RPC, используемые в NFS и NIS+.

       rpc         Имена и номера вызовов  удалённых  процедур,  используемые  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.   Delegation  of subordinate user/group IDs can be configured using the
       subid database.  Refer to subuid(5)  and subgid(5)  for more details.

       Пример файла /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

       В первой колонке содержится имя базы данных. В остальных колонках указывается:

       •  Одна или более служб, например, «files», «db» или «nis».  Очерёдность  служб  в  строке
          определяет  порядок,  в  котором будут опрашиваться данные службы (пока не будет найден
          результат).

       •  Необязательные  действия  для  выполнения,  если  получен  определённый  результат   от
          предыдущей службы, например «[NOTFOUND=return]».

       Список  поддерживаемых  системой служб зависит от наличия динамических библиотек (и, таким
       образом, расширяем). Библиотека  с  именем  /lib/libnss_СЛУЖБА.so.X  предоставляет  службу
       СЛУЖБА.  В  стандартной установке вы можете использовать «files», «db», «nis» и «nisplus».
       Для базы данных hosts вы можете дополнительно указать «dns». Для баз данных passwd,  group
       и  shadow  вы можете дополнительно указать «compat» (см. Режим совместимости далее). Номер
       версии X может быть равен 1 (для glibc 2.0) или 2 (для glibc 2.1 и новее).  В  системах  с
       дополнительно  установленными  библиотеками  могут быть другие службы, такие как «hesiod»,
       «ldap», «winbind» и «wins».

       Также, после указания службы может быть указано  действие.  Действие  изменяет  дальнейшее
       поведение  в  зависимости  от  результата,  полученного  из  предыдущего источника данных.
       Действия задаются следующим образом:

           [СОСТОЯНИЕ=ДЕЙСТВИЕ]
           [!СОСТОЯНИЕ=ДЕЙСТВИЕ]

       где

           СОСТОЯНИЕ => success | notfound | unavail | tryagain
           ДЕЙСТВИЕ => return | continue | merge

       Символ ! инвертирует результат теста, то есть совпадают все результаты, кроме  указанного.
       Регистр символов ключевых слов не важен.

       Значение  СОСТОЯНИЕ  —  это  результат  вызова  функции  поиска заданной службы. Оно может
       принимать значения:

           success     Запрашиваемая запись найдена и ошибок не произошло.  Для  этого  состояния
                       действием по умолчанию является «return».

           notfound    Поиск  выполнен,  но  нужная  запись  не была найдена. Для этого состояния
                       действием по умолчанию является «continue».

           unavail     Служба постоянно недоступна. Это может означать, что недоступен для чтения
                       нужный   файл  или,  для  сетевых  служб,  что  сервер  недоступен  или не
                       обслуживает запросы. Для этого состояния действием по  умолчанию  является
                       «continue».

           tryagain    Служба  временно  недоступна.  Это  может  означать,  что  какой-либо файл
                       заблокирован или что в  данный  момент  сервер  не  может  принять  больше
                       соединений.   Для   этого   состояния   действием  по  умолчанию  является
                       «continue».

       Значением ДЕЙСТВИЕ может быть одно из:

           return      Вернуть результат. Не вызывать функции для дальнейшего поиска.  Однако,  с
                       целью совместимости, если это действие указывается для базы данных group и
                       состояние равно notfound, и файл настройки не содержит строку  initgroups,
                       то  всегда  вызывается  следующая функция поиска, независимо от результата
                       поиска.

           continue    Вызвать следующую функцию поиска.

           merge       [SUCCESS=merge] используется между двумя записями базы данных. Если группа
                       расположена  в первой из двух записей групп, то обработка будет продолжена
                       со следующей. Если группа  также  присутствует  в  следующей  записи  (имя
                       группы  и  GID  совпадают полностью), то список членов второй записи будет
                       добавлен к возвращаемому объекту группы. Доступно начиная  с  glibc  2.24.
                       Заметим,  что  слияние  не  будет  выполнено для getgrent(3) повторяющиеся
                       члены не  будут  удалены,  если  они  присутствуют  в  обоих  объединяемых
                       записях.

   Режим совместимости (compat)
       Служба  NSS  «compat»  подобна  «files»,  за  исключением  того,  что  она позволяет иметь
       дополнительные специальные записи в соответствующих файлах для разграничения прав  доступа
       пользователей и сетевых групп в системе. В этом режиме допустимы следующие записи:

           Для баз данных passwd и shadow:

               +пользователь
                           Включить указанного пользователя в карту NIS passwd/shadow.

               +пользователь::::::
                           Include  the specified user from the NIS passwd map, but override with
                           non-empty passwd fields.

               +@сетевая группа
                           Включить всех пользователей в указанную сетевую группу.

               -пользователь
                           Исключить указанного пользователя из карты NIS passwd/shadow.

               -@сетевая группа
                           Исключить всех пользователей из указанной сетевой группы.

               +           Включить каждого пользователя, за  исключением  исключённых  ранее,  в
                           карту NIS passwd/shadow.

           Для базы данных group:

               +группа     Включить указанную группу в карту NIS group.

               -группа     Исключить указанную группу из карты NIS group.

               +           Включить  каждую группу, за исключением исключённых ранее, в карту NIS
                           group.

       По умолчанию источником является «nis», но это можно изменить, указав любую службу NSS, за
       исключением  самого  «compat»  в  качестве  источника  псевдо-базы  данных  passwd_compat,
       group_compat и shadow_compat.

ФАЙЛЫ

       Каждая СЛУЖБА реализована в динамической объектной библиотеки с именем libnss_СЛУЖБА.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  реализует источник «hesiod»
           /lib/libnss_nis.so.X     реализует источник «nis»
           /lib/libnss_nisplus.so.X реализует источник «nisplus»

       При указании в соответствующих базах источника «files», читаются следующие файлы:

           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

ЗАМЕЧАНИЯ

       Starting  with glibc 2.33, nsswitch.conf is automatically reloaded if the file is changed.
       In earlier versions, the entire file was read only once within each process.  If the  file
       was later changed, the process would continue using the old configuration.

       Изначально  использовался  только  один источник служебной информации, часто в виде одного
       файла настройки (например, /etc/passwd). Однако, по мере того, как становились популярными
       другие  службы,  такие как служба сетевой информации (Network Information Service (NIS)) и
       служба доменных имён  (Domain  Name  Service  (DNS)),  потребовался  более  гибкий  способ
       определения  порядка  поиска  вместо встроенного в библиотеку C. Для решения этой проблемы
       был  создан  диспетчер  службы  имён  (Name  Service  Switch),  основанный  на  механизме,
       использованном Sun Microsystems в C-библиотеке Solaris 2.

СМ. ТАКЖЕ

       getent(1), nss(5)

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства  был сделан Alex Nik <rage.iz.me@gmail.com>,
       Azamat Hackimov <azamat.hackimov@gmail.com>,  Dmitry  Bolkhovskikh  <d20052005@yandex.ru>,
       Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы  обнаружите  ошибки  в  переводе этой страницы руководства, пожалуйста, отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.