]> git.proxmox.com Git - mirror_ovs.git/blob - lib/daemon.man
ovsdb-idl: Fix iteration over tracked rows with no actual data.
[mirror_ovs.git] / lib / daemon.man
1 .PP
2 The following options are valid on POSIX based platforms.
3 .TP
4 \fB\-\-pidfile\fR[\fB=\fIpidfile\fR]
5 Causes a file (by default, \fB\*(PN.pid\fR) to be created indicating
6 the PID of the running process. If the \fIpidfile\fR argument is not
7 specified, or
8 if it does not begin with \fB/\fR, then it is created in
9 \fB@RUNDIR@\fR.
10 .IP
11 If \fB\-\-pidfile\fR is not specified, no pidfile is created.
12 .
13 .TP
14 \fB\-\-overwrite\-pidfile\fR
15 By default, when \fB\-\-pidfile\fR is specified and the specified pidfile
16 already exists and is locked by a running process, \fB\*(PN\fR refuses
17 to start. Specify \fB\-\-overwrite\-pidfile\fR to cause it to instead
18 overwrite the pidfile.
19 .IP
20 When \fB\-\-pidfile\fR is not specified, this option has no effect.
21 .
22 .IP \fB\-\-detach\fR
23 Runs \fB\*(PN\fR as a background process. The process forks, and in
24 the child it starts a new session, closes the standard file
25 descriptors (which has the side effect of disabling logging to the
26 console), and changes its current directory to the root (unless
27 \fB\-\-no\-chdir\fR is specified). After the child completes its
28 initialization, the parent exits. \*(DD
29 .
30 .TP
31 \fB\-\-monitor\fR
32 Creates an additional process to monitor the \fB\*(PN\fR daemon. If
33 the daemon dies due to a signal that indicates a programming error
34 (\fBSIGABRT\fR, \fBSIGALRM\fR, \fBSIGBUS\fR, \fBSIGFPE\fR,
35 \fBSIGILL\fR, \fBSIGPIPE\fR, \fBSIGSEGV\fR, \fBSIGXCPU\fR, or
36 \fBSIGXFSZ\fR) then the monitor process starts a new copy of it. If
37 the daemon dies or exits for another reason, the monitor process exits.
38 .IP
39 This option is normally used with \fB\-\-detach\fR, but it also
40 functions without it.
41 .
42 .TP
43 \fB\-\-no\-chdir\fR
44 By default, when \fB\-\-detach\fR is specified, \fB\*(PN\fR
45 changes its current working directory to the root directory after it
46 detaches. Otherwise, invoking \fB\*(PN\fR from a carelessly chosen
47 directory would prevent the administrator from unmounting the file
48 system that holds that directory.
49 .IP
50 Specifying \fB\-\-no\-chdir\fR suppresses this behavior, preventing
51 \fB\*(PN\fR from changing its current working directory. This may be
52 useful for collecting core files, since it is common behavior to write
53 core dumps into the current working directory and the root directory
54 is not a good directory to use.
55 .IP
56 This option has no effect when \fB\-\-detach\fR is not specified.
57 .
58 .TP
59 \fB\-\-no\-self\-confinement\fR
60 By default daemon will try to self-confine itself to work with
61 files under well-known directories determined during build. It
62 is better to stick with this default behavior and not to use this
63 flag unless some other Access Control is used to confine daemon.
64 Note that in contrast to other access control implementations that
65 are typically enforced from kernel-space (e.g. DAC or MAC),
66 self-confinement is imposed from the user-space daemon itself and
67 hence should not be considered as a full confinement strategy, but
68 instead should be viewed as an additional layer of security.
69 .
70 .TP
71 \fB\-\-user\fR
72 Causes \fB\*(PN\fR to run as a different user specified in "user:group", thus
73 dropping most of the root privileges. Short forms "user" and ":group" are also
74 allowed, with current user or group are assumed respectively. Only daemons
75 started by the root user accepts this argument.
76 .IP
77 On Linux, daemons will be granted CAP_IPC_LOCK and CAP_NET_BIND_SERVICES
78 before dropping root privileges. Daemons that interact with a datapath,
79 such as \fBovs\-vswitchd\fR, will be granted three additional capabilities,
80 namely CAP_NET_ADMIN, CAP_NET_BROADCAST and CAP_NET_RAW. The capability
81 change will apply even if the new user is root.
82 .IP
83 On Windows, this option is not currently supported. For security reasons,
84 specifying this option will cause the daemon process not to start.