DAEMON(3)

NAZWA
daemon - uruchamianie w tle

SKŁADNIA
#include <unistd.h>

int daemon(int nochdir, int noclose);

OPIS
Funkcja daemon() jest przeznaczona dla programów, które chcą odłączyć się od sterującego nimi terminala i działać w tle jako demony systemowe.

Jeśli argument nochdir będzie zerem, daemon() zmienia aktualny katalog roboczy na katalog główny ("/").

Jeśli argument noclose będzie zerem, daemon() przekieruje standardowe wejście, standardowe wyjście i standardową diagnostykę do /dev/null.

WARTOŚĆ ZWRACANA
(Ta funkcja rozwidla się i jeśli fork() się powiedzie, rodzic wykonuje _exit(0), tak, że dalsze błędy są widziane tylko przez potomka.) W przypadku pomyślnego zakończenia, zwracane jest zero. Jeśli wystąpi błąd, daemon() zwróci -1 i ustawi zmienną globalną errno na jeden z błędów określonych dla funkcji bibliotecznych fork(2) i setsid(2).

ZOBACZ TAKŻE
fork(2), setsid(2)

UWAGI
Implementacja w glibc może również zwrócić -1 gdy /dev/null istnieje, ale nie jest urządzeniem znakowym o oczekiwanych numerach major i minor. W tym przypadku nie ma potrzeby ustawiania errno.

HISTORIA
Funkcja daemon() pojawiła się po raz pierwszy w BSD4.4.