uso de [! NOTFOUND = return] em nsswitch.conf

4

Alguém se deparou com o uso dessa configuração para o passwd e a configuração de grupos no nsswitch.conf? Onde eu estou trabalhando eu tenho dito que foi mostrado para ajudar situações onde existe um grupo tanto localmente e em ldap que estava causando problemas para membros do grupo, etc No entanto, esta configuração parece bagunçar totalmente nscd que estará ciente dos grupos e todos os seus membros, mas não vão virar os dados para dizer que o usuário é um membro de todos os seus grupos remotos.

Inicialmente, parece que, dado um ambiente totalmente disponível, é exatamente igual a [FOUND = return], que é um padrão implícito entre os estágios, de qualquer forma. No entanto, aparentemente, um longo bilhete com Redhat resultou no uso recomendado dessa configuração.

    
por Chris Phillips 15.07.2011 / 10:48

1 resposta

4

Em [FOUND=return] , FOUND não existe, portanto, você terá o comportamento padrão. Você pode verificar a função nss_parse_service_list definida em nss/nsswitch.c (no repositório glibc ).

Para referência, esse comportamento é:

  • sucesso - > retorno
  • notfound - > continuar
  • unavail - > continuar
  • tryagain - > continuar

Quando você introduz [!NOTFOUND=return] , ele é movido para:

  • sucesso - > retorno
  • notfound - > continuar
  • unavail - > retorno
  • tryagain - > retorno

Portanto, na primeira fonte com falha devido a uma indisponibilidade (permanente ou temporária), e somente nesse caso, você deixará de passar pelos serviços. Se o backend não falhar, isso não fará diferença alguma. Por favor, lembre-se também que tal declaração [] afeta apenas o que acontece entre a fonte antes dela e a fonte logo após, não mais adiante.

Se a Red Hat considerar que há mais em um ambiente que não está totalmente disponível, você pode pedir que eles expliquem exatamente o que é isso e abrir uma Solicitação de Recurso contra o Red Hat Enterprise Linux para obter a semântica corretamente definidos em sua documentação.

No que diz respeito a nsswitch.conf(5) e minha experiência (e inclui engenharia de suporte técnico na Red Hat :), isso é praticamente tudo que existe.

    
por 04.07.2012 / 04:46