Scroll to navigation

nscd.conf(5) File Formats Manual nscd.conf(5)

NOM

nscd.conf — Fichier de configuration pour le démon de mise en cache des services de nom

DESCRIPTION

Le fichier /etc/nscd.conf est lu au démarrage de nscd(8). Chaque ligne indique soit un attribut et une valeur, soit un attribut, un service et une valeur. Les champs sont séparés par des espaces ou des tabulations. Un croisillon « # » indique un début de commentaire, les caractères suivants jusqu'à la fin de la ligne étant ignorés.

Les valeur de service valables sont passwd, group, hosts, services et netgroup.

logfile nom_fichier

Cette option permet de définir le nom du fichier où les informations de débogage doivent être écrites.

debug-level valeur

Cette option permet de définir le niveau de débogage souhaité. 0 désactive les informations de débogage. 1 affiche des informations de débogage générales. 2 ajoute les données des vidages du cache. Les niveaux 3 et supérieurs affichent toutes les informations de débogage. Le niveau par défaut est 0.

threads nombre

Cette option permet de définir le nombre de threads lancés pour attendre les requêtes. Le nombre minimal de threads créés est de 5. Le nombre de threads peut augmenter dynamiquement jusqu'à max-threads sur demande des clients, mais ne peut jamais diminuer.

max-threads nombre

Cette option permet de définir le nombre maximal de threads. La valeur par défaut est 32.

server-user utilisateur

Si cette option est définie, nscd(8) prendra l'identité de l'utilisateur spécifié et non celle de « root ». Si chaque utilisateur possède son propre cache (paramètre -S), cette option est ignorée.

stat-user utilisateur

Cette option permet de spécifier l'utilisateur autorisé à demander les statistiques.

reload-count unlimited | nombre

Cette option permet de définir la limite du nombre de fois qu'une entrée de cache sera rechargée sans être utilisée avant d'être supprimée. La valeur de cette limite va de 0 à 254 ; une valeur de 255 ou supérieure correspondra à unlimited. Les valeurs de cette limite peuvent s'exprimer en décimal ou en hexadécimal avec un préfixe « 0x ». La valeur spéciale unlimited est insensible à la casse. La valeur par défaut est de 5. Une valeur de 0 désactive la fonctionnalité de rechargement. Voir la section NOTES ci-dessous pour plus de détails sur le rechargement.

paranoia <yes|no>

Cette option permet d'activer le mode paranoïa qui force nscd(8) à se relancer de lui-même périodiquement. Ce mode est désactivé par défaut.

restart-interval nombre

Cette option permet de définir l'intervalle de redémarrage à nombre secondes si le redémarrage périodique est programmé en activant le mode paranoia. La valeur par défaut est 3600.

enable-cache service <yes|no>

Cette option permet d'activer ou désactiver le cache indiqué par service. Sa valeur par défaut est no.

positive-time-to-live service valeur

Cette option permet de définir la durée de vie TTL (time-to-live) pour les entrées positives (requêtes réussies) dans le cache indiqué par service. valeur est indiquée en secondes. Des valeurs plus grandes améliorent les taux de réussite du cache et les temps de réponse, mais augmentent les problèmes liés à la cohérence du cache. Notez que pour certains services de nom (en particulier DNS), c'est le TTL renvoyé par le service de nom qui est utilisé, et cette option est alors ignorée.

negative-time-to-live service valeur

Cette option permet de définir la durée de vie TTL (time-to-live) des entrées négatives (requêtes échouées) dans le cache indiqué par service. valeur est indiquée en secondes. Cette option peut améliorer les performances de manière significative s'il y a plusieurs fichiers appartenant à des UID en dehors des bases de données du système (par exemple, en décompressant les sources du noyau Linux en tant que « root ») ; sa valeur doit rester faible pour réduire les problèmes liés à la cohérence du cache.

suggested-size service valeur

Cette option permet de définir la taille de la table de hachage interne ; valeur doit être un nombre premier pour une efficacité optimale. La valeur par défaut est 211.

check-files service <yes|no>

Cette option permet d'activer ou désactiver la vérification des modifications des fichiers appartenant au service indiqué. Les fichiers sont /etc/passwd, /etc/group, /etc/hosts, /etc/resolv.conf, /etc/services et /etc/netgroup. La valeur par défaut est yes.

persistent service <yes|no>

Cette option permet de conserver le contenu du cache de service lors des redémarrages du serveur ; elle s'avère utile lorsque le mode paranoia est activé. Sa valeur par défaut est no.

shared service <yes|no>

Si cette option est activée (définie à yes), la projection mémoire des bases de données nscd(8) de service est partagée avec les clients. Ils peuvent ainsi effectuer une recherche directe dans celles-ci au lieu de faire appel au démon sur le socket chaque fois qu'une recherche est effectuée. Sa valeur par défaut est no. Notez qu'en cas d'échec de la recherche directe dans le cache, le démon sera tout de même sollicité sur le socket.

max-db-size service octets

La taille maximale en octets des fichiers de la base de données pour le service. La valeur par défaut est 33554432.

auto-propagate service <yes|no>

Si cette option est définie à no pour les services passwd ou group, alors les requêtes .byname ne sont pas ajoutées aux caches passwd.byuid ou group.bygid. Cela peut aider avec les tables qui contiennent plusieurs enregistrements pour le même identifiant. La valeur par défaut est yes. Cette option n'est valable que pour les services passwd et group.

NOTES

Les valeurs par défaut indiquées dans cette page de manuel proviennent du code source de nscd(8) et peuvent être outrepassées dans le fichier de configuration. Les valeurs par défaut fournies par votre distribution dans le fichier de configuration peuvent être différentes.

Rechargement

nscd(8) possède une fonctionnalité nommée rechargement et dont le comportement peut surprendre.

Le rechargement est activé lorsque l'option reload-count possède une valeur différente de zéro. La valeur par défaut dans le code source active le rechargement, mais la valeur par défaut définie par votre distribution peut être différente.

Lorsque le rechargement est activé, les entrées de cache positives (qui résultent de requêtes réussies) n'arrivent pas vraiment à expiration lorsque leur durée de vie TTL est écoulée. Lorsqu'elles atteignent leur date d'expiration, nscd va les « recharger » en renvoyant au service de nom la même requête que celle qui a été utilisée pour créer l'entrée, afin d'obtenir une nouvelle valeur à mettre en cache. Cela signifie que selon la configuration de /etc/nsswitch.conf, une requête DNS, LDAP ou NIS sera effectuée. Si la nouvelle requête réussit, le rechargement sera effectué chaque fois que l'entrée arrivera à expiration, et cela jusqu'à ce que reload-count rechargements aient été effectués pour cette entrée, auquel cas l'entrée sera effectivement supprimée du cache. Une requête d'un client qui aboutit à une entrée réinitialisera le compteur de rechargements pour cette entrée. Purger le cache en utilisant nscd -i l'emporte sur la logique de rechargement et supprime l'entrée.

Le rechargement a pour effet d'augmenter les durées de vie TTL des entrées du cache sans compromettre la cohérence de ce dernier, au coût d'une charge supplémentaire pour le service de nom sous-jacent. Est-ce une bonne solution pour votre système ? Cela dépend des détails du comportement de votre application, de votre service de nom et des valeurs de TTL effectives de vos entrées de cache. Notez que pour certains services (par exemple DNS), la valeur effective de TTL est la valeur renvoyée par le service de nom et non la valeur de l'option positive-time-to-live.

Il est recommandé de suivre attentivement les conseils suivants :

  • Si votre application effectue une seconde requête pour le même nom après 1 TTL, mais avant reload-count TTL, et est affectée par la latence due à l'échec d'une recherche dans le cache, le rechargement est probablement fait pour vous.
  • Si votre service de nom est configuré pour renvoyer des TTL très courtes, et si vos applications ne font que rarement des recherches dans des circonstances normales, le rechargement va augmenter la charge de votre service de nom sous-jacent sans aucun bénéfice pour les applications, ce qui ne correspondra probablement pas à ce que vous souhaitez.
  • Si les capacités de votre service de nom sont limitées, le rechargement pourra avoir pour effet surprenant d'augmenter la charge de votre service de nom au lieu de la diminuer, ce qui là non plus ne correspondra probablement pas à ce que vous souhaitez.
  • Définir reload-count à unlimited est en général une mauvaise idée, car il en résultera un cache qui ne fait jamais expirer ses entrées et impose au service de nom sous-jacent une charge augmentant indéfiniment.

Certaines distributions possèdent un script d'initialisation pour nscd(8) avec une commande reload qui utilise nscd -i pour purger le cache. La signification du mot « reload » est ici entièrement différente de celle du « reloading » (rechargement) décrit ici.

VOIR AUSSI

nscd(8)

TRADUCTION

La traduction française de cette page de manuel a été créée par Alain Portal <aportal@univ-montp2.fr>, Christophe Blaess <https://www.blaess.fr/christophe/>, David Prévot <david@tilapin.org>, Denis Barbier <barbier@debian.org>, Denis Barbier <barbier@debian.org>, Florentin Duneau <fduneau@gmail.com>, François Micaux, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Julien Cristau <jcristau@debian.org>, Nicolas François <nicolas.francois@centraliens.net>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, Thomas Blein <tblein@tblein.eu>, Thomas Huriaux <thomas.huriaux@gmail.com> et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

5 février 2023 Pages du manuel de Linux 6.05.01