]>
Commit | Line | Data |
---|---|---|
663996b3 MS |
1 | <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd-system.conf</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style> |
2 | a.headerlink { | |
3 | color: #c60f0f; | |
4 | font-size: 0.8em; | |
5 | padding: 0 4px 0 4px; | |
6 | text-decoration: none; | |
7 | visibility: hidden; | |
8 | } | |
9 | ||
10 | a.headerlink:hover { | |
11 | background-color: #c60f0f; | |
12 | color: white; | |
13 | } | |
14 | ||
15 | h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink { | |
16 | visibility: visible; | |
17 | } | |
18 | </style><a href="index.html">Index </a>· | |
19 | <a href="systemd.directives.html">Directives </a>· | |
20 | <a href="../python-systemd/index.html">Python </a>· | |
86f210e9 MP |
21 | |
22 | <span style="float:right">systemd 221</span><hr><div class="refentry"><a name="systemd-system.conf"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd-system.conf, system.conf.d, systemd-user.conf, user.conf.d — System and session service manager configuration files</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><p><code class="filename">/etc/systemd/system.conf</code></p><p><code class="filename">/etc/systemd/system.conf.d/*.conf</code></p><p><code class="filename">/run/systemd/system.conf.d/*.conf</code></p><p><code class="filename">/usr/lib/systemd/system.conf.d/*.conf</code></p><p><code class="filename">/etc/systemd/user.conf</code></p><p><code class="filename">/etc/systemd/user.conf.d/*.conf</code></p><p><code class="filename">/run/systemd/user.conf.d/*.conf</code></p><p><code class="filename">/usr/lib/systemd/user.conf.d/*.conf</code></p></div><div class="refsect1"><a name="idm47711077146448"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description">¶</a></h2><p>When run as a system instance, systemd interprets the | |
e735f4d4 MP |
23 | configuration file <code class="filename">system.conf</code> and the files |
24 | in <code class="filename">system.conf.d</code> directories; when run as a | |
25 | user instance, systemd interprets the configuration file | |
26 | <code class="filename">user.conf</code> and the files in | |
27 | <code class="filename">user.conf.d</code> directories. These configuration | |
28 | files contain a few settings controlling basic manager | |
e3bff60a MP |
29 | operations.</p></div><div class="refsection"><a name="main-conf"></a><h2>Configuration Directories and Precedence</h2><p>Default configuration is defined during compilation, so a |
30 | configuration file is only needed when it is necessary to deviate | |
31 | from those defaults. By default the configuration file in | |
32 | <code class="filename">/etc/systemd/</code> contains commented out entries | |
33 | showing the defaults as a guide to the administrator. This file | |
34 | can be edited to create local overrides. | |
35 | </p><p>When packages need to customize the configuration, they can | |
36 | install configuration snippets in | |
37 | <code class="filename">/usr/lib/systemd/*.conf.d/</code>. Files in | |
38 | <code class="filename">/etc/</code> are reserved for the local | |
39 | administrator, who may use this logic to override the | |
40 | configuration files installed by vendor packages. The main | |
41 | configuration file is read before any of the configuration | |
42 | directories, and has the lowest precedence; entries in a file in | |
43 | any configuration directory override entries in the single | |
44 | configuration file. Files in the | |
45 | <code class="filename">*.conf.d/</code> configuration subdirectories | |
46 | are sorted by their filename in lexicographic order, regardless of | |
47 | which of the subdirectories they reside in. If multiple files | |
48 | specify the same option, the entry in the file with the | |
49 | lexicographically latest name takes precedence. It is recommended | |
50 | to prefix all filenames in those subdirectories with a two-digit | |
51 | number and a dash, to simplify the ordering of the files.</p><p>To disable a configuration file supplied by the vendor, the | |
52 | recommended way is to place a symlink to | |
f47781d8 MP |
53 | <code class="filename">/dev/null</code> in the configuration directory in |
54 | <code class="filename">/etc/</code>, with the same filename as the vendor | |
86f210e9 | 55 | configuration file.</p></div><div class="refsect1"><a name="idm47711077141824"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options">¶</a></h2><p>All options are configured in the |
e735f4d4 MP |
56 | "<code class="literal">[Manager]</code>" section:</p><div class="variablelist"><dl class="variablelist"><dt id="LogLevel="><span class="term"><code class="varname">LogLevel=</code>, </span><span class="term"><code class="varname">LogTarget=</code>, </span><span class="term"><code class="varname">LogColor=</code>, </span><span class="term"><code class="varname">LogLocation=</code>, </span><span class="term"><code class="varname">DumpCore=yes</code>, </span><span class="term"><code class="varname">CrashShell=no</code>, </span><span class="term"><code class="varname">ShowStatus=yes</code>, </span><span class="term"><code class="varname">CrashChVT=1</code>, </span><span class="term"><code class="varname">DefaultStandardOutput=journal</code>, </span><span class="term"><code class="varname">DefaultStandardError=inherit</code></span><a class="headerlink" title="Permalink to this term" href="#LogLevel=">¶</a></dt><dd><p>Configures various parameters of basic manager |
57 | operation. These options may be overridden by the respective | |
58 | command line arguments. See | |
59 | <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a> | |
60 | for details about these command line | |
61 | arguments.</p></dd><dt id="CPUAffinity="><span class="term"><code class="varname">CPUAffinity=</code></span><a class="headerlink" title="Permalink to this term" href="#CPUAffinity=">¶</a></dt><dd><p>Configures the initial CPU affinity for the | |
62 | init process. Takes a space-separated list of CPU | |
63 | indices.</p></dd><dt id="JoinControllers=cpu,cpuacct net_cls,netprio"><span class="term"><code class="varname">JoinControllers=cpu,cpuacct net_cls,netprio</code></span><a class="headerlink" title="Permalink to this term" href="#JoinControllers=cpu,cpuacct%20net_cls,netprio">¶</a></dt><dd><p>Configures controllers that shall be mounted | |
64 | in a single hierarchy. By default, systemd will mount all | |
65 | controllers which are enabled in the kernel in individual | |
66 | hierarchies, with the exception of those listed in this | |
67 | setting. Takes a space-separated list of comma-separated | |
68 | controller names, in order to allow multiple joined | |
69 | hierarchies. Defaults to 'cpu,cpuacct'. Pass an empty string | |
70 | to ensure that systemd mounts all controllers in separate | |
71 | hierarchies.</p><p>Note that this option is only applied once, at very | |
72 | early boot. If you use an initial RAM disk (initrd) that uses | |
73 | systemd, it might hence be necessary to rebuild the initrd if | |
74 | this option is changed, and make sure the new configuration | |
75 | file is included in it. Otherwise, the initrd might mount the | |
76 | controller hierarchies in a different configuration than | |
77 | intended, and the main system cannot remount them | |
78 | anymore.</p></dd><dt id="RuntimeWatchdogSec="><span class="term"><code class="varname">RuntimeWatchdogSec=</code>, </span><span class="term"><code class="varname">ShutdownWatchdogSec=</code></span><a class="headerlink" title="Permalink to this term" href="#RuntimeWatchdogSec=">¶</a></dt><dd><p>Configure the hardware watchdog at runtime and | |
79 | at reboot. Takes a timeout value in seconds (or in other time | |
80 | units if suffixed with "<code class="literal">ms</code>", | |
81 | "<code class="literal">min</code>", "<code class="literal">h</code>", | |
82 | "<code class="literal">d</code>", "<code class="literal">w</code>"). If | |
83 | <code class="varname">RuntimeWatchdogSec=</code> is set to a non-zero | |
84 | value, the watchdog hardware | |
85 | (<code class="filename">/dev/watchdog</code>) will be programmed to | |
86 | automatically reboot the system if it is not contacted within | |
87 | the specified timeout interval. The system manager will ensure | |
88 | to contact it at least once in half the specified timeout | |
89 | interval. This feature requires a hardware watchdog device to | |
90 | be present, as it is commonly the case in embedded and server | |
91 | systems. Not all hardware watchdogs allow configuration of the | |
92 | reboot timeout, in which case the closest available timeout is | |
93 | picked. <code class="varname">ShutdownWatchdogSec=</code> may be used to | |
94 | configure the hardware watchdog when the system is asked to | |
95 | reboot. It works as a safety net to ensure that the reboot | |
96 | takes place even if a clean reboot attempt times out. By | |
97 | default <code class="varname">RuntimeWatchdogSec=</code> defaults to 0 | |
98 | (off), and <code class="varname">ShutdownWatchdogSec=</code> to 10min. | |
99 | These settings have no effect if a hardware watchdog is not | |
100 | available.</p></dd><dt id="CapabilityBoundingSet="><span class="term"><code class="varname">CapabilityBoundingSet=</code></span><a class="headerlink" title="Permalink to this term" href="#CapabilityBoundingSet=">¶</a></dt><dd><p>Controls which capabilities to include in the | |
101 | capability bounding set for PID 1 and its children. See | |
102 | <a href="http://man7.org/linux/man-pages/man7/capabilities.7.html"><span class="citerefentry"><span class="refentrytitle">capabilities</span>(7)</span></a> | |
103 | for details. Takes a whitespace-separated list of capability | |
104 | names as read by | |
e3bff60a | 105 | <a href="https://www.mankier.com/3/cap_from_name"><span class="citerefentry"><span class="refentrytitle">cap_from_name</span>(3)</span></a>. |
e735f4d4 MP |
106 | Capabilities listed will be included in the bounding set, all |
107 | others are removed. If the list of capabilities is prefixed | |
108 | with ~, all but the listed capabilities will be included, the | |
109 | effect of the assignment inverted. Note that this option also | |
110 | affects the respective capabilities in the effective, | |
111 | permitted and inheritable capability sets. The capability | |
112 | bounding set may also be individually configured for units | |
113 | using the <code class="varname">CapabilityBoundingSet=</code> directive | |
114 | for units, but note that capabilities dropped for PID 1 cannot | |
115 | be regained in individual units, they are lost for | |
116 | good.</p></dd><dt id="SystemCallArchitectures="><span class="term"><code class="varname">SystemCallArchitectures=</code></span><a class="headerlink" title="Permalink to this term" href="#SystemCallArchitectures=">¶</a></dt><dd><p>Takes a space-separated list of architecture | |
117 | identifiers. Selects from which architectures system calls may | |
118 | be invoked on this system. This may be used as an effective | |
119 | way to disable invocation of non-native binaries system-wide, | |
120 | for example to prohibit execution of 32-bit x86 binaries on | |
121 | 64-bit x86-64 systems. This option operates system-wide, and | |
122 | acts similar to the | |
123 | <code class="varname">SystemCallArchitectures=</code> setting of unit | |
124 | files, see | |
125 | <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a> | |
126 | for details. This setting defaults to the empty list, in which | |
127 | case no filtering of system calls based on architecture is | |
128 | applied. Known architecture identifiers are | |
129 | "<code class="literal">x86</code>", "<code class="literal">x86-64</code>", | |
130 | "<code class="literal">x32</code>", "<code class="literal">arm</code>" and the special | |
131 | identifier "<code class="literal">native</code>". The latter implicitly | |
132 | maps to the native architecture of the system (or more | |
133 | specifically, the architecture the system manager was compiled | |
134 | for). Set this setting to "<code class="literal">native</code>" to | |
135 | prohibit execution of any non-native binaries. When a binary | |
136 | executes a system call of an architecture that is not listed | |
137 | in this setting, it will be immediately terminated with the | |
138 | SIGSYS signal.</p></dd><dt id="TimerSlackNSec="><span class="term"><code class="varname">TimerSlackNSec=</code></span><a class="headerlink" title="Permalink to this term" href="#TimerSlackNSec=">¶</a></dt><dd><p>Sets the timer slack in nanoseconds for PID 1, | |
139 | which is inherited by all executed processes, unless | |
140 | overridden individually, for example with the | |
141 | <code class="varname">TimerSlackNSec=</code> setting in service units | |
142 | (for details see | |
143 | <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>). | |
144 | The timer slack controls the accuracy of wake-ups triggered by | |
145 | system timers. See | |
146 | <a href="http://man7.org/linux/man-pages/man2/prctl.2.html"><span class="citerefentry"><span class="refentrytitle">prctl</span>(2)</span></a> | |
147 | for more information. Note that in contrast to most other time | |
148 | span definitions this parameter takes an integer value in | |
149 | nano-seconds if no unit is specified. The usual time units are | |
150 | understood too.</p></dd><dt id="DefaultTimerAccuracySec="><span class="term"><code class="varname">DefaultTimerAccuracySec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimerAccuracySec=">¶</a></dt><dd><p>Sets the default accuracy of timer units. This | |
151 | controls the global default for the | |
152 | <code class="varname">AccuracySec=</code> setting of timer units, see | |
153 | <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a> | |
154 | for details. <code class="varname">AccuracySec=</code> set in individual | |
155 | units override the global default for the specific unit. | |
156 | Defaults to 1min. Note that the accuracy of timer units is | |
157 | also affected by the configured timer slack for PID 1, see | |
158 | <code class="varname">TimerSlackNSec=</code> above.</p></dd><dt id="DefaultTimeoutStartSec="><span class="term"><code class="varname">DefaultTimeoutStartSec=</code>, </span><span class="term"><code class="varname">DefaultTimeoutStopSec=</code>, </span><span class="term"><code class="varname">DefaultRestartSec=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultTimeoutStartSec=">¶</a></dt><dd><p>Configures the default timeouts for starting | |
159 | and stopping of units, as well as the default time to sleep | |
160 | between automatic restarts of units, as configured per-unit in | |
161 | <code class="varname">TimeoutStartSec=</code>, | |
162 | <code class="varname">TimeoutStopSec=</code> and | |
163 | <code class="varname">RestartSec=</code> (for services, see | |
164 | <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a> | |
165 | for details on the per-unit settings). For non-service units, | |
166 | <code class="varname">DefaultTimeoutStartSec=</code> sets the default | |
e3bff60a MP |
167 | <code class="varname">TimeoutSec=</code> |
168 | value. <code class="varname">DefaultTimeoutStartSec=</code> and | |
169 | <code class="varname">DefaultTimeoutStopSec=</code> default to | |
170 | 90s. <code class="varname">DefaultRestartSec=</code> defaults to | |
171 | 100ms.</p></dd><dt id="DefaultStartLimitInterval="><span class="term"><code class="varname">DefaultStartLimitInterval=</code>, </span><span class="term"><code class="varname">DefaultStartLimitBurst=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultStartLimitInterval=">¶</a></dt><dd><p>Configure the default unit start rate | |
e735f4d4 MP |
172 | limiting, as configured per-service by |
173 | <code class="varname">StartLimitInterval=</code> and | |
174 | <code class="varname">StartLimitBurst=</code>. See | |
175 | <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a> | |
e3bff60a MP |
176 | for details on the per-service settings. |
177 | <code class="varname">DefaultStartLimitInterval=</code> defaults to | |
178 | 10s. <code class="varname">DefaultStartLimitBurst=</code> defaults to | |
179 | 5.</p></dd><dt id="DefaultEnvironment="><span class="term"><code class="varname">DefaultEnvironment=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultEnvironment=">¶</a></dt><dd><p>Sets manager environment variables passed to | |
e735f4d4 MP |
180 | all executed processes. Takes a space-separated list of |
181 | variable assignments. See | |
182 | <a href="http://man7.org/linux/man-pages/man7/environ.7.html"><span class="citerefentry"><span class="refentrytitle">environ</span>(7)</span></a> | |
183 | for details about environment variables.</p><p>Example: | |
14228c0d | 184 | |
e735f4d4 | 185 | </p><pre class="programlisting">DefaultEnvironment="VAR1=word1 word2" VAR2=word3 "VAR3=word 5 6"</pre><p> |
14228c0d | 186 | |
e735f4d4 MP |
187 | Sets three variables |
188 | "<code class="literal">VAR1</code>", | |
189 | "<code class="literal">VAR2</code>", | |
190 | "<code class="literal">VAR3</code>".</p></dd><dt id="DefaultCPUAccounting="><span class="term"><code class="varname">DefaultCPUAccounting=</code>, </span><span class="term"><code class="varname">DefaultBlockIOAccounting=</code>, </span><span class="term"><code class="varname">DefaultMemoryAccounting=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultCPUAccounting=">¶</a></dt><dd><p>Configure the default resource accounting | |
191 | settings, as configured per-unit by | |
192 | <code class="varname">CPUAccounting=</code>, | |
193 | <code class="varname">BlockIOAccounting=</code> and | |
194 | <code class="varname">MemoryAccounting=</code>. See | |
195 | <a href="systemd.resource-control.html"><span class="citerefentry"><span class="refentrytitle">systemd.resource-control</span>(5)</span></a> | |
196 | for details on the per-unit settings.</p></dd><dt id="DefaultLimitCPU="><span class="term"><code class="varname">DefaultLimitCPU=</code>, </span><span class="term"><code class="varname">DefaultLimitFSIZE=</code>, </span><span class="term"><code class="varname">DefaultLimitDATA=</code>, </span><span class="term"><code class="varname">DefaultLimitSTACK=</code>, </span><span class="term"><code class="varname">DefaultLimitCORE=</code>, </span><span class="term"><code class="varname">DefaultLimitRSS=</code>, </span><span class="term"><code class="varname">DefaultLimitNOFILE=</code>, </span><span class="term"><code class="varname">DefaultLimitAS=</code>, </span><span class="term"><code class="varname">DefaultLimitNPROC=</code>, </span><span class="term"><code class="varname">DefaultLimitMEMLOCK=</code>, </span><span class="term"><code class="varname">DefaultLimitLOCKS=</code>, </span><span class="term"><code class="varname">DefaultLimitSIGPENDING=</code>, </span><span class="term"><code class="varname">DefaultLimitMSGQUEUE=</code>, </span><span class="term"><code class="varname">DefaultLimitNICE=</code>, </span><span class="term"><code class="varname">DefaultLimitRTPRIO=</code>, </span><span class="term"><code class="varname">DefaultLimitRTTIME=</code></span><a class="headerlink" title="Permalink to this term" href="#DefaultLimitCPU=">¶</a></dt><dd><p>These settings control various default | |
197 | resource limits for units. See | |
198 | <a href="http://man7.org/linux/man-pages/man2/setrlimit.2.html"><span class="citerefentry"><span class="refentrytitle">setrlimit</span>(2)</span></a> | |
199 | for details. Use the string <code class="varname">infinity</code> to | |
200 | configure no limit on a specific resource. These settings may | |
201 | be overridden in individual units using the corresponding | |
202 | LimitXXX= directives. Note that these resource limits are only | |
203 | defaults for units, they are not applied to PID 1 | |
86f210e9 | 204 | itself.</p></dd></dl></div></div><div class="refsect1"><a name="idm47711077068224"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also">¶</a></h2><p> |
e735f4d4 MP |
205 | <a href="systemd.html"><span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span></a>, |
206 | <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>, | |
207 | <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>, | |
208 | <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>, | |
209 | <a href="http://man7.org/linux/man-pages/man7/environ.7.html"><span class="citerefentry"><span class="refentrytitle">environ</span>(7)</span></a>, | |
210 | <a href="http://man7.org/linux/man-pages/man7/capabilities.7.html"><span class="citerefentry"><span class="refentrytitle">capabilities</span>(7)</span></a> | |
211 | </p></div></div></body></html> |