init.html 68.8 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>systemd</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><style>
    a.headerlink {
      color: #c60f0f;
      font-size: 0.8em;
      padding: 0 4px 0 4px;
      text-decoration: none;
      visibility: hidden;
    }

    a.headerlink:hover {
      background-color: #c60f0f;
      color: white;
    }

    h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, dt:hover > a.headerlink {
      visibility: visible;
    }
  </style><a href="index.html">Index </a>·
  <a href="systemd.directives.html">Directives </a>·
  <a href="../python-systemd/index.html">Python </a>·
  <a href="../libudev/index.html">libudev </a>·
Michael Biebl's avatar
Michael Biebl committed
22
  <a href="../libudev/index.html">gudev </a><span style="float:right">systemd 215</span><hr><div class="refentry"><a name="systemd"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>systemd, init — systemd system and service manager</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">systemd [OPTIONS...]</code> </p></div><div class="cmdsynopsis"><p><code class="command">init [OPTIONS...]  {COMMAND}</code> </p></div></div><div class="refsect1"><a name="idm214189898832"></a><h2 id="Description">Description<a class="headerlink" title="Permalink to this headline" href="#Description"></a></h2><p>systemd is a system and service manager for
23 24 25 26 27 28 29 30 31 32 33 34 35 36
                Linux operating systems. When run as first process on
                boot (as PID 1), it acts as init system that brings
                up and maintains userspace services.</p><p>For compatibility with SysV, if systemd is called
                as <span class="command"><strong>init</strong></span> and a PID that is not
                1, it will execute <span class="command"><strong>telinit</strong></span> and pass
                all command line arguments unmodified. That means
                <span class="command"><strong>init</strong></span> and <span class="command"><strong>telinit</strong></span>
                are mostly equivalent when invoked from normal login sessions. See
                <a href="telinit.html"><span class="citerefentry"><span class="refentrytitle">telinit</span>(8)</span></a>
                for more information.</p><p>When run as system instance, systemd interprets
                the configuration file
                <code class="filename">system.conf</code>, otherwise
                <code class="filename">user.conf</code>. See
                <a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>
Michael Biebl's avatar
Michael Biebl committed
37
                for more information.</p></div><div class="refsect1"><a name="idm214188084384"></a><h2 id="Options">Options<a class="headerlink" title="Permalink to this headline" href="#Options"></a></h2><p>The following options are understood:</p><div class="variablelist"><dl class="variablelist"><dt id="--test"><span class="term"><code class="option">--test</code></span><a class="headerlink" title="Permalink to this term" href="#--test"></a></dt><dd><p>Determine startup
38 39 40 41 42 43
                                sequence, dump it and exit. This is an
                                option useful for debugging
                                only.</p></dd><dt id="--dump-configuration-items"><span class="term"><code class="option">--dump-configuration-items</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-configuration-items"></a></dt><dd><p>Dump understood unit
                                configuration items. This outputs a
                                terse but complete list of
                                configuration items understood in unit
44
                                definition files.</p></dd><dt id="--unit="><span class="term"><code class="option">--unit=</code></span><a class="headerlink" title="Permalink to this term" href="#--unit="></a></dt><dd><p>Set default unit to
Michael Biebl's avatar
Michael Biebl committed
45
                                activate on startup. If not specified,
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
                                defaults to
                                <code class="filename">default.target</code>.</p></dd><dt id="--system"><span class="term"><code class="option">--system</code>, </span><span class="term"><code class="option">--user</code></span><a class="headerlink" title="Permalink to this term" href="#--system"></a></dt><dd><p>For <code class="option">--system</code>,
                                tell systemd to run a
                                system instance, even if the process ID is
                                not 1, i.e. systemd is not run as init process.
                                <code class="option">--user</code> does the opposite,
                                running a user instance even if the process
                                ID is 1.
                                Normally it should not be necessary to
                                pass these options, as systemd
                                automatically detects the mode it is
                                started in. These options are hence of
                                little use except for debugging. Note
                                that it is not supported booting and
                                maintaining a full system with systemd
                                running in <code class="option">--system</code>
                                mode, but PID not 1. In practice,
                                passing <code class="option">--system</code> explicitly is
                                only useful in conjunction with
                                <code class="option">--test</code>.</p></dd><dt id="--dump-core"><span class="term"><code class="option">--dump-core</code></span><a class="headerlink" title="Permalink to this term" href="#--dump-core"></a></dt><dd><p>Dump core on
                                crash. This switch has no effect when
                                run as user
                                instance.</p></dd><dt id="--crash-shell"><span class="term"><code class="option">--crash-shell</code></span><a class="headerlink" title="Permalink to this term" href="#--crash-shell"></a></dt><dd><p>Run shell on
                                crash. This switch has no effect when
                                run as user
                                instance.</p></dd><dt id="--confirm-spawn"><span class="term"><code class="option">--confirm-spawn</code></span><a class="headerlink" title="Permalink to this term" href="#--confirm-spawn"></a></dt><dd><p>Ask for confirmation
                                when spawning processes. This switch
                                has no effect when run as user
                                instance.</p></dd><dt id="--show-status="><span class="term"><code class="option">--show-status=</code></span><a class="headerlink" title="Permalink to this term" href="#--show-status="></a></dt><dd><p>Show terse service
                                status information while booting. This
                                switch has no effect when run as user
                                instance. Takes a boolean argument
                                which may be omitted which is
                                interpreted as
                                <code class="option">true</code>.</p></dd><dt id="--log-target="><span class="term"><code class="option">--log-target=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-target="></a></dt><dd><p>Set log
                                target. Argument must be one of
                                <code class="option">console</code>,
                                <code class="option">journal</code>,
                                <code class="option">syslog</code>,
                                <code class="option">kmsg</code>,
                                <code class="option">journal-or-kmsg</code>,
                                <code class="option">syslog-or-kmsg</code>,
                                <code class="option">null</code>.</p></dd><dt id="--log-level="><span class="term"><code class="option">--log-level=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-level="></a></dt><dd><p>Set log level. As
                                argument this accepts a numerical log
                                level or the well-known <a href="syslog.html"><span class="citerefentry"><span class="refentrytitle">syslog</span>(3)</span></a>
                                symbolic names (lowercase):
                                <code class="option">emerg</code>,
                                <code class="option">alert</code>,
                                <code class="option">crit</code>,
                                <code class="option">err</code>,
                                <code class="option">warning</code>,
                                <code class="option">notice</code>,
                                <code class="option">info</code>,
                                <code class="option">debug</code>.</p></dd><dt id="--log-color="><span class="term"><code class="option">--log-color=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-color="></a></dt><dd><p>Highlight important
                                log messages. Argument is a boolean
Michael Biebl's avatar
Michael Biebl committed
101
                                value. If the argument is omitted, it
102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
                                defaults to
                                <code class="option">true</code>.</p></dd><dt id="--log-location="><span class="term"><code class="option">--log-location=</code></span><a class="headerlink" title="Permalink to this term" href="#--log-location="></a></dt><dd><p>Include code location
                                in log messages. This is mostly
                                relevant for debugging
                                purposes. Argument is a boolean
                                value. If the argument is omitted
                                it defaults to
                                <code class="option">true</code>.</p></dd><dt id="--default-standard-output="><span class="term"><code class="option">--default-standard-output=</code>, </span><span class="term"><code class="option">--default-standard-error=</code></span><a class="headerlink" title="Permalink to this term" href="#--default-standard-output="></a></dt><dd><p>Sets the default
                                output or error output for all
                                services and sockets, respectively. That is, controls
                                the default for
                                <code class="option">StandardOutput=</code>
                                and <code class="option">StandardError=</code>
                                (see
                                <a href="systemd.exec.html"><span class="citerefentry"><span class="refentrytitle">systemd.exec</span>(5)</span></a>
                                for details). Takes one of
                                <code class="option">inherit</code>,
                                <code class="option">null</code>,
                                <code class="option">tty</code>,
                                <code class="option">journal</code>,
                                <code class="option">journal+console</code>,
                                <code class="option">syslog</code>,
                                <code class="option">syslog+console</code>,
                                <code class="option">kmsg</code>,
                                <code class="option">kmsg+console</code>.  If the
                                argument is omitted
                                <code class="option">--default-standard-output=</code>
                                defaults to <code class="option">journal</code>
                                and
                                <code class="option">--default-standard-error=</code>
                                to
133
                                <code class="option">inherit</code>.</p></dd><dt id="-h"><span class="term"><code class="option">-h</code>, </span><span class="term"><code class="option">--help</code></span><a class="headerlink" title="Permalink to this term" href="#-h"></a></dt><dd><p><a name="help-text"></a>Print a short help text and exit.
Michael Biebl's avatar
Michael Biebl committed
134
    </p></dd><dt id="--version"><span class="term"><code class="option">--version</code></span><a class="headerlink" title="Permalink to this term" href="#--version"></a></dt><dd><p><a name="version-text"></a>Print a short version string and exit.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189143952"></a><h2 id="Concepts">Concepts<a class="headerlink" title="Permalink to this headline" href="#Concepts"></a></h2><p>systemd provides a dependency system between
Michael Biebl's avatar
Michael Biebl committed
135 136 137 138 139 140
                various entities called "units" of 12 different
                types. Units encapsulate various objects that are
                relevant for system boot-up and maintenance. The
                majority of units are configured in unit configuration
                files, whose syntax and basic set of options is
                described in
141 142
                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
                however some are created automatically from other
Michael Biebl's avatar
Michael Biebl committed
143 144 145 146 147 148 149 150 151 152 153 154 155
                configuration, dynamically from system state or
                programmatically at runtime. Units may be "active"
                (meaning started, bound, plugged in, ..., depending on
                the unit type, see below), or "inactive" (meaning
                stopped, unbound, unplugged, ...), as well as in the
                process of being activated or deactivated,
                i.e. between the two states (these states are called
                "activating", "deactivating"). A special "failed"
                state is available as well, which is very similar to
                "inactive" and is entered when the service failed in
                some way (process returned error code on exit, or
                crashed, or an operation timed out). If this state is
                entered, the cause will be logged, for later
156 157 158
                reference. Note that the various unit types may have a
                number of additional substates, which are mapped to
                the five generalized unit states described
Michael Biebl's avatar
Michael Biebl committed
159
                here.</p><p>The following unit types are available:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Service units, which start and control
160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195
                        daemons and the processes they consist of. For
                        details see
                        <a href="systemd.service.html"><span class="citerefentry"><span class="refentrytitle">systemd.service</span>(5)</span></a>.</p></li><li class="listitem"><p>Socket units, which
                        encapsulate local IPC or network sockets in
                        the system, useful for socket-based
                        activation. For details about socket units see
                        <a href="systemd.socket.html"><span class="citerefentry"><span class="refentrytitle">systemd.socket</span>(5)</span></a>,
                        for details on socket-based activation and
                        other forms of activation, see
                        <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>.</p></li><li class="listitem"><p>Target units are useful to
                        group units, or provide well-known
                        synchronization points during boot-up, see
                        <a href="systemd.target.html"><span class="citerefentry"><span class="refentrytitle">systemd.target</span>(5)</span></a>.</p></li><li class="listitem"><p>Device units expose kernel
                        devices in systemd and may be used to
                        implement device-based activation. For details
                        see
                        <a href="systemd.device.html"><span class="citerefentry"><span class="refentrytitle">systemd.device</span>(5)</span></a>.</p></li><li class="listitem"><p>Mount units control mount
                        points in the file system, for details see
                        <a href="systemd.mount.html"><span class="citerefentry"><span class="refentrytitle">systemd.mount</span>(5)</span></a>.</p></li><li class="listitem"><p>Automount units provide
                        automount capabilities, for on-demand mounting
                        of file systems as well as parallelized
                        boot-up. See
                        <a href="systemd.automount.html"><span class="citerefentry"><span class="refentrytitle">systemd.automount</span>(5)</span></a>.</p></li><li class="listitem"><p>Snapshot units can be used to
                        temporarily save the state of the set of
                        systemd units, which later may be restored by
                        activating the saved snapshot unit. For more
                        information see
                        <a href="systemd.snapshot.html"><span class="citerefentry"><span class="refentrytitle">systemd.snapshot</span>(5)</span></a>.</p></li><li class="listitem"><p>Timer units are useful for
                        triggering activation of other units based on
                        timers. You may find details in
                        <a href="systemd.timer.html"><span class="citerefentry"><span class="refentrytitle">systemd.timer</span>(5)</span></a>.</p></li><li class="listitem"><p>Swap units are very similar to
                        mount units and encapsulate memory swap
                        partitions or files of the operating
                        system. They are described in <a href="systemd.swap.html"><span class="citerefentry"><span class="refentrytitle">systemd.swap</span>(5)</span></a>.</p></li><li class="listitem"><p>Path units may be used
                        to activate other services when file system
                        objects change or are modified. See
Michael Biebl's avatar
Michael Biebl committed
196 197 198 199 200 201 202 203 204
                        <a href="systemd.path.html"><span class="citerefentry"><span class="refentrytitle">systemd.path</span>(5)</span></a>.</p></li><li class="listitem"><p>Slice units may be used to
                        group units which manage system processes
                        (such as service and scope units) in a
                        hierarchical tree for resource management
                        purposes. See
                        <a href="systemd.slice.html"><span class="citerefentry"><span class="refentrytitle">systemd.slice</span>(5)</span></a>.</p></li><li class="listitem"><p>Scope units are similar to
                        service units, but manage foreign processes
                        instead of starting them as well. See
                        <a href="systemd.scope.html"><span class="citerefentry"><span class="refentrytitle">systemd.scope</span>(5)</span></a>.</p></li></ol></div><p>Units are named as their configuration
205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
                files. Some units have special semantics. A detailed
                list is available in
                <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>.</p><p>systemd knows various kinds of dependencies,
                including positive and negative requirement
                dependencies (i.e. <code class="varname">Requires=</code> and
                <code class="varname">Conflicts=</code>) as well as ordering
                dependencies (<code class="varname">After=</code> and
                <code class="varname">Before=</code>). NB: ordering and
                requirement dependencies are orthogonal. If only a
                requirement dependency exists between two units
                (e.g. <code class="filename">foo.service</code> requires
                <code class="filename">bar.service</code>), but no ordering
                dependency (e.g. <code class="filename">foo.service</code>
                after <code class="filename">bar.service</code>) and both are
                requested to start, they will be started in
                parallel. It is a common pattern that both requirement
                and ordering dependencies are placed between two
                units. Also note that the majority of dependencies are
                implicitly created and maintained by systemd. In most
224
                cases, it should be unnecessary to declare additional
225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241
                dependencies manually, however it is possible to do
                this.</p><p>Application programs and units (via
                dependencies) may request state changes of units. In
                systemd, these requests are encapsulated as 'jobs' and
                maintained in a job queue. Jobs may succeed or can
                fail, their execution is ordered based on the ordering
                dependencies of the units they have been scheduled
                for.</p><p>On boot systemd activates the target unit
                <code class="filename">default.target</code> whose job is to
                activate on-boot services and other on-boot units by
                pulling them in via dependencies. Usually the unit
                name is just an alias (symlink) for either
                <code class="filename">graphical.target</code> (for
                fully-featured boots into the UI) or
                <code class="filename">multi-user.target</code> (for limited
                console-only boots for use in embedded or server
                environments, or similar; a subset of
Michael Biebl's avatar
Michael Biebl committed
242
                graphical.target). However, it is at the discretion of
243 244 245 246 247 248
                the administrator to configure it as an alias to any
                other target unit. See
                <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>
                for details about these target units.</p><p>Processes systemd spawns are placed in
                individual Linux control groups named after the unit
                which they belong to in the private systemd
Michael Biebl's avatar
Michael Biebl committed
249
                hierarchy. (see <a class="ulink" href="https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt" target="_top">cgroups.txt</a>
250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290
                for more information about control groups, or short
                "cgroups"). systemd uses this to effectively keep
                track of processes. Control group information is
                maintained in the kernel, and is accessible via the
                file system hierarchy (beneath
                <code class="filename">/sys/fs/cgroup/systemd/</code>), or in tools
                such as
                <a href="ps.html"><span class="citerefentry"><span class="refentrytitle">ps</span>(1)</span></a>
                (<span class="command"><strong>ps xawf -eo pid,user,cgroup,args</strong></span>
                is particularly useful to list all processes and the
                systemd units they belong to.).</p><p>systemd is compatible with the SysV init system
                to a large degree: SysV init scripts are supported and
                simply read as an alternative (though limited)
                configuration file format. The SysV
                <code class="filename">/dev/initctl</code> interface is
                provided, and compatibility implementations of the
                various SysV client tools are available. In addition to
                that, various established Unix functionality such as
                <code class="filename">/etc/fstab</code> or the
                <code class="filename">utmp</code> database are
                supported.</p><p>systemd has a minimal transaction system: if a
                unit is requested to start up or shut down it will add
                it and all its dependencies to a temporary
                transaction. Then, it will verify if the transaction
                is consistent (i.e. whether the ordering of all units
                is cycle-free). If it is not, systemd will try to fix
                it up, and removes non-essential jobs from the
                transaction that might remove the loop. Also, systemd
                tries to suppress non-essential jobs in the
                transaction that would stop a running service. Finally
                it is checked whether the jobs of the transaction
                contradict jobs that have already been queued, and
                optionally the transaction is aborted then. If all
                worked out and the transaction is consistent and
                minimized in its impact it is merged with all already
                outstanding jobs and added to the run
                queue. Effectively this means that before executing a
                requested operation, systemd will verify that it makes
                sense, fixing it if possible, and only failing if it
                really cannot work.</p><p>Systemd contains native implementations of
                various tasks that need to be executed as part of the
Michael Biebl's avatar
Michael Biebl committed
291
                boot process. For example, it sets the hostname or
292 293 294 295
                configures the loopback network device. It also sets
                up and mounts various API file systems, such as
                <code class="filename">/sys</code> or
                <code class="filename">/proc</code>.</p><p>For more information about the concepts and
296
                ideas behind systemd, please refer to the <a class="ulink" href="http://0pointer.de/blog/projects/systemd.html" target="_top">Original
297 298 299 300 301 302 303 304 305 306
                Design Document</a>.</p><p>Note that some but not all interfaces provided
                by systemd are covered by the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/InterfaceStabilityPromise" target="_top">Interface
                Stability Promise</a>.</p><p>Units may be generated dynamically at boot and
                system manager reload time, for example based on other
                configuration files or parameters passed on the kernel
                command line. For details see the <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/Generators" target="_top">Generators
                Specification</a>.</p><p>Systems which invoke systemd in a container
                or initrd environment should implement the
                <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface" target="_top">Container
                Interface</a> or <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/InitrdInterface" target="_top">initrd
Michael Biebl's avatar
Michael Biebl committed
307
                Interface</a> specifications, respectively.</p></div><div class="refsect1"><a name="idm214189453632"></a><h2 id="Directories">Directories<a class="headerlink" title="Permalink to this headline" href="#Directories"></a></h2><div class="variablelist"><dl class="variablelist"><dt id="System unit directories"><span class="term">System unit directories</span><a class="headerlink" title="Permalink to this term" href="#System%20unit%20directories"></a></dt><dd><p>The systemd system
308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370
                                manager reads unit configuration from
                                various directories. Packages that
                                want to install unit files shall place
                                them in the directory returned by
                                <span class="command"><strong>pkg-config systemd
                                --variable=systemdsystemunitdir</strong></span>. Other
                                directories checked are
                                <code class="filename">/usr/local/lib/systemd/system</code>
                                and
                                <code class="filename">/usr/lib/systemd/system</code>. User
                                configuration always takes
                                precedence. <span class="command"><strong>pkg-config
                                systemd
                                --variable=systemdsystemconfdir</strong></span>
                                returns the path of the system
                                configuration directory. Packages
                                should alter the content of these
                                directories only with the
                                <span class="command"><strong>enable</strong></span> and
                                <span class="command"><strong>disable</strong></span> commands of
                                the
                                <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>
                                tool. Full list of directories is provided in
                                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>.
                                </p></dd></dl></div><div class="variablelist"><dl class="variablelist"><dt id="User unit directories"><span class="term">User unit directories</span><a class="headerlink" title="Permalink to this term" href="#User%20unit%20directories"></a></dt><dd><p>Similar rules apply
                                for the user unit
                                directories. However, here the <a class="ulink" href="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html" target="_top">XDG
                                Base Directory specification</a>
                                is followed to find
                                units. Applications should place their
                                unit files in the directory returned
                                by <span class="command"><strong>pkg-config systemd
                                --variable=systemduserunitdir</strong></span>. Global
                                configuration is done in the directory
                                reported by <span class="command"><strong>pkg-config
                                systemd
                                --variable=systemduserconfdir</strong></span>. The
                                <span class="command"><strong>enable</strong></span> and
                                <span class="command"><strong>disable</strong></span> commands of
                                the
                                <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>
                                tool can handle both global (i.e. for
                                all users) and private (for one user)
                                enabling/disabling of
                                units. Full list of directories is provided in
                                <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>.
                                </p></dd></dl></div><div class="variablelist"><dl class="variablelist"><dt id="SysV init scripts directory"><span class="term">SysV init scripts directory</span><a class="headerlink" title="Permalink to this term" href="#SysV%20init%20scripts%20directory"></a></dt><dd><p>The location of the
                                SysV init script directory varies
                                between distributions. If systemd
                                cannot find a native unit file for a
                                requested service, it will look for a
                                SysV init script of the same name
                                (with the
                                <code class="filename">.service</code> suffix
                                removed).</p></dd></dl></div><div class="variablelist"><dl class="variablelist"><dt id="SysV runlevel link farm directory"><span class="term">SysV runlevel link farm directory</span><a class="headerlink" title="Permalink to this term" href="#SysV%20runlevel%20link%20farm%20directory"></a></dt><dd><p>The location of the
                                SysV runlevel link farm directory
                                varies between distributions. systemd
                                will take the link farm into account
                                when figuring out whether a service
                                shall be enabled. Note that a service
                                unit with a native unit configuration
                                file cannot be started by activating it
                                in the SysV runlevel link
Michael Biebl's avatar
Michael Biebl committed
371
                                farm.</p></dd></dl></div></div><div class="refsect1"><a name="idm214189693872"></a><h2 id="Signals">Signals<a class="headerlink" title="Permalink to this headline" href="#Signals"></a></h2><div class="variablelist"><dl class="variablelist"><dt id="SIGTERM"><span class="term"><code class="constant">SIGTERM</code></span><a class="headerlink" title="Permalink to this term" href="#SIGTERM"></a></dt><dd><p>Upon receiving this
372 373 374 375 376 377 378 379 380 381 382
                                signal the systemd system manager
                                serializes its state, reexecutes
                                itself and deserializes the saved
                                state again. This is mostly equivalent
                                to <span class="command"><strong>systemctl
                                daemon-reexec</strong></span>.</p><p>systemd user managers will
                                start the
                                <code class="filename">exit.target</code> unit
                                when this signal is received. This is
                                mostly equivalent to
                                <span class="command"><strong>systemctl --user start
Michael Biebl's avatar
Michael Biebl committed
383
                                exit.target</strong></span>.</p></dd><dt id="SIGINT"><span class="term"><code class="constant">SIGINT</code></span><a class="headerlink" title="Permalink to this term" href="#SIGINT"></a></dt><dd><p>Upon receiving this
384 385 386 387 388 389 390
                                signal the systemd system manager will
                                start the
                                <code class="filename">ctrl-alt-del.target</code> unit. This
                                is mostly equivalent to
                                <span class="command"><strong>systemctl start
                                ctl-alt-del.target</strong></span>.</p><p>systemd user managers
                                treat this signal the same way as
Michael Biebl's avatar
Michael Biebl committed
391
                                <code class="constant">SIGTERM</code>.</p></dd><dt id="SIGWINCH"><span class="term"><code class="constant">SIGWINCH</code></span><a class="headerlink" title="Permalink to this term" href="#SIGWINCH"></a></dt><dd><p>When this signal is
392 393 394 395 396 397 398
                                received the systemd system manager
                                will start the
                                <code class="filename">kbrequest.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
                                kbrequest.target</strong></span>.</p><p>This signal is ignored by
                                systemd user
Michael Biebl's avatar
Michael Biebl committed
399
                                managers.</p></dd><dt id="SIGPWR"><span class="term"><code class="constant">SIGPWR</code></span><a class="headerlink" title="Permalink to this term" href="#SIGPWR"></a></dt><dd><p>When this signal is
400 401 402 403 404
                                received the systemd manager
                                will start the
                                <code class="filename">sigpwr.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
Michael Biebl's avatar
Michael Biebl committed
405
                                sigpwr.target</strong></span>.</p></dd><dt id="SIGUSR1"><span class="term"><code class="constant">SIGUSR1</code></span><a class="headerlink" title="Permalink to this term" href="#SIGUSR1"></a></dt><dd><p>When this signal is
406 407
                                received the systemd manager will try
                                to reconnect to the D-Bus
Michael Biebl's avatar
Michael Biebl committed
408
                                bus.</p></dd><dt id="SIGUSR2"><span class="term"><code class="constant">SIGUSR2</code></span><a class="headerlink" title="Permalink to this term" href="#SIGUSR2"></a></dt><dd><p>When this signal is
409 410 411 412
                                received the systemd manager will log
                                its complete state in human readable
                                form. The data logged is the same as
                                printed by <span class="command"><strong>systemctl
Michael Biebl's avatar
Michael Biebl committed
413
                                dump</strong></span>.</p></dd><dt id="SIGHUP"><span class="term"><code class="constant">SIGHUP</code></span><a class="headerlink" title="Permalink to this term" href="#SIGHUP"></a></dt><dd><p>Reloads the complete
414 415
                                daemon configuration. This is mostly
                                equivalent to <span class="command"><strong>systemctl
Michael Biebl's avatar
Michael Biebl committed
416
                                daemon-reload</strong></span>.</p></dd><dt id="SIGRTMIN+0"><span class="term"><code class="constant">SIGRTMIN+0</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+0"></a></dt><dd><p>Enters default mode, starts the
417 418 419
                                <code class="filename">default.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
Michael Biebl's avatar
Michael Biebl committed
420
                                default.target</strong></span>.</p></dd><dt id="SIGRTMIN+1"><span class="term"><code class="constant">SIGRTMIN+1</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+1"></a></dt><dd><p>Enters rescue mode,
421 422 423 424
                                starts the
                                <code class="filename">rescue.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl isolate
Michael Biebl's avatar
Michael Biebl committed
425
                                rescue.target</strong></span>.</p></dd><dt id="SIGRTMIN+2"><span class="term"><code class="constant">SIGRTMIN+2</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+2"></a></dt><dd><p>Enters emergency mode,
426 427 428 429
                                starts the
                                <code class="filename">emergency.service</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl isolate
Michael Biebl's avatar
Michael Biebl committed
430
                                emergency.service</strong></span>.</p></dd><dt id="SIGRTMIN+3"><span class="term"><code class="constant">SIGRTMIN+3</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+3"></a></dt><dd><p>Halts the machine,
431 432 433 434
                                starts the
                                <code class="filename">halt.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
Michael Biebl's avatar
Michael Biebl committed
435
                                halt.target</strong></span>.</p></dd><dt id="SIGRTMIN+4"><span class="term"><code class="constant">SIGRTMIN+4</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+4"></a></dt><dd><p>Powers off the machine,
436 437 438 439
                                starts the
                                <code class="filename">poweroff.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
Michael Biebl's avatar
Michael Biebl committed
440
                                poweroff.target</strong></span>.</p></dd><dt id="SIGRTMIN+5"><span class="term"><code class="constant">SIGRTMIN+5</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+5"></a></dt><dd><p>Reboots the machine,
441 442 443 444
                                starts the
                                <code class="filename">reboot.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
Michael Biebl's avatar
Michael Biebl committed
445
                                reboot.target</strong></span>.</p></dd><dt id="SIGRTMIN+6"><span class="term"><code class="constant">SIGRTMIN+6</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+6"></a></dt><dd><p>Reboots the machine via kexec,
446 447 448 449
                                starts the
                                <code class="filename">kexec.target</code>
                                unit. This is mostly equivalent to
                                <span class="command"><strong>systemctl start
Michael Biebl's avatar
Michael Biebl committed
450
                                kexec.target</strong></span>.</p></dd><dt id="SIGRTMIN+13"><span class="term"><code class="constant">SIGRTMIN+13</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+13"></a></dt><dd><p>Immediately halts the machine.</p></dd><dt id="SIGRTMIN+14"><span class="term"><code class="constant">SIGRTMIN+14</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+14"></a></dt><dd><p>Immediately powers off the machine.</p></dd><dt id="SIGRTMIN+15"><span class="term"><code class="constant">SIGRTMIN+15</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+15"></a></dt><dd><p>Immediately reboots the machine.</p></dd><dt id="SIGRTMIN+16"><span class="term"><code class="constant">SIGRTMIN+16</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+16"></a></dt><dd><p>Immediately reboots the machine with kexec.</p></dd><dt id="SIGRTMIN+20"><span class="term"><code class="constant">SIGRTMIN+20</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+20"></a></dt><dd><p>Enables display of
451 452 453 454
                                status messages on the console, as
                                controlled via
                                <code class="varname">systemd.show_status=1</code>
                                on the kernel command
Michael Biebl's avatar
Michael Biebl committed
455
                                line.</p></dd><dt id="SIGRTMIN+21"><span class="term"><code class="constant">SIGRTMIN+21</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+21"></a></dt><dd><p>Disables display of
456 457 458 459
                                status messages on the console, as
                                controlled via
                                <code class="varname">systemd.show_status=0</code>
                                on the kernel command
Michael Biebl's avatar
Michael Biebl committed
460 461 462 463
                                line.</p></dd><dt id="SIGRTMIN+22"><span class="term"><code class="constant">SIGRTMIN+22</code>, </span><span class="term"><code class="constant">SIGRTMIN+23</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+22"></a></dt><dd><p>Sets the log level to
                                "<code class="literal">debug</code>"
                                (or "<code class="literal">info</code>" on
                                <code class="constant">SIGRTMIN+23</code>), as
464 465 466
                                controlled via
                                <code class="varname">systemd.log_level=debug</code>
                                (or <code class="varname">systemd.log_level=info</code>
Michael Biebl's avatar
Michael Biebl committed
467
                                on <code class="constant">SIGRTMIN+23</code>) on
468
                                the kernel command
Michael Biebl's avatar
Michael Biebl committed
469
                                line.</p></dd><dt id="SIGRTMIN+24"><span class="term"><code class="constant">SIGRTMIN+24</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+24"></a></dt><dd><p>Immediately exits the
470
                                manager (only available for --user
Michael Biebl's avatar
Michael Biebl committed
471 472 473 474 475 476 477 478
                                instances).</p></dd><dt id="SIGRTMIN+26"><span class="term"><code class="constant">SIGRTMIN+26</code>, </span><span class="term"><code class="constant">SIGRTMIN+27</code>, </span><span class="term"><code class="constant">SIGRTMIN+28</code>, </span><span class="term"><code class="constant">SIGRTMIN+29</code></span><a class="headerlink" title="Permalink to this term" href="#SIGRTMIN+26"></a></dt><dd><p>Sets the log level to
                                "<code class="literal">journal-or-kmsg</code>"
                                (or "<code class="literal">console</code>" on
                                <code class="constant">SIGRTMIN+27</code>,
                                "<code class="literal">kmsg</code>" on
                                <code class="constant">SIGRTMIN+28</code>,
                                or "<code class="literal">syslog-or-kmsg</code>"
                                on <code class="constant">SIGRTMIN+29</code>), as
479 480 481
                                controlled via
                                <code class="varname">systemd.log_target=journal-or-kmsg</code>
                                (or <code class="varname">systemd.log_target=console</code>
Michael Biebl's avatar
Michael Biebl committed
482
                                on <code class="constant">SIGRTMIN+27</code>,
483
                                <code class="varname">systemd.log_target=kmsg</code>
Michael Biebl's avatar
Michael Biebl committed
484
                                on <code class="constant">SIGRTMIN+28</code>,
485 486
                                or
                                <code class="varname">systemd.log_target=syslog-or-kmsg</code>
Michael Biebl's avatar
Michael Biebl committed
487
                                on <code class="constant">SIGRTMIN+29</code>) on
488
                                the kernel command
Michael Biebl's avatar
Michael Biebl committed
489
                                line.</p></dd></dl></div></div><div class="refsect1"><a name="idm214191284560"></a><h2 id="Environment">Environment<a class="headerlink" title="Permalink to this headline" href="#Environment"></a></h2><div class="variablelist"><dl class="variablelist"><dt id="$SYSTEMD_LOG_LEVEL"><span class="term"><code class="varname">$SYSTEMD_LOG_LEVEL</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LEVEL"></a></dt><dd><p>systemd reads the
490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520
                                log level from this environment
                                variable. This can be overridden with
                                <code class="option">--log-level=</code>.</p></dd><dt id="$SYSTEMD_LOG_TARGET"><span class="term"><code class="varname">$SYSTEMD_LOG_TARGET</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_TARGET"></a></dt><dd><p>systemd reads the
                                log target from this environment
                                variable. This can be overridden with
                                <code class="option">--log-target=</code>.</p></dd><dt id="$SYSTEMD_LOG_COLOR"><span class="term"><code class="varname">$SYSTEMD_LOG_COLOR</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_COLOR"></a></dt><dd><p>Controls whether
                                systemd highlights important log
                                messages. This can be overridden with
                                <code class="option">--log-color=</code>.</p></dd><dt id="$SYSTEMD_LOG_LOCATION"><span class="term"><code class="varname">$SYSTEMD_LOG_LOCATION</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_LOG_LOCATION"></a></dt><dd><p>Controls whether
                                systemd prints the code location along
                                with log messages. This can be
                                overridden with
                                <code class="option">--log-location=</code>.</p></dd><dt id="$XDG_CONFIG_HOME"><span class="term"><code class="varname">$XDG_CONFIG_HOME</code>, </span><span class="term"><code class="varname">$XDG_CONFIG_DIRS</code>, </span><span class="term"><code class="varname">$XDG_DATA_HOME</code>, </span><span class="term"><code class="varname">$XDG_DATA_DIRS</code></span><a class="headerlink" title="Permalink to this term" href="#%24XDG_CONFIG_HOME"></a></dt><dd><p>The systemd user
                                manager uses these variables in
                                accordance to the <a class="ulink" href="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html" target="_top">XDG
                                Base Directory specification</a>
                                to find its configuration.</p></dd><dt id="$SYSTEMD_UNIT_PATH"><span class="term"><code class="varname">$SYSTEMD_UNIT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_UNIT_PATH"></a></dt><dd><p>Controls where systemd
                                looks for unit
                                files.</p></dd><dt id="$SYSTEMD_SYSVINIT_PATH"><span class="term"><code class="varname">$SYSTEMD_SYSVINIT_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_SYSVINIT_PATH"></a></dt><dd><p>Controls where systemd
                                looks for SysV init scripts.</p></dd><dt id="$SYSTEMD_SYSVRCND_PATH"><span class="term"><code class="varname">$SYSTEMD_SYSVRCND_PATH</code></span><a class="headerlink" title="Permalink to this term" href="#%24SYSTEMD_SYSVRCND_PATH"></a></dt><dd><p>Controls where systemd
                                looks for SysV init script runlevel link
                                farms.</p></dd><dt id="$LISTEN_PID"><span class="term"><code class="varname">$LISTEN_PID</code>, </span><span class="term"><code class="varname">$LISTEN_FDS</code></span><a class="headerlink" title="Permalink to this term" href="#%24LISTEN_PID"></a></dt><dd><p>Set by systemd for
                                supervised processes during
                                socket-based activation. See
                                <a href="sd_listen_fds.html"><span class="citerefentry"><span class="refentrytitle">sd_listen_fds</span>(3)</span></a>
                                for more information.
                                </p></dd><dt id="$NOTIFY_SOCKET"><span class="term"><code class="varname">$NOTIFY_SOCKET</code></span><a class="headerlink" title="Permalink to this term" href="#%24NOTIFY_SOCKET"></a></dt><dd><p>Set by systemd for
                                supervised processes for status and
                                start-up completion notification. See
                                <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>
                                for more information.
Michael Biebl's avatar
Michael Biebl committed
521
                                </p></dd></dl></div></div><div class="refsect1"><a name="idm214191260432"></a><h2 id="Kernel Command Line">Kernel Command Line<a class="headerlink" title="Permalink to this headline" href="#Kernel%20Command%20Line"></a></h2><p>When run as system instance systemd parses a
522
                number of kernel command line
Michael Biebl's avatar
Michael Biebl committed
523
                arguments<a href="#ftn.idm214191259376" class="footnote" name="idm214191259376"><sup class="footnote">[1]</sup></a>:</p><div class="variablelist"><dl class="variablelist"><dt id="systemd.unit="><span class="term"><code class="varname">systemd.unit=</code>, </span><span class="term"><code class="varname">rd.systemd.unit=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.unit="></a></dt><dd><p>Overrides the unit to
524 525 526 527 528 529 530 531 532
                                activate on boot. Defaults to
                                <code class="filename">default.target</code>. This
                                may be used to temporarily boot into a
                                different boot unit, for example
                                <code class="filename">rescue.target</code> or
                                <code class="filename">emergency.service</code>. See
                                <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(7)</span></a>
                                for details about these units. The
                                option prefixed with
Michael Biebl's avatar
Michael Biebl committed
533
                                "<code class="literal">rd.</code>" is honored
534
                                only in the initial RAM disk (initrd),
Michael Biebl's avatar
Michael Biebl committed
535
                                while the one that is not prefixed only
536
                                in the main system.</p></dd><dt id="systemd.dump_core="><span class="term"><code class="varname">systemd.dump_core=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.dump_core="></a></dt><dd><p>Takes a boolean
Michael Biebl's avatar
Michael Biebl committed
537
                                argument. If <code class="option">true</code>,
538
                                systemd dumps core when it
Michael Biebl's avatar
Michael Biebl committed
539
                                crashes. Otherwise, no core dump is
540 541
                                created. Defaults to
                                <code class="option">true</code>.</p></dd><dt id="systemd.crash_shell="><span class="term"><code class="varname">systemd.crash_shell=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.crash_shell="></a></dt><dd><p>Takes a boolean
Michael Biebl's avatar
Michael Biebl committed
542
                                argument. If <code class="option">true</code>,
543
                                systemd spawns a shell when it
Michael Biebl's avatar
Michael Biebl committed
544
                                crashes. Otherwise, no shell is
545 546 547 548 549 550 551 552
                                spawned. Defaults to
                                <code class="option">false</code>, for security
                                reasons, as the shell is not protected
                                by any password
                                authentication.</p></dd><dt id="systemd.crash_chvt="><span class="term"><code class="varname">systemd.crash_chvt=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.crash_chvt="></a></dt><dd><p>Takes an integer
                                argument. If positive systemd
                                activates the specified virtual
                                terminal when it crashes. Defaults to
Michael Biebl's avatar
Michael Biebl committed
553 554
                                <code class="constant">-1</code>.</p></dd><dt id="systemd.confirm_spawn="><span class="term"><code class="varname">systemd.confirm_spawn=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.confirm_spawn="></a></dt><dd><p>Takes a boolean
                                argument. If <code class="option">true</code>,
555 556 557
                                asks for confirmation when spawning
                                processes. Defaults to
                                <code class="option">false</code>.</p></dd><dt id="systemd.show_status="><span class="term"><code class="varname">systemd.show_status=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.show_status="></a></dt><dd><p>Takes a boolean
558 559 560 561 562 563 564 565 566
                                argument or the constant
                                <code class="constant">auto</code>. If
                                <code class="option">true</code>, shows terse
                                service status updates on the console
                                during bootup.
                                <code class="constant">auto</code> behaves like
                                <code class="option">false</code> until a service
                                fails or there is a significant delay
                                in boot. Defaults to
567 568 569 570
                                <code class="option">true</code>, unless
                                <code class="option">quiet</code> is passed as
                                kernel command line option in which
                                case it defaults to
571
                                <code class="constant">auto</code>.</p></dd><dt id="systemd.log_target="><span class="term"><code class="varname">systemd.log_target=</code>, </span><span class="term"><code class="varname">systemd.log_level=</code>, </span><span class="term"><code class="varname">systemd.log_color=</code>, </span><span class="term"><code class="varname">systemd.log_location=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.log_target="></a></dt><dd><p>Controls log output,
572 573 574 575 576 577 578 579 580
                                with the same effect as the
                                <code class="varname">$SYSTEMD_LOG_TARGET</code>, <code class="varname">$SYSTEMD_LOG_LEVEL</code>, <code class="varname">$SYSTEMD_LOG_COLOR</code>, <code class="varname">$SYSTEMD_LOG_LOCATION</code>
                                environment variables described above.</p></dd><dt id="systemd.default_standard_output="><span class="term"><code class="varname">systemd.default_standard_output=</code>, </span><span class="term"><code class="varname">systemd.default_standard_error=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.default_standard_output="></a></dt><dd><p>Controls default
                                standard output and error output for
                                services, with the same effect as the
                                <code class="option">--default-standard-output=</code>
                                and <code class="option">--default-standard-error=</code>
                                command line arguments described
                                above, respectively.</p></dd><dt id="systemd.setenv="><span class="term"><code class="varname">systemd.setenv=</code></span><a class="headerlink" title="Permalink to this term" href="#systemd.setenv="></a></dt><dd><p>Takes a string
Michael Biebl's avatar
Michael Biebl committed
581 582 583 584 585
                                argument in the form VARIABLE=VALUE.
                                May be used to set default environment
                                variables to add to forked child processes.
                                May be used more than once to set multiple
                                variables.</p></dd><dt id="quiet"><span class="term"><code class="varname">quiet</code></span><a class="headerlink" title="Permalink to this term" href="#quiet"></a></dt><dd><p>Turn off
586 587 588 589
                                status output at boot, much like
                                <code class="varname">systemd.show_status=false</code>
                                would. Note that this option is also
                                read by the kernel itself and disables
Michael Biebl's avatar
Michael Biebl committed
590 591 592 593 594 595 596 597 598 599 600
                                kernel log output. Passing this option
                                hence turns off the usual output from
                                both the system manager and the kernel.
                                </p></dd><dt id="debug"><span class="term"><code class="varname">debug</code></span><a class="headerlink" title="Permalink to this term" href="#debug"></a></dt><dd><p>Turn on debugging
                                output. This is equivalent to
                                <code class="varname">systemd.log_level=debug</code>.
                                Note that this option is also read by
                                the kernel itself and enables kernel
                                debug output.  Passing this option
                                hence turns on the debug output from
                                both the system manager and the
601
                                kernel.</p></dd><dt id="-b"><span class="term"><code class="varname">-b</code>, </span><span class="term"><code class="varname">emergency</code></span><a class="headerlink" title="Permalink to this term" href="#-b"></a></dt><dd><p>Boot into emergency
602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628
                                mode. This is equivalent to
                                <code class="varname">systemd.unit=emergency.target</code>
                                and provided for compatibility
                                reasons and to be easier to type.</p></dd><dt id="single"><span class="term"><code class="varname">single</code>, </span><span class="term"><code class="varname">s</code>, </span><span class="term"><code class="varname">S</code>, </span><span class="term"><code class="varname">1</code></span><a class="headerlink" title="Permalink to this term" href="#single"></a></dt><dd><p>Boot into rescue
                                mode. This is equivalent to
                                <code class="varname">systemd.unit=rescue.target</code>
                                and provided for compatibility reasons
                                and to be easier to
                                type.</p></dd><dt id="2"><span class="term"><code class="varname">2</code>, </span><span class="term"><code class="varname">3</code>, </span><span class="term"><code class="varname">4</code>, </span><span class="term"><code class="varname">5</code></span><a class="headerlink" title="Permalink to this term" href="#2"></a></dt><dd><p>Boot into the
                                specified legacy SysV runlevel. These
                                are equivalent to
                                <code class="varname">systemd.unit=runlevel2.target</code>,
                                <code class="varname">systemd.unit=runlevel3.target</code>,
                                <code class="varname">systemd.unit=runlevel4.target</code>,
                                and <code class="varname">systemd.unit=runlevel5.target</code>, respectively,
                                and provided for compatibility reasons
                                and to be easier to
                                type.</p></dd><dt id="locale.LANG="><span class="term"><code class="varname">locale.LANG=</code>, </span><span class="term"><code class="varname">locale.LANGUAGE=</code>, </span><span class="term"><code class="varname">locale.LC_CTYPE=</code>, </span><span class="term"><code class="varname">locale.LC_NUMERIC=</code>, </span><span class="term"><code class="varname">locale.LC_TIME=</code>, </span><span class="term"><code class="varname">locale.LC_COLLATE=</code>, </span><span class="term"><code class="varname">locale.LC_MONETARY=</code>, </span><span class="term"><code class="varname">locale.LC_MESSAGES=</code>, </span><span class="term"><code class="varname">locale.LC_PAPER=</code>, </span><span class="term"><code class="varname">locale.LC_NAME=</code>, </span><span class="term"><code class="varname">locale.LC_ADDRESS=</code>, </span><span class="term"><code class="varname">locale.LC_TELEPHONE=</code>, </span><span class="term"><code class="varname">locale.LC_MEASUREMENT=</code>, </span><span class="term"><code class="varname">locale.LC_IDENTIFICATION=</code></span><a class="headerlink" title="Permalink to this term" href="#locale.LANG="></a></dt><dd><p>Set the system locale
                                to use. This overrides the settings in
                                <code class="filename">/etc/locale.conf</code>. For
                                more information see
                                <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>
                                and
                                <a href="locale.html"><span class="citerefentry"><span class="refentrytitle">locale</span>(7)</span></a>.
                                </p></dd></dl></div><p>For other kernel command line parameters
                understood by components of the core OS, please refer
                to
Michael Biebl's avatar
Michael Biebl committed
629
                <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>.</p></div><div class="refsect1"><a name="idm214187977552"></a><h2 id="Sockets and FIFOs">Sockets and FIFOs<a class="headerlink" title="Permalink to this headline" href="#Sockets%20and%20FIFOs"></a></h2><div class="variablelist"><dl class="variablelist"><dt id="/run/systemd/notify"><span class="term"><code class="filename">/run/systemd/notify</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/notify"></a></dt><dd><p>Daemon status
630
                                notification socket. This is an
Michael Biebl's avatar
Michael Biebl committed
631
                                <code class="constant">AF_UNIX</code> datagram socket and is used to
632 633 634 635 636
                                implement the daemon notification
                                logic as implemented by
                                <a href="sd_notify.html"><span class="citerefentry"><span class="refentrytitle">sd_notify</span>(3)</span></a>.</p></dd><dt id="/run/systemd/shutdownd"><span class="term"><code class="filename">/run/systemd/shutdownd</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/shutdownd"></a></dt><dd><p>Used internally by the
                                <a href="shutdown.html"><span class="citerefentry"><span class="refentrytitle">shutdown</span>(8)</span></a>
                                tool to implement delayed
Michael Biebl's avatar
Michael Biebl committed
637
                                shutdowns. This is an <code class="constant">AF_UNIX</code> datagram
638 639 640 641
                                socket.</p></dd><dt id="/run/systemd/private"><span class="term"><code class="filename">/run/systemd/private</code></span><a class="headerlink" title="Permalink to this term" href="#/run/systemd/private"></a></dt><dd><p>Used internally as
                                communication channel between
                                <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>
                                and the systemd process. This is an
Michael Biebl's avatar
Michael Biebl committed
642
                                <code class="constant">AF_UNIX</code> stream socket. This interface
643 644 645 646 647 648 649 650 651
                                is private to systemd and should not
                                be used in external
                                projects.</p></dd><dt id="/dev/initctl"><span class="term"><code class="filename">/dev/initctl</code></span><a class="headerlink" title="Permalink to this term" href="#/dev/initctl"></a></dt><dd><p>Limited compatibility
                                support for the SysV client interface,
                                as implemented by the
                                <code class="filename">systemd-initctl.service</code>
                                unit. This is a named pipe in the file
                                system. This interface is obsolete and
                                should not be used in new
Michael Biebl's avatar
Michael Biebl committed
652
                                applications.</p></dd></dl></div></div><div class="refsect1"><a name="idm214187964368"></a><h2 id="See Also">See Also<a class="headerlink" title="Permalink to this headline" href="#See%20Also"></a></h2><p>
Michael Biebl's avatar
Michael Biebl committed
653
                        The <a class="ulink" href="http://www.freedesktop.org/wiki/Software/systemd/" target="_top">systemd Homepage</a>,
654 655 656 657 658 659 660 661 662 663 664 665 666
                        <a href="systemd-system.conf.html"><span class="citerefentry"><span class="refentrytitle">systemd-system.conf</span>(5)</span></a>,
                        <a href="locale.conf.html"><span class="citerefentry"><span class="refentrytitle">locale.conf</span>(5)</span></a>,
                        <a href="systemctl.html"><span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></a>,
                        <a href="journalctl.html"><span class="citerefentry"><span class="refentrytitle">journalctl</span>(1)</span></a>,
                        <a href="systemd-notify.html"><span class="citerefentry"><span class="refentrytitle">systemd-notify</span>(1)</span></a>,
                        <a href="daemon.html"><span class="citerefentry"><span class="refentrytitle">daemon</span>(7)</span></a>,
                        <a href="sd-daemon.html"><span class="citerefentry"><span class="refentrytitle">sd-daemon</span>(3)</span></a>,
                        <a href="systemd.unit.html"><span class="citerefentry"><span class="refentrytitle">systemd.unit</span>(5)</span></a>,
                        <a href="systemd.special.html"><span class="citerefentry"><span class="refentrytitle">systemd.special</span>(5)</span></a>,
                        <a href="pkg-config.html"><span class="citerefentry"><span class="refentrytitle">pkg-config</span>(1)</span></a>,
                        <a href="kernel-command-line.html"><span class="citerefentry"><span class="refentrytitle">kernel-command-line</span>(7)</span></a>,
                        <a href="bootup.html"><span class="citerefentry"><span class="refentrytitle">bootup</span>(7)</span></a>,
                        <a href="systemd.directives.html"><span class="citerefentry"><span class="refentrytitle">systemd.directives</span>(7)</span></a>
Michael Biebl's avatar
Michael Biebl committed
667
                </p></div><div class="footnotes"><br><hr style="width:100; text-align:left;margin-left: 0"><div id="ftn.idm214191259376" class="footnote"><p><a href="#idm214191259376" class="para"><sup class="para">[1] </sup></a>If run inside a Linux
668 669 670 671 672 673 674
                container these arguments may be passed as command
                line arguments to systemd itself, next to any of the
                command line options listed in the Options section
                above. If run outside of Linux containers, these
                arguments are parsed from
                <code class="filename">/proc/cmdline</code>
                instead.</p></div></div></div></body></html>