Provided by: manpages-pt_20040726-1_all bug

NOME

       nsswitch.conf - Base de dados do sistema e arquivo de configuração para
       troca de serviço de nomes

DESCRIÇÃO

       Várias funções na Biblioteca C precisam ser configuradas para trabalhar
       corretamente  no ambiente local. Tradicionalmente, este modo se faz com
       o uso de arquivos (por exemplo, ’/etc/passwd’), mas outros serviços  de
       nomes  (como  o Serviço de Informação de Rede (NIS) e o Serviço de Nome
       de Domínio (DNS)) se  torna  popular,  e  estão  em  partes  dentro  da
       Biblioteca C, usualmente com um ordem de procura fixa.

       A libc5 do Linux com suporte a NYS e a Biblioteca GNU C 2.x (libc.so.6)
       contém uma solução clara deste problema. Ela é desenhada em cima de  um
       método  usado  pela  Sun Microsystems na Biblioteca C do Solaris 2. Nós
       seguimos os nomes deles  e  chamamos  este  esquema  de  "Name  Service
       Switch"  (NSS). As fontes para a "databases" e a ordem de procura deles
       são especificadas no arquivo /etc/nsswitch.conf .

       A base de dados seguinte está disponível no NSS:

       aliases
              aliases  de  correio   eletrônico,   usado   pelo   sendmail(8).
              Atualmente ignorada.

       ethers Números da Ethernet.

       group  Grupos de usuários, usado pelas funções getgrent(3).

       hosts  Números  e  nomes  das  máquinas,  usado  por gethostbyname(3) e
              funções similares.

       netgroup
              Lista longa da rede de máquinas e usuários, usado para regras de
              acesso.   Bibliotes  C  antes  da  glibc  2.1 somente suportavam
              grupos de rede sobre NIS.

       network
              Número e nomes da rede, usado pelas funções getnetent(3).

       passwd Senha do usuários, usado pelas funções getpwent(3).

       protocols
              Protocolos de rede, usado pelas funções getprotoent(3).

       publickey
              Chaves públicas e privadas para Secure_RPC usado por NFS e NIS+.

       rpc    Número  se  nomes  para  processo  de  chamada remota, usado por
              getrpcbyname(3) e funções similares.

       services
              Serviços de rede, usado pelas funções getservent(3).

       shadow Senha Shadow de usuários, usado por getspnam(3).

       Um exemplo, o arquivo /etc/nsswitch.conf pode ser visto como (Isto é  o
       padrão se /etc/nsswitch.conf estiver faltando):

       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

       A  primeira  coluna  é a base de dados como você pode supor a partir da
       tabela  acima.  O  resto  da  linha  especifica  como  o  processo   de
       visualização  trabalha.   Você  pode especifiar o modo de trabalho para
       cada base de dados individualmente.

       As especificações de configuração para cada base de dados podem  conter
       dois itens diferentes:
       * A especificação do serviço como ’files’, ’db’, ou ’nis’.
       * A reação na visualização do resultado como ’[NOTFOUND=return]’.

       Para  a  libc5,  as  especificações  de serviço permitidas são ’files’,
       ’nis’ e ’nisplus’. Para máquinas, você pode especificar ’dns’  como  um
       serviço extra, para passwd e group ’compat’, mas não para shadow.

       Para  glibc,  você  terá um arquivo chamado de /lib/libnss_SERVICE.so.X
       para todo SERVICE que você estiver usando. Em  uma  instalação  padrão,
       você  pode  usar  ’files’, ’db’, ’nis’ e ’nisplus’. Para máquinas, você
       pode especificar ’dns’ como  serviços  extras,  para  passwd,  group  e
       shadow  ’compat’.   Estes  serviços não podem ser usados pela libc5 com
       NYS.  O número de versão X é 1 para glibc 2.0 e 2 para glibc 2.1.

       O segundo item na especificação concede ao  usuário  controle  fino  no
       processo  de visualização. Itens de ação são colocados entre dois nomes
       de serviço e são escritos entre  parentesis. A forma geral é:

       onde

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

       O tipo de letras é insignificante. O valor STATUS é o resultado de  uma
       chamada  para  a  função  de visualização do serviço especificado. Eles
       significam:

       success
              Nenhum erro ocorreu e a entrada procurada é  devolvida.  A  ação
              padrão para isto é ’return’.

       notfound
              O  processo  de visualização foi feito, mas o valor desejado não
              foi achado.  A ação padrão para isto é ’continue’.

       unavail
              O  serviço  está   indisponível   permanentemente.   Isto   pode
              significar  que o arquivo não está disponível, ou, para DNS, que
              o servidor não esta disponível ou que não permite requisições. A
              ação padrão para isto é

       tryagain
              O   serviço   está   temporariamente   indisponível.  Isto  pode
              significar que um ’file’ está travado  ou  que  o  servidor  não
              acessa  mais  conexões  atualmente.   A  ação padrão para isto é
              ’continue’.

   Interação com a sintaxe +/- (modo de compatibilidade)
       A Biblioteca do Linux libc5 sem o suporte a NYS não tem  o  seletor  de
       nome  de  serviço,  mas  pode  permitir  ao usuário muitas politícas de
       controle. Em /etc/passwd você pode  ter  entradas  da  forma  +user  ou
       +@netgroup (inclui o usuário especificado a partir do mapa de passwd do
       NIS), -user ou -@netgroup (retira o usuário especificado) e  +  (incluí
       todo  usuário, exceto os excluídos, a partir do mapa de passwd do NIS).
       Então muitas pessoas somente colocam um + no final de /etc/passwd  para
       incluir  tudo a partir do NIS, a seleção forneçe uma alternativa rápida
       para este caso (’passwd: files  nis’)  o  qual  não  requer  a  simples
       entrada  +  em  /etc/passwd,  /etc/group  e /etc/shadow.  Se isto não é
       suficiente, o serviço NSS ’compat’ fornece a  semântica  completa  +/-.
       Por   padrão,   a   origem  é  ’nis’,  mas  isto  pode  ser  sobreposto
       especificando o  ’nisplus’ como origem para as falsas  bases  de  dados
       passwd_compat,  group_compat e shadow_compat.  Esta falsa base de dados
       somente está disponível na Biblioteca GNU C.

ARQUIVOS

       Um serviço nomeado de SERVICE é implementado por um  objeto  biblioteca
       nomeada,  e  compatilhada,  libnss_SERVICE.so.X  que  fica no diretório
       /lib.

       O arquivo de configuração
                                /etc/nsswitch.conf
       /lib/libnss_compat.so.X  implementa a fonte ’compat’ para glibc2
       /lib/libnss_db.so.X      implementa a fonte ’db’ para glibc2
       /lib/libnss_dns.so.X     implementa a fonte ’dns’ para glibc2
       /lib/libnss_files.so.X   implementa a fonte ’files’ para glibc2
       /lib/libnss_hesoid.so.X  implementa a fonte ’hesoid’ para glibc2
       /lib/libnss_nis.so.X     implementa a fonte ’nis’ para glibc2
       /lib/libnss_nisplus.so.2 implementa a fonte ’nisplus’ para glibc 2.1

NOTAS

       Dentro de cada processo que use nsswitch.conf, o arquivo inteiro é lido
       somente uma vez; se o arquivo é alterado posteriormente, o processo irá
       continuar usando as antigas configurações.
       Com o Solaris, não é possivel ligar programas  estaticamente  usando  o
       serviço NSS. Com o Linux, isto não é problema.

TRADUZIDO POR LDP-BR em 21/08/2000.

       André  L.  Fassone Canova <lonelywolf@techno.com.br> (tradução) Roberto
       Selbach Teixeira <robteix@zaz.com.br> (revisão)