DAEMON(3)

NOM
daemon - Exécution en arrière-plan

SYNOPSIS
#include <unistd.h>

int daemon (int nochdir, int noclose);

Exigences de macros de test de fonctionalités pour la glibc (voir feature_test_macros(7)) :

daemon() : _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION
La fonction daemon() sert aux programmes désireux de se détacher de leur terminal de contrôle,
 et de s'exécuter en arrière-plan à la manière des démons système.

Si l'argument nochdir vaut zéro, daemon() modifie le répertoire de travail pour revenir à la racine (« / »). Ceci évite de bloquer un système de fichiers (comme /home) que l'on ne pourrait pas démonter durant son exécution.

Si l'argument noclose vaut zéro, daemon() redirige l'entrée standard, la sortie standard, et la sortie d'erreur vers /dev/null .

VALEUR RENVOYÉE
(Cette fonction exécute un fork(2), et s'il réussit, le père appelle _exit(2), ainsi, toutes les erreurs éventuelles apparaissent uniquement du côté fils). La fonction daemon() renvoie zéro si elle réussit. Si une erreur se produit, daemon() renvoie -1 et remplit la variable globale errno avec l'un des codes d'erreur renvoyés par les fonctions fork(2) et setsid(2).

CONFORMITÉ
Pas dans POSIX.1-2001. Une fonction similaire apparaît dans les BSD. La fonction daemon() est apparue en premier dans BSD 4.4.

NOTES
L'implémentation de la glibc peut également renvoyer -1 si /dev/null existe mais n'est pas un noeud spécial en mode caractère, avec les numéros mineur et majeur attendus. Dans ce cas, errno ne sera pas remplie.

VOIR AUSSI
fork(2), setsid(2)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 30 août 2000 et révisée le 19 décembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 daemon ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.