daemon
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)