Esiste una soluzione generica per utilizzare una singola libreria NSS due (o più) volte?
Nel mio caso ho due server LDAP, uno locale sulla macchina stessa e uno remoto. Ho bisogno di far funzionare NSS con entrambi (usa quello remoto se local non ha richiesto voci).
Attualmente è stato risolto in modo che la singola libreria ( PADL / nss_ldap ) sia costruita due volte. In entrambi i casi, prima della costruzione sed
viene utilizzato per modificare tutte le nss_ldap
occorrenze nelle fonti in qualcos'altro. Per ogni caso viene utilizzato un testo diverso (come nss_ldap_1
e nss_ldap_2
). Il risultato della compilazione viene rinominato di conseguenza. Entrambi i binari sono memorizzati sul sistema di destinazione e indicati in /etc/nsswitch.conf
.
Inoltre entrambe le librerie usano file di configurazione diversi /etc/
(altrimenti non avrebbe alcun senso!). Questo, tuttavia, viene fatto facilmente cambiando l'argomento nello configure
script della libreria eseguita prima della creazione.
Ma non "si sente bene". C'è qualche altro approccio?
Quello che potrei immaginare è che la stessa libreria NSS potrebbe supportare più configurazioni in modo che funzioni come due "singole istanze". Ma questo è difficile da ottenere se non sei l'autore della biblioteca. Inoltre richiede il successivo richiamo della libreria per entrambe le configurazioni, mentre si potrebbe preferire avere un'altra libreria in mezzo.
Un altro approccio sarebbe quello di scrivere un semplice forwarder che chiama solo qualche altra libreria con diversa configurazione. Ma questo richiede di nuovo che altre librerie siano in qualche modo riconfigurabili (se utilizza solo alcuni file di configurazione fissi nel server d' /etc
inoltro funzionerà proprio come la prima versione). E funziona anche solo una volta: avere una libreria utilizzata tre o più volte lo stesso problema ritorna ora con lo spedizioniere stesso.
sss
?