Deleted Added
sdiff udiff text old ( 236551 ) new ( 255521 )
full compact
1.\" Copyright (c) 1999 Berkeley Software Design, Inc. All rights reserved.
2.\"
3.\" Redistribution and use in source and binary forms, with or without
4.\" modification, are permitted provided that the following conditions
5.\" are met:
6.\" 1. Redistributions of source code must retain the above copyright
7.\" notice, this list of conditions and the following disclaimer.
8.\" 2. Redistributions in binary form must reproduce the above copyright

--- 10 unchanged lines hidden (view full) ---

19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25.\" SUCH DAMAGE.
26.\"
27.\" $FreeBSD: head/usr.sbin/daemon/daemon.8 236551 2012-06-04 09:25:01Z trociny $
28.\"
29.Dd June 4, 2012
30.Dt DAEMON 8
31.Os
32.Sh NAME
33.Nm daemon
34.Nd run detached from the controlling terminal
35.Sh SYNOPSIS
36.Nm
37.Op Fl cfr
38.Op Fl p Ar pidfile
39.Op Fl u Ar user
40.Ar command arguments ...
41.Sh DESCRIPTION
42The
43.Nm
44utility detaches itself from the controlling terminal and
45executes the program specified by its arguments.
46Privileges may be lowered to the specified user.
47.Pp
48The options are as follows:
49.Bl -tag -width indent
50.It Fl c
51Change the current working directory to the root
52.Pq Dq Pa / .
53.It Fl f
54Redirect standard input, standard output and standard error to
55.Pa /dev/null .
56.It Fl p Ar file
57Write the ID of the created process into the
58.Ar file
59using the
60.Xr pidfile 3
61functionality.
62The program is executed in a spawned child process while the
63.Nm
64waits until it terminates to keep the
65.Ar file
66locked and removes it after the process exits.
67The
68.Ar file
69owner is the user who runs the
70.Nm
71regardless of whether the
72.Fl u
73option is used or not.
74.It Fl r
75Supervise and restart the program if it has been terminated.
76.It Fl u Ar user
77Login name of the user to execute the program under.
78Requires adequate superuser privileges.
79.El
80.Pp
81If the
82.Fl p
83or
84.Fl r
85option is specified the program is executed in a spawned child process.
86The
87.Nm
88waits until it terminates to keep the pid file locked and removes it
89after the process exits or restarts the program.
90In this case if the monitoring
91.Nm
92receives software termination signal (SIGTERM) it forwards it to the
93spawned process.
94Normally it will cause the child to exit followed by the termination
95of the supervising process after removing the pidfile.
96.Sh EXIT STATUS
97The
98.Nm
99utility exits 1 if an error is returned by the
100.Xr daemon 3
101library routine, 2 if the
102.Ar pidfile
103is requested, but cannot be opened, 3 if process is already running (pidfile
104exists and is locked),
105otherwise 0.
106.Sh DIAGNOSTICS
107If the command cannot be executed, an error message is displayed on
108standard error unless the
109.Fl f
110flag is specified.

--- 13 unchanged lines hidden ---