ABCDEFGHIJKLMNOPQRSTUVWXYZ

daemon

DAEMON(3)                  Linux Programmer's Manual                 DAEMON(3)



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 stan-
       dard input, standard output and standard error to /dev/null.

RETURN VALUE
       (This function forks, and if  the  fork()  succeeds,  the  father  does
       _exit(0),  so that further errors are seen by the child only.)  On suc-
       cess 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(2) and setsid(2).

SEE ALSO
       fork(2), setsid(2)

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(3)