Infelizmente, você não pode fazer isso com a implementação do GNU libc no NSS. Você percebeu o problema fundamental, apenas deixe-me apresentá-lo de um ângulo diferente: a sintaxe nsswitch.conf
não permite fornecer informações adicionais aos módulos de serviço do NSS, portanto, eles não poderiam se comportar de maneira diferente em invocações repetidas. Portanto, não é suportado pelo lado da libc nem pelo lado do módulo. Além disso, a glibc faz um ponto de manter os módulos de serviço diretamente objetos compartilhados vinculáveis, o que exclui qualquer truque de vinculação.
O que você pode fazer é criar um meta-diretório a partir de seus dois diretórios LDAP e usá-lo em sua configuração do NSS. O OpenLDAP suporta isso muito bem, consulte a página de manual slapd-meta(5)
ou esta introdução da mesclagem por exemplo. É claro que você não precisa de uma nova instância de slapd
para isso se você puder configurar qualquer uma das duas.
(E, em vez de nss-ldap
use nss-ldapd
, se puder.)