123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234 |
- .\" Hey, Emacs! This is an -*- nroff -*- source file.
- .TH START\-STOP\-DAEMON 8 "15th March 1997" "Debian Project" "Debian GNU/Linux"
- .SH NAME
- start\-stop\-daemon \- start and stop system daemon programs
- .SH SYNOPSIS
- .B start-stop-daemon
- .BR -S | --start
- .IR options
- .RB [ \-\- ]
- .IR arguments
- .HP
- .B start-stop-daemon
- .BR -K | --stop
- .IR options
- .HP
- .B start-stop-daemon
- .BR -H | --help
- .HP
- .B start-stop-daemon
- .BR -V | --version
- .SH DESCRIPTION
- .B start\-stop\-daemon
- is used to control the creation and termination of system-level processes.
- Using the
- .BR --exec ", " --pidfile ", " --user ", and " --name " options,"
- .B start\-stop\-daemon
- can be configured to find existing instances of a running process.
- With
- .BR --start ,
- .B start\-stop\-daemon
- checks for the existence of a specified process.
- If such a process exists,
- .B start\-stop\-daemon
- does nothing, and exits with error status 1 (0 if
- .BR --oknodo
- is specified).
- If such a process does not exist, it starts an
- instance, using either the executable specified by
- .BR --exec ,
- (or, if specified, by
- .BR --startas ).
- Any arguments given after
- .BR --
- on the command line are passed unmodified to the program being
- started. If
- .B --retry
- is specified then start-stop-daemon will check that the process(es)
- have terminated.
- With
- .BR --stop ,
- .B start\-stop\-daemon
- also checks for the existence of a specified process.
- If such a process exists,
- .B start\-stop\-daemon
- sends it the signal specified by
- .BR --signal ,
- and exits with error status 0.
- If such a process does not exist,
- .B start\-stop\-daemon
- exits with error status 1
- (0 if
- .BR --oknodo
- is specified).
- .SH OPTIONS
- .TP
- \fB-x\fP|\fB--exec\fP \fIexecutable\fP
- Check for processes that are instances of this executable (according to
- .B /proc/
- .I pid
- .B /exe
- ).
- .TP
- \fB-p\fP|\fB--pidfile\fP \fIpid-file\fP
- Check for processes whose process-id is specified in
- .I pid-file.
- .TP
- \fB-u\fP|\fB--user\fP \fIusername\fP|\fIuid\fP
- Check for processes owned by the user specified by
- .I username
- or
- .I uid.
- .TP
- \fB-n\fP|\fB--name\fP \fIprocess-name\fP
- Check for processes with the name
- .I process-name
- (according to
- .B /proc/
- .I pid
- .B /stat
- ).
- .TP
- \fB-s\fP|\fB--signal\fP \fIsignal\fP
- With
- .BR --stop
- , specifies the signal to send to processes being stopped (default 15).
- .TP
- \fB-R\fP|\fB--retry\fP \fItimeout\fP|\fIschedule\fP
- With
- .BR --stop ,
- specifies that
- .B start-stop-daemon
- is to check whether the process(es)
- do finish. It will check repeatedly whether any matching processes
- are running, until none are. If the processes do not exit it will
- then take further action as determined by the schedule.
- If
- .I timeout
- is specified instead of
- .I schedule
- then the schedule
- .IB signal / timeout /KILL/ timeout
- is used, where
- .I signal
- is the signal specified with
- .BR --signal .
- .I schedule
- is a list of at least two items separated by slashes
- .RB ( / );
- each item may be
- .BI - signal-number
- or [\fB\-\fP]\fIsignal-name\fP,
- which means to send that signal,
- or
- .IR timeout ,
- which means to wait that many seconds for processes to
- exit,
- or
- .BR forever ,
- which means to repeat the rest of the schedule forever if
- necessary.
- If the end of the schedule is reached and
- .BR forever
- is not specified, then
- .B start-stop-daemon
- exits with error status 2.
- If a schedule is specified, then any signal specified
- with
- .B --signal
- is ignored.
- .TP
- \fB-a\fP|\fB--startas\fP \fIpathname\fP
- With
- .BR --start ,
- start the process specified by
- .IR pathname .
- If not specified, defaults to the argument given to
- .BR --exec .
- .TP
- .BR -t | --test
- Print actions that would be taken and set appropriate return value,
- but take no action.
- .TP
- .BR -o | --oknodo
- Return exit status 0 instead of 1 if no actions are (would be) taken.
- .TP
- .BR -q | --quiet
- Do not print informational messages; only display error messages.
- .TP
- \fB-c\fP|\fB--chuid\fP \fIusername\fR|\fIuid\fP
- Change to this username/uid before starting the process. You can also
- specify a group by appending a
- .BR : ,
- then the group or gid in the same way
- as you would for the `chown' command (\fIuser\fP\fB:\fP\fIgroup\fP).
- When using this option
- you must realize that the primary and supplemental groups are set as well,
- even if the
- .B --group
- option is not specified. The
- .B --group
- option is only for
- groups that the user isn't normally a member of (like adding per/process
- group membership for generic users like
- .BR nobody ).
- .TP
- \fB-r\fP|\fB--chroot\fP \fIroot\fP
- Chdir and chroot to
- .I root
- before starting the process. Please note that the pidfile is also written
- after the chroot.
- .TP
- .BR -b | --background
- Typically used with programs that don't detach on their own. This option
- will force
- .B start-stop-daemon
- to fork before starting the process, and force it into the background.
- .B WARNING: start-stop-daemon
- cannot check the exit status if the process fails to execute for
- .B any
- reason. This is a last resort, and is only meant for programs that either
- make no sense forking on their own, or where it's not feasible to add the
- code for it to do this itself.
- .TP
- .BR -N | --nicelevel
- This alters the prority of the process before starting it.
- .TP
- .BR -m | --make-pidfile
- Used when starting a program that does not create its own pid file. This
- option will make
- .B start-stop-daemon
- create the file referenced with
- .B --pidfile
- and place the pid into it just before executing the process. Note, it will
- not be removed when stopping the program.
- .B NOTE:
- This feature may not work in all cases. Most notably when the program
- being executed forks from its main process. Because of this it is usually
- only useful when combined with the
- .B --background
- option.
- .TP
- .BR -v | --verbose
- Print verbose informational messages.
- .TP
- .BR -H | --help
- Print help information; then exit.
- .TP
- .BR -V | --version
- Print version information; then exit.
- .SH AUTHORS
- Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl> based on
- a previous version by Ian Jackson <ian@chiark.greenend.org.uk>.
- Manual page by Klee Dienes <klee@mit.edu>, partially reformatted
- by Ian Jackson.
|