En informatique, qu’est-ce qu’un « daemon » ?


"Daemon" signifie "aide" en grec. Dans Unix, un démon est un programme système, détaché de tout terminal, qui surveille une ressource système et y donne accès par des protocoles d'intercommunication de processus. Les démons utilisent souvent des fichiers de configuration pour contrôler leurs actions. Un exemple est la fonction cron, qui permet aux utilisateurs de programmer l'exécution périodique de programmes. Le programme cron démarre au moment du démarrage et lit les fichiers dans le répertoire /var/spool/cron/crontabs. Les utilisateurs interagissent avec cron en modifiant leur fichier crontab à l'aide de l'utilitaire crontab, qui envoie un signal à crond pour qu'il relise le fichier lorsqu'il est enregistré. Les systèmes modernes utilisent un démon appelé systemd qui gère tous les services du système. Le démon "named" est une interface avec le DNS (service de nom de domaine) pour résoudre les noms de domaine Internet en adresses IP. Le démon https sur un serveur écoute sur le port 80 (et/ou d'autres comme spécifié dans les fichiers de configuration) et sert des pages web. Cupsd écoute les demandes d'impression et gère l'impression. Ntpd interroge les serveurs de temps pour que l'heure du système reste exacte. Sshd écoute les demandes de connexion sur le port 22 par défaut, en appliquant les règles du fichier /etc/ssh/sshd_config pour autoriser ou refuser les tentatives de connexion, qui sont ensuite transmises au démon de connexion si elles répondent aux critères de protocole, d'hôte distant, de liste d'utilisateurs, de méthode de cryptage et de clés de cryptage correctes. D'autres démons gèrent la journalisation des événements du système et chaque démon envoie des messages de journalisation au démon de journalisation du système.