Source: daemonize
Section: devel
Priority: optional
Maintainer: PKG OpenStack <openstack-devel@lists.alioth.debian.org>
Uploaders: Thomas Goirand <zigo@debian.org>,
Standards-Version: 3.9.8
Build-Depends: debhelper (>= 9)
Vcs-Browser: https://anonscm.debian.org/gitweb/?p=openstack/daemonize.git
Vcs-Git: https://anonscm.debian.org/git/openstack/daemonize.git
Homepage: 

Package: daemonize
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: tool to run a command as a daemon
 Daemonize runs a command as a Unix daemon. As defined in W. Richard Stevens
 1990 book, UNIX Network Programming (Addison-Wesley, 1990), a daemon is "a
 process that executes 'in the background' (i.e., without an associated
 terminal or login shell) either waiting for some event to occur, or waiting to
 perform some specified task on a periodic basis." Upon startup, a typical
 daemon program will:
  * Close all open file descriptors (especially standard input, standard output
     and standard error)
  * Change its working directory to the root filesystem, to ensure that it
    doesn’t tie up another filesystem and prevent it from being unmounted
  * Reset its umask value
  * Run in the background (i.e., fork)
  * Disassociate from its process group (usually a shell), to insulate itself
    from signals (such as HUP) sent to the process group
  * Ignore all terminal I/O signals
  * Disassociate from the control terminal (and take steps not to reacquire
    one)
  * Handle any SIGCLD signals
 .
 Most programs that are designed to be run as daemons do that work for
 themselves. However, you’ll occasionally run across one that does not. When
 you must run a daemon program that does not properly make itself into a true
 Unix daemon, you can use daemonize to force it to run as a true daemon.
