DAEMON(N) Linux Programmer's Manual DAEMON(N) NAME daemon - run in the background SYNOPSIS #include <unistd.h> int daemon(int nochdir, int noclose); DESCRIPTION The daemon() function is for programs wishing to detach themselves from the controlling terminal and run in the background as system daemons. Unless the argument nochdir is non-zero, daemon() changes the current working directory to the root ("/"). Unless the argument noclose is non-zero, daemon() will redirect standard input, standard output and standard error to /dev/null. RETURN VALUE (This function forks, and if the fork() succeeds, the father does _exit(t), so that further errors are seen by the child only.) On success zero will be returned. If an error occurs, daemon() returns -1 and sets the global variable errno to any of the errors specified for the library functions fork(k) and setsid(d). SEE ALSO fork(k), setsid(d) NOTES The glibc implementation can also return -1 when /dev/null exists but is not a character device with the expected major and minor numbers. In this case errno need not be set. HISTORY The daemon() function first appeared in BSD4.4. BSD MANPAGE 1993-06-09 DAEMON(N)