chiark / gitweb /
man: Write man page for systemd-bootchart(1)
[elogind.git] / man / systemd.conf.xml
1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
3 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
4         "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
5
6 <!--
7   This file is part of systemd.
8
9   Copyright 2010 Lennart Poettering
10
11   systemd is free software; you can redistribute it and/or modify it
12   under the terms of the GNU Lesser General Public License as published by
13   the Free Software Foundation; either version 2.1 of the License, or
14   (at your option) any later version.
15
16   systemd is distributed in the hope that it will be useful, but
17   WITHOUT ANY WARRANTY; without even the implied warranty of
18   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19   Lesser General Public License for more details.
20
21   You should have received a copy of the GNU Lesser General Public License
22   along with systemd; If not, see <http://www.gnu.org/licenses/>.
23 -->
24
25 <refentry id="systemd.conf">
26         <refentryinfo>
27                 <title>systemd.conf</title>
28                 <productname>systemd</productname>
29
30                 <authorgroup>
31                         <author>
32                                 <contrib>Developer</contrib>
33                                 <firstname>Lennart</firstname>
34                                 <surname>Poettering</surname>
35                                 <email>lennart@poettering.net</email>
36                         </author>
37                 </authorgroup>
38         </refentryinfo>
39
40         <refmeta>
41                 <refentrytitle>systemd.conf</refentrytitle>
42                 <manvolnum>5</manvolnum>
43         </refmeta>
44
45         <refnamediv>
46                 <refname>systemd.conf</refname>
47                 <refpurpose>System and service manager configuration file</refpurpose>
48         </refnamediv>
49
50         <refsynopsisdiv>
51                 <para><filename>/etc/systemd/system.conf</filename></para>
52                 <para><filename>/etc/systemd/user.conf</filename></para>
53         </refsynopsisdiv>
54
55         <refsect1>
56                 <title>Description</title>
57
58                 <para>When run as system instance systemd reads the
59                 configuration file <filename>system.conf</filename>,
60                 otherwise <filename>user.conf</filename>. These
61                 configuration files contain a few settings controlling
62                 basic manager operations.</para>
63
64         </refsect1>
65
66         <refsect1>
67                 <title>Options</title>
68
69                 <para>All options are configured in the
70                 <literal>[Manager]</literal> section:</para>
71
72                 <variablelist class='systemd-directives'>
73
74                         <varlistentry>
75                                 <term><varname>LogLevel=</varname></term>
76                                 <term><varname>LogTarget=</varname></term>
77                                 <term><varname>LogColor=</varname></term>
78                                 <term><varname>LogLocation=</varname></term>
79                                 <term><varname>DumpCore=yes</varname></term>
80                                 <term><varname>CrashShell=no</varname></term>
81                                 <term><varname>ShowStatus=yes</varname></term>
82                                 <term><varname>CrashChVT=1</varname></term>
83                                 <term><varname>DefaultStandardOutput=journal</varname></term>
84                                 <term><varname>DefaultStandardError=inherit</varname></term>
85
86                                 <listitem><para>Configures various
87                                 parameters of basic manager
88                                 operation. These options may be
89                                 overridden by the respective command
90                                 line arguments. See
91                                 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
92                                 for details about these command line
93                                 arguments.</para></listitem>
94                         </varlistentry>
95
96                         <varlistentry>
97                                 <term><varname>CPUAffinity=</varname></term>
98
99                                 <listitem><para>Configures the initial
100                                 CPU affinity for the init
101                                 process. Takes a space-separated list
102                                 of CPU indexes.</para></listitem>
103                         </varlistentry>
104
105                         <varlistentry>
106                                 <term><varname>DefaultControllers=cpu</varname></term>
107
108                                 <listitem><para>Configures in which
109                                 cgroup controller hierarchies to
110                                 create per-service cgroups
111                                 automatically, in addition to the
112                                 name=systemd named hierarchy. Defaults
113                                 to 'cpu'. Takes a space separated list
114                                 of controller names. Pass an empty
115                                 string to ensure that systemd does not
116                                 touch any hierarchies but its
117                                 own.</para>
118
119                                 <para>Note that the default value of
120                                 'cpu' will make realtime scheduling
121                                 unavailable to system services. See
122                                 <ulink
123                                 url="http://www.freedesktop.org/wiki/Software/systemd/MyServiceCantGetRealtime">My
124                                 Service Can't Get Realtime!</ulink>
125                                 for more
126                                 information.</para></listitem>
127                         </varlistentry>
128
129                         <varlistentry>
130                                 <term><varname>JoinControllers=cpu,cpuacct,cpuset net_cls,netprio</varname></term>
131
132                                 <listitem><para>Configures controllers
133                                 that shall be mounted in a single
134                                 hierarchy. By default systemd will
135                                 mount all controllers which are
136                                 enabled in the kernel in individual
137                                 hierarchies, with the exception of
138                                 those listed in this setting. Takes a
139                                 space separated list of comma
140                                 separated controller names, in order
141                                 to allow multiple joined
142                                 hierarchies. Defaults to
143                                 'cpu,cpuacct'. Pass an empty string to
144                                 ensure that systemd mounts all
145                                 controllers in separate
146                                 hierarchies.</para>
147
148                                 <para>Note that this option is only
149                                 applied once, at very early boot. If
150                                 you use an initial RAM disk (initrd)
151                                 that uses systemd it might hence be
152                                 necessary to rebuild the initrd if
153                                 this option is changed, and make sure
154                                 the new configuration file is included
155                                 in it. Otherwise the initrd might
156                                 mount the controller hierachies in a
157                                 different configuration than intended,
158                                 and the main system cannot remount
159                                 them anymore.</para></listitem>
160                         </varlistentry>
161
162                         <varlistentry>
163                                 <term><varname>RuntimeWatchdogSec=</varname></term>
164                                 <term><varname>ShutdownWatchdogSec=</varname></term>
165
166                                 <listitem><para>Configure the hardware
167                                 watchdog at runtime and at
168                                 reboot. Takes a timeout value in
169                                 seconds (or in other time units if
170                                 suffixed with <literal>ms</literal>,
171                                 <literal>min</literal>,
172                                 <literal>h</literal>,
173                                 <literal>d</literal>,
174                                 <literal>w</literal>). If
175                                 <varname>RuntimeWatchdogSec=</varname>
176                                 is set to a non-zero value the
177                                 watchdog hardware
178                                 (<filename>/dev/watchdog</filename>)
179                                 will be programmed to automatically
180                                 reboot the system if it is not
181                                 contacted within the specified timeout
182                                 interval. The system manager will
183                                 ensure to contact it at least once in
184                                 half the specified timeout
185                                 interval. This feature requires a
186                                 hardware watchdog device to be
187                                 present, as it is commonly the case in
188                                 embedded and server systems. Not all
189                                 hardware watchdogs allow configuration
190                                 of the reboot timeout, in which case
191                                 the closest available timeout is
192                                 picked. <varname>ShutdownWatchdogSec=</varname>
193                                 may be used to configure the hardware
194                                 watchdog when the system is asked to
195                                 reboot. It works as a safety net to
196                                 ensure that the reboot takes place
197                                 even if a clean reboot attempt times
198                                 out. By default
199                                 <varname>RuntimeWatchdogSec=</varname>
200                                 defaults to 0 (off), and
201                                 <varname>ShutdownWatchdogSec=</varname>
202                                 to 10min. These settings have no
203                                 effect if a hardware watchdog is not
204                                 available.</para></listitem>
205                         </varlistentry>
206
207                         <varlistentry>
208                                 <term><varname>CapabilityBoundingSet=</varname></term>
209
210                                 <listitem><para>Controls which
211                                 capabilities to include in the
212                                 capability bounding set for PID 1 and
213                                 its children. See
214                                 <citerefentry><refentrytitle>capabilities</refentrytitle><manvolnum>7</manvolnum></citerefentry>
215                                 for details. Takes a whitespace
216                                 separated list of capability names as
217                                 read by
218                                 <citerefentry><refentrytitle>cap_from_name</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
219                                 Capabilities listed will be included
220                                 in the bounding set, all others are
221                                 removed. If the list of capabilities
222                                 is prefixed with ~ all but the listed
223                                 capabilities will be included, the
224                                 effect of the assignment
225                                 inverted. Note that this option also
226                                 affects the respective capabilities in
227                                 the effective, permitted and
228                                 inheritable capability sets. The
229                                 capability bounding set may also be
230                                 individually configured for units
231                                 using the
232                                 <varname>CapabilityBoundingSet=</varname>
233                                 directive for units, but note that
234                                 capabilities dropped for PID 1 cannot
235                                 be regained in individual units, they
236                                 are lost for good.</para></listitem>
237                         </varlistentry>
238
239                         <varlistentry>
240                                 <term><varname>TimerSlackNSec=</varname></term>
241
242                                 <listitem><para>Sets the timer slack
243                                 in nanoseconds for PID 1 which is then
244                                 inherited to all executed processes,
245                                 unless overridden individually, for
246                                 example with the
247                                 <varname>TimerSlackNSec=</varname>
248                                 setting in service units (for details
249                                 see
250                                 <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>). The
251                                 timer slack controls the accuracy of
252                                 wake-ups triggered by timers. See
253                                 <citerefentry><refentrytitle>prctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
254                                 for more information. Note that in
255                                 contrast to most other time span
256                                 definitions this parameter takes an
257                                 integer value in nano-seconds if no
258                                 unit is specified. The usual time
259                                 units are understood
260                                 too.</para></listitem>
261                         </varlistentry>
262
263                         <varlistentry>
264                                 <term><varname>DefaultLimitCPU=</varname></term>
265                                 <term><varname>DefaultLimitFSIZE=</varname></term>
266                                 <term><varname>DefaultLimitDATA=</varname></term>
267                                 <term><varname>DefaultLimitSTACK=</varname></term>
268                                 <term><varname>DefaultLimitCORE=</varname></term>
269                                 <term><varname>DefaultLimitRSS=</varname></term>
270                                 <term><varname>DefaultLimitNOFILE=</varname></term>
271                                 <term><varname>DefaultLimitAS=</varname></term>
272                                 <term><varname>DefaultLimitNPROC=</varname></term>
273                                 <term><varname>DefaultLimitMEMLOCK=</varname></term>
274                                 <term><varname>DefaultLimitLOCKS=</varname></term>
275                                 <term><varname>DefaultLimitSIGPENDING=</varname></term>
276                                 <term><varname>DefaultLimitMSGQUEUE=</varname></term>
277                                 <term><varname>DefaultLimitNICE=</varname></term>
278                                 <term><varname>DefaultLimitRTPRIO=</varname></term>
279                                 <term><varname>DefaultLimitRTTIME=</varname></term>
280
281                                 <listitem><para>These settings control
282                                 various default resource limits for
283                                 units. See
284                                 <citerefentry><refentrytitle>setrlimit</refentrytitle><manvolnum>2</manvolnum></citerefentry>
285                                 for details. Use the string
286                                 <varname>infinity</varname> to
287                                 configure no limit on a specific
288                                 resource. These settings may be
289                                 overridden in individual units
290                                 using the corresponding LimitXXX=
291                                 directives. Note that these resource
292                                 limits are only defaults for units,
293                                 they are not applied to PID 1
294                                 itself.</para></listitem>
295                         </varlistentry>
296                 </variablelist>
297         </refsect1>
298
299         <refsect1>
300                   <title>See Also</title>
301                   <para>
302                           <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
303                           <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
304                   </para>
305         </refsect1>
306
307 </refentry>