www.nico.schottelius.org/software/cinit/browse_source/cinit-0.3pre6/doc/user/daemons.backgrounding
Nico Schottelius 423ba10303 import cinit from unix.schottelius.org
Signed-off-by: Nico Schottelius <nico@ikn.schottelius.org>
2009-09-16 12:53:45 +02:00

71 lines
2.9 KiB
Text

--------------------------------------------------------------------------------
daemons backgrounding,
Nico Schottelius 2005-06-12 (Last Modified: 2005-10-15)
--------------------------------------------------------------------------------
0. Definition
A daemon is a program which runs in the background, not having a tty
associated necesserally. Running in background does not mean it has
to background (fork()) itself, but that you cannot control it directly
from a shell.
1. Daemons and cinit
Respawning daemons is a bit more difficult, as daemons do often fork()
(go to background, the calling process exits).
This way cinit cannot watch it directly.
The first solution is to check the documentation of your daemon program,
if it has a switch to disable forking
The following daemons / servers are known to avoid backgrounding easily:
acpid [x86 power management]: -f (undocumentated but works)
apache [webserver]: -DFOREGROUND
asterisk [pbx]: -f
bind [dns server/caching]: -f
cardmgr [pcmcia/cardbus]: -f
cron (vixie) [schedular]: -f
cupsd [printer server]: -f or -F
dhclient [dhcp client]: -d
dhcp3 (isc) [dhcp server]: -f
distccd [compile server]: normal behaviour
fam [file alteration monitor]:-f
fcron [schedular]: -f
frox [ftp proxy]: "NoDetach" in config
gdm [display manager]: -nodaemon
hybrid [irc server]: -foreground
icecast2 [sound streamer]: normal behaviour
mini-lpd [printer server]: normal behaviour
metalog [log server]: normal behaviour
monotone [vcs]: normal behaviour
mpd [music server]: --no-daemon
nessusd ["security server"]: normal behaviour
ntpd [time server]: -n
oidentd [identd server]: -i
oops [http proxy]: normal behaviour
openssh [ssh server]: -D
openvpn [vpn server]: normal behaviour
pbbuttonsd [power management]:normal behaviour
portmap [portmapper]: -f
proftpd [ftp server]: -n
qmail [mta]: normal behaviour
rsync ["file server"]: --no-detach
silcd ["secure chat server"]: -F, --foreground
slapd [ldap]: -d
snmpd [snmp daemon]: -f
svnserve [vcs]: --foreground
syslogd [log server]: -n
syslog-ng [log server]: -F
tcpserver [super server]: normal behaviour
udhcpc [dhcp client]: normal behaviour
vsftpd [ftp server]: normal behaviour (or: config: background=no)
xinetd [super server]: -dontfork
Those are the daemons that do not offer the possibility (as of release 0.2):
atd (no switch, no configuraton option)
inetd (some variants)
nscd (no switch, no configuraton option)