Gentoo/amd64 : crash récurrent de nscd
- Mercredi 22 avril 2009
- Publié dans Administration . Linux
- Par Boris HUISGEN
- Ecrire
Le démon nscd chargé de gérer le cache de résultats des services de noms a la fâcheuse tendance de crasher toutes les 10 minutes +/- sur un système Linux 64 bits. Ceci est très problématique dans le cas d’un serveur LDAP, car il permet justement d’optimiser les requêtes LDAP courantes. Son crash interrompt de plus le fonctionnement du serveur (et des clients LDAP).
L’unique solution est de privilégier un équivalent – mieux codé – dénommé unscd.
Voici le script de démarrage que j’utilise pour Gentoo/amd64 et qui manque dans le port :
#!/sbin/runscript # # Boris HUISGEN, <bhuisgen@hbis.fr>depend() { use dns ldap net slapd }checkconfig() { if [ ! -d /var/run/nscd ] ; then mkdir -p /var/run/nscd chmod 755 /var/run/nscd fi }start() { checkconfig ebegin "Starting Micro Name Service Cache Daemon" start-stop-daemon --start --quiet --exec /sbin/unscd eend $? }stop() { ebegin "Shutting down Micro Name Service Cache Daemon" start-stop-daemon --stop --quiet --exec /sbin/unscd eend $? } # vim:ts=4
Un joli commentaire de la part de son auteur :
It is well known that nscd provided with glibc is buggy.
This leads people to invent babysitters which restart crashed/hung nscd. This is ugly.
After looking at nscd source in glibc I arrived to the conclusion that it’s flawed by design and cannot be fixed. Even if nscd’s own code is 100.00% perfect and bug-free, it can still suffer from bugs in libraries it calls.
Pas encore de commentaires.