]>
Commit | Line | Data |
---|---|---|
f3e219a2 LP |
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" | |
798d3a52 | 4 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> |
f3e219a2 LP |
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 | |
5430f7f2 LP |
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 | |
f3e219a2 LP |
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 | |
5430f7f2 | 19 | Lesser General Public License for more details. |
f3e219a2 | 20 | |
5430f7f2 | 21 | You should have received a copy of the GNU Lesser General Public License |
f3e219a2 LP |
22 | along with systemd; If not, see <http://www.gnu.org/licenses/>. |
23 | --> | |
24 | ||
1b907b5c | 25 | <refentry id="systemd-system.conf" |
798d3a52 ZJS |
26 | xmlns:xi="http://www.w3.org/2001/XInclude"> |
27 | <refentryinfo> | |
28 | <title>systemd-system.conf</title> | |
29 | <productname>systemd</productname> | |
30 | ||
31 | <authorgroup> | |
32 | <author> | |
33 | <contrib>Developer</contrib> | |
34 | <firstname>Lennart</firstname> | |
35 | <surname>Poettering</surname> | |
36 | <email>lennart@poettering.net</email> | |
37 | </author> | |
38 | </authorgroup> | |
39 | </refentryinfo> | |
40 | ||
41 | <refmeta> | |
42 | <refentrytitle>systemd-system.conf</refentrytitle> | |
43 | <manvolnum>5</manvolnum> | |
44 | </refmeta> | |
45 | ||
46 | <refnamediv> | |
47 | <refname>systemd-system.conf</refname> | |
48 | <refname>system.conf.d</refname> | |
49 | <refname>systemd-user.conf</refname> | |
50 | <refname>user.conf.d</refname> | |
51 | <refpurpose>System and session service manager configuration files</refpurpose> | |
52 | </refnamediv> | |
53 | ||
54 | <refsynopsisdiv> | |
55 | <para><filename>/etc/systemd/system.conf</filename></para> | |
56 | <para><filename>/etc/systemd/system.conf.d/*.conf</filename></para> | |
57 | <para><filename>/run/systemd/system.conf.d/*.conf</filename></para> | |
58 | <para><filename>/usr/lib/systemd/system.conf.d/*.conf</filename></para> | |
59 | <para><filename>/etc/systemd/user.conf</filename></para> | |
60 | <para><filename>/etc/systemd/user.conf.d/*.conf</filename></para> | |
61 | <para><filename>/run/systemd/user.conf.d/*.conf</filename></para> | |
62 | <para><filename>/usr/lib/systemd/user.conf.d/*.conf</filename></para> | |
63 | </refsynopsisdiv> | |
64 | ||
65 | <refsect1> | |
66 | <title>Description</title> | |
67 | ||
68 | <para>When run as a system instance, systemd interprets the | |
69 | configuration file <filename>system.conf</filename> and the files | |
70 | in <filename>system.conf.d</filename> directories; when run as a | |
71 | user instance, systemd interprets the configuration file | |
72 | <filename>user.conf</filename> and the files in | |
73 | <filename>user.conf.d</filename> directories. These configuration | |
74 | files contain a few settings controlling basic manager | |
75 | operations.</para> | |
76 | </refsect1> | |
77 | ||
78 | <xi:include href="standard-conf.xml" xpointer="confd" /> | |
79 | <xi:include href="standard-conf.xml" xpointer="conf" /> | |
80 | ||
81 | <refsect1> | |
82 | <title>Options</title> | |
83 | ||
84 | <para>All options are configured in the | |
85 | <literal>[Manager]</literal> section:</para> | |
86 | ||
87 | <variablelist class='systemd-directives'> | |
88 | ||
89 | <varlistentry> | |
90 | <term><varname>LogLevel=</varname></term> | |
91 | <term><varname>LogTarget=</varname></term> | |
92 | <term><varname>LogColor=</varname></term> | |
93 | <term><varname>LogLocation=</varname></term> | |
94 | <term><varname>DumpCore=yes</varname></term> | |
95 | <term><varname>CrashShell=no</varname></term> | |
96 | <term><varname>ShowStatus=yes</varname></term> | |
97 | <term><varname>CrashChVT=1</varname></term> | |
98 | <term><varname>DefaultStandardOutput=journal</varname></term> | |
99 | <term><varname>DefaultStandardError=inherit</varname></term> | |
100 | ||
101 | <listitem><para>Configures various parameters of basic manager | |
102 | operation. These options may be overridden by the respective | |
103 | command line arguments. See | |
104 | <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry> | |
105 | for details about these command line | |
106 | arguments.</para></listitem> | |
107 | </varlistentry> | |
108 | ||
109 | <varlistentry> | |
110 | <term><varname>CPUAffinity=</varname></term> | |
111 | ||
112 | <listitem><para>Configures the initial CPU affinity for the | |
113 | init process. Takes a space-separated list of CPU | |
114 | indices.</para></listitem> | |
115 | </varlistentry> | |
116 | ||
117 | <varlistentry> | |
118 | <term><varname>JoinControllers=cpu,cpuacct net_cls,netprio</varname></term> | |
119 | ||
120 | <listitem><para>Configures controllers that shall be mounted | |
121 | in a single hierarchy. By default, systemd will mount all | |
122 | controllers which are enabled in the kernel in individual | |
123 | hierarchies, with the exception of those listed in this | |
124 | setting. Takes a space-separated list of comma-separated | |
125 | controller names, in order to allow multiple joined | |
126 | hierarchies. Defaults to 'cpu,cpuacct'. Pass an empty string | |
127 | to ensure that systemd mounts all controllers in separate | |
128 | hierarchies.</para> | |
129 | ||
130 | <para>Note that this option is only applied once, at very | |
131 | early boot. If you use an initial RAM disk (initrd) that uses | |
132 | systemd, it might hence be necessary to rebuild the initrd if | |
133 | this option is changed, and make sure the new configuration | |
134 | file is included in it. Otherwise, the initrd might mount the | |
135 | controller hierarchies in a different configuration than | |
136 | intended, and the main system cannot remount them | |
137 | anymore.</para></listitem> | |
138 | </varlistentry> | |
139 | ||
140 | <varlistentry> | |
141 | <term><varname>RuntimeWatchdogSec=</varname></term> | |
142 | <term><varname>ShutdownWatchdogSec=</varname></term> | |
143 | ||
144 | <listitem><para>Configure the hardware watchdog at runtime and | |
145 | at reboot. Takes a timeout value in seconds (or in other time | |
146 | units if suffixed with <literal>ms</literal>, | |
147 | <literal>min</literal>, <literal>h</literal>, | |
148 | <literal>d</literal>, <literal>w</literal>). If | |
149 | <varname>RuntimeWatchdogSec=</varname> is set to a non-zero | |
150 | value, the watchdog hardware | |
151 | (<filename>/dev/watchdog</filename>) will be programmed to | |
152 | automatically reboot the system if it is not contacted within | |
153 | the specified timeout interval. The system manager will ensure | |
154 | to contact it at least once in half the specified timeout | |
155 | interval. This feature requires a hardware watchdog device to | |
156 | be present, as it is commonly the case in embedded and server | |
157 | systems. Not all hardware watchdogs allow configuration of the | |
158 | reboot timeout, in which case the closest available timeout is | |
159 | picked. <varname>ShutdownWatchdogSec=</varname> may be used to | |
160 | configure the hardware watchdog when the system is asked to | |
161 | reboot. It works as a safety net to ensure that the reboot | |
162 | takes place even if a clean reboot attempt times out. By | |
163 | default <varname>RuntimeWatchdogSec=</varname> defaults to 0 | |
164 | (off), and <varname>ShutdownWatchdogSec=</varname> to 10min. | |
165 | These settings have no effect if a hardware watchdog is not | |
166 | available.</para></listitem> | |
167 | </varlistentry> | |
168 | ||
169 | <varlistentry> | |
170 | <term><varname>CapabilityBoundingSet=</varname></term> | |
171 | ||
172 | <listitem><para>Controls which capabilities to include in the | |
173 | capability bounding set for PID 1 and its children. See | |
174 | <citerefentry project='man-pages'><refentrytitle>capabilities</refentrytitle><manvolnum>7</manvolnum></citerefentry> | |
175 | for details. Takes a whitespace-separated list of capability | |
176 | names as read by | |
177 | <citerefentry><refentrytitle>cap_from_name</refentrytitle><manvolnum>3</manvolnum></citerefentry>. | |
178 | Capabilities listed will be included in the bounding set, all | |
179 | others are removed. If the list of capabilities is prefixed | |
180 | with ~, all but the listed capabilities will be included, the | |
181 | effect of the assignment inverted. Note that this option also | |
182 | affects the respective capabilities in the effective, | |
183 | permitted and inheritable capability sets. The capability | |
184 | bounding set may also be individually configured for units | |
185 | using the <varname>CapabilityBoundingSet=</varname> directive | |
186 | for units, but note that capabilities dropped for PID 1 cannot | |
187 | be regained in individual units, they are lost for | |
188 | good.</para></listitem> | |
189 | </varlistentry> | |
190 | ||
191 | <varlistentry> | |
192 | <term><varname>SystemCallArchitectures=</varname></term> | |
193 | ||
194 | <listitem><para>Takes a space-separated list of architecture | |
195 | identifiers. Selects from which architectures system calls may | |
196 | be invoked on this system. This may be used as an effective | |
197 | way to disable invocation of non-native binaries system-wide, | |
198 | for example to prohibit execution of 32-bit x86 binaries on | |
199 | 64-bit x86-64 systems. This option operates system-wide, and | |
200 | acts similar to the | |
201 | <varname>SystemCallArchitectures=</varname> setting of unit | |
202 | files, see | |
203 | <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry> | |
204 | for details. This setting defaults to the empty list, in which | |
205 | case no filtering of system calls based on architecture is | |
206 | applied. Known architecture identifiers are | |
207 | <literal>x86</literal>, <literal>x86-64</literal>, | |
208 | <literal>x32</literal>, <literal>arm</literal> and the special | |
209 | identifier <literal>native</literal>. The latter implicitly | |
210 | maps to the native architecture of the system (or more | |
211 | specifically, the architecture the system manager was compiled | |
212 | for). Set this setting to <literal>native</literal> to | |
213 | prohibit execution of any non-native binaries. When a binary | |
214 | executes a system call of an architecture that is not listed | |
215 | in this setting, it will be immediately terminated with the | |
216 | SIGSYS signal.</para></listitem> | |
217 | </varlistentry> | |
218 | ||
219 | <varlistentry> | |
220 | <term><varname>TimerSlackNSec=</varname></term> | |
221 | ||
222 | <listitem><para>Sets the timer slack in nanoseconds for PID 1, | |
223 | which is inherited by all executed processes, unless | |
224 | overridden individually, for example with the | |
225 | <varname>TimerSlackNSec=</varname> setting in service units | |
226 | (for details see | |
227 | <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>). | |
228 | The timer slack controls the accuracy of wake-ups triggered by | |
229 | system timers. See | |
230 | <citerefentry><refentrytitle>prctl</refentrytitle><manvolnum>2</manvolnum></citerefentry> | |
231 | for more information. Note that in contrast to most other time | |
232 | span definitions this parameter takes an integer value in | |
233 | nano-seconds if no unit is specified. The usual time units are | |
234 | understood too.</para></listitem> | |
235 | </varlistentry> | |
236 | ||
237 | <varlistentry> | |
238 | <term><varname>DefaultTimerAccuracySec=</varname></term> | |
239 | ||
240 | <listitem><para>Sets the default accuracy of timer units. This | |
241 | controls the global default for the | |
242 | <varname>AccuracySec=</varname> setting of timer units, see | |
243 | <citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry> | |
244 | for details. <varname>AccuracySec=</varname> set in individual | |
245 | units override the global default for the specific unit. | |
246 | Defaults to 1min. Note that the accuracy of timer units is | |
247 | also affected by the configured timer slack for PID 1, see | |
248 | <varname>TimerSlackNSec=</varname> above.</para></listitem> | |
249 | </varlistentry> | |
250 | ||
251 | <varlistentry> | |
252 | <term><varname>DefaultTimeoutStartSec=</varname></term> | |
253 | <term><varname>DefaultTimeoutStopSec=</varname></term> | |
254 | <term><varname>DefaultRestartSec=</varname></term> | |
255 | ||
256 | <listitem><para>Configures the default timeouts for starting | |
257 | and stopping of units, as well as the default time to sleep | |
258 | between automatic restarts of units, as configured per-unit in | |
259 | <varname>TimeoutStartSec=</varname>, | |
260 | <varname>TimeoutStopSec=</varname> and | |
261 | <varname>RestartSec=</varname> (for services, see | |
262 | <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry> | |
263 | for details on the per-unit settings). For non-service units, | |
264 | <varname>DefaultTimeoutStartSec=</varname> sets the default | |
265 | <varname>TimeoutSec=</varname> value. </para></listitem> | |
266 | </varlistentry> | |
267 | ||
268 | <varlistentry> | |
269 | <term><varname>DefaultStartLimitInterval=</varname></term> | |
270 | <term><varname>DefaultStartLimitBurst=</varname></term> | |
271 | ||
272 | <listitem><para>Configure the default unit start rate | |
273 | limiting, as configured per-service by | |
274 | <varname>StartLimitInterval=</varname> and | |
275 | <varname>StartLimitBurst=</varname>. See | |
276 | <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry> | |
277 | for details on the per-service settings.</para></listitem> | |
278 | </varlistentry> | |
279 | ||
280 | <varlistentry> | |
281 | <term><varname>DefaultEnvironment=</varname></term> | |
282 | ||
283 | <listitem><para>Sets manager environment variables passed to | |
284 | all executed processes. Takes a space-separated list of | |
285 | variable assignments. See | |
286 | <citerefentry project='man-pages'><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry> | |
287 | for details about environment variables.</para> | |
288 | ||
289 | <para>Example: | |
290 | ||
291 | <programlisting>DefaultEnvironment="VAR1=word1 word2" VAR2=word3 "VAR3=word 5 6"</programlisting> | |
292 | ||
293 | Sets three variables | |
294 | <literal>VAR1</literal>, | |
295 | <literal>VAR2</literal>, | |
296 | <literal>VAR3</literal>.</para></listitem> | |
297 | </varlistentry> | |
298 | ||
299 | <varlistentry> | |
300 | <term><varname>DefaultCPUAccounting=</varname></term> | |
301 | <term><varname>DefaultBlockIOAccounting=</varname></term> | |
302 | <term><varname>DefaultMemoryAccounting=</varname></term> | |
303 | ||
304 | <listitem><para>Configure the default resource accounting | |
305 | settings, as configured per-unit by | |
306 | <varname>CPUAccounting=</varname>, | |
307 | <varname>BlockIOAccounting=</varname> and | |
308 | <varname>MemoryAccounting=</varname>. See | |
309 | <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> | |
310 | for details on the per-unit settings.</para></listitem> | |
311 | </varlistentry> | |
312 | ||
313 | <varlistentry> | |
314 | <term><varname>DefaultLimitCPU=</varname></term> | |
315 | <term><varname>DefaultLimitFSIZE=</varname></term> | |
316 | <term><varname>DefaultLimitDATA=</varname></term> | |
317 | <term><varname>DefaultLimitSTACK=</varname></term> | |
318 | <term><varname>DefaultLimitCORE=</varname></term> | |
319 | <term><varname>DefaultLimitRSS=</varname></term> | |
320 | <term><varname>DefaultLimitNOFILE=</varname></term> | |
321 | <term><varname>DefaultLimitAS=</varname></term> | |
322 | <term><varname>DefaultLimitNPROC=</varname></term> | |
323 | <term><varname>DefaultLimitMEMLOCK=</varname></term> | |
324 | <term><varname>DefaultLimitLOCKS=</varname></term> | |
325 | <term><varname>DefaultLimitSIGPENDING=</varname></term> | |
326 | <term><varname>DefaultLimitMSGQUEUE=</varname></term> | |
327 | <term><varname>DefaultLimitNICE=</varname></term> | |
328 | <term><varname>DefaultLimitRTPRIO=</varname></term> | |
329 | <term><varname>DefaultLimitRTTIME=</varname></term> | |
330 | ||
331 | <listitem><para>These settings control various default | |
332 | resource limits for units. See | |
333 | <citerefentry><refentrytitle>setrlimit</refentrytitle><manvolnum>2</manvolnum></citerefentry> | |
334 | for details. Use the string <varname>infinity</varname> to | |
335 | configure no limit on a specific resource. These settings may | |
336 | be overridden in individual units using the corresponding | |
337 | LimitXXX= directives. Note that these resource limits are only | |
338 | defaults for units, they are not applied to PID 1 | |
339 | itself.</para></listitem> | |
340 | </varlistentry> | |
341 | </variablelist> | |
342 | </refsect1> | |
343 | ||
344 | <refsect1> | |
345 | <title>See Also</title> | |
346 | <para> | |
347 | <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, | |
348 | <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>, | |
349 | <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, | |
350 | <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>, | |
351 | <citerefentry project='man-pages'><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry>, | |
352 | <citerefentry project='man-pages'><refentrytitle>capabilities</refentrytitle><manvolnum>7</manvolnum></citerefentry> | |
353 | </para> | |
354 | </refsect1> | |
f3e219a2 LP |
355 | |
356 | </refentry> |