]> git.ipfire.org Git - thirdparty/systemd.git/blame - man/systemd.scope.xml
man: use same version in public and system ident.
[thirdparty/systemd.git] / man / systemd.scope.xml
CommitLineData
514094f9 1<?xml version='1.0'?>
3a54a157 2<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
eea10b26 3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
db9ecf05 4<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
d868475a 5
d8e1613e 6<refentry id="systemd.scope" xmlns:xi="http://www.w3.org/2001/XInclude">
d868475a
ZJS
7 <refentryinfo>
8 <title>systemd.scope</title>
9 <productname>systemd</productname>
d868475a
ZJS
10 </refentryinfo>
11
12 <refmeta>
13 <refentrytitle>systemd.scope</refentrytitle>
14 <manvolnum>5</manvolnum>
15 </refmeta>
16
17 <refnamediv>
18 <refname>systemd.scope</refname>
19 <refpurpose>Scope unit configuration</refpurpose>
20 </refnamediv>
21
22 <refsynopsisdiv>
23 <para><filename><replaceable>scope</replaceable>.scope</filename></para>
24 </refsynopsisdiv>
25
26 <refsect1>
27 <title>Description</title>
28
9365b048
LP
29 <para>Scope units are not configured via unit configuration files,
30 but are only created programmatically using the bus interfaces of
31 systemd. They are named similar to filenames. A unit whose name
32 ends in <literal>.scope</literal> refers to a scope unit. Scopes
fbce1139 33 units manage a set of system processes. Unlike service units, scope
9365b048
LP
34 units manage externally created processes, and do not fork off
35 processes on its own.</para>
d868475a 36
9365b048 37 <para>The main purpose of scope units is grouping worker processes
847ae0ae 38 of a system service for organization and for managing resources.</para>
9365b048
LP
39
40 <para><command>systemd-run <option>--scope</option></command> may
41 be used to easily launch a command in a new scope unit from the
42 command line.</para>
d868475a 43
ea021cc3 44 <para>See the <ulink
a25d9395 45 url="https://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface">New
72f4d966 46 Control Group Interfaces</ulink> for an introduction on how to make
ea021cc3 47 use of scope units from programs.</para>
f2e5e704 48
d00386fc
ZJS
49 <para>Note that, unlike service units, scope units have no "main" process: all processes in the scope are
50 equivalent. The lifecycle of the scope unit is thus not bound to the lifetime of one specific process,
51 but to the existence of at least one process in the scope. This also means that the exit statuses of
52 these processes are not relevant for the scope unit failure state. Scope units may still enter a failure
53 state, for example due to resource exhaustion or stop timeouts being reached, but not due to programs
54 inside of them terminating uncleanly. Since processes managed as scope units generally remain children of
55 the original process that forked them off, it is also the job of that process to collect their exit
56 statuses and act on them as needed.</para>
c129bd5d
LP
57 </refsect1>
58
59 <refsect1>
aed5cb03
ZJS
60 <title>Automatic Dependencies</title>
61
62 <refsect2>
63 <title>Implicit Dependencies</title>
64
65 <para>Implicit dependencies may be added as result of
66 resource control parameters as documented in
67 <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
68 </refsect2>
69
70 <refsect2>
71 <title>Default Dependencies</title>
72
73 <para>The following dependencies are added unless
74 <varname>DefaultDependencies=no</varname> is set:</para>
75
76 <itemizedlist>
77 <listitem><para>Scope units will automatically have dependencies of
78 type <varname>Conflicts=</varname> and
79 <varname>Before=</varname> on
80 <filename>shutdown.target</filename>. These ensure
81 that scope units are removed prior to system
82 shutdown. Only scope units involved with early boot or
83 late system shutdown should disable
84 <varname>DefaultDependencies=</varname> option.</para></listitem>
85 </itemizedlist>
86 </refsect2>
d868475a
ZJS
87 </refsect1>
88
9ed7de60
PW
89 <refsect1>
90 <title>Options</title>
91
63ed97ef 92 <para>Scope files may include a [Unit] section, which is described in
d8e1613e
ZJS
93 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
94 </para>
95
bdac5608 96 <para>Scope files may include a [Scope]
9ed7de60
PW
97 section, which carries information about the scope and the
98 units it contains. A number of options that may be used in
99 this section are shared with other unit types. These options are
100 documented in
101 <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>
102 and
103 <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
bdac5608 104 The options specific to the [Scope] section
9ed7de60
PW
105 of scope units are the following:</para>
106
107 <variablelist class='unit-directives'>
d5a1657d
ZJS
108 <xi:include href="systemd.service.xml" xpointer="oom-policy" />
109
9ed7de60
PW
110 <varlistentry>
111 <term><varname>RuntimeMaxSec=</varname></term>
112
113 <listitem><para>Configures a maximum time for the scope to run. If this is used and the scope has been
114 active for longer than the specified time it is terminated and put into a failure state. Pass
ec07c3c8
AK
115 <literal>infinity</literal> (the default) to configure no runtime limit.</para>
116
117 <xi:include href="version-info.xml" xpointer="v244"/></listitem>
9ed7de60 118 </varlistentry>
5918a933
AB
119
120 <varlistentry>
121 <term><varname>RuntimeRandomizedExtraSec=</varname></term>
122
123 <listitem><para>This option modifies <varname>RuntimeMaxSec=</varname> by increasing the maximum runtime by an
124 evenly distributed duration between 0 and the specified value (in seconds). If <varname>RuntimeMaxSec=</varname> is
125 unspecified, then this feature will be disabled.
ec07c3c8
AK
126 </para>
127
128 <xi:include href="version-info.xml" xpointer="v250"/></listitem>
5918a933 129 </varlistentry>
9ed7de60 130 </variablelist>
d8e1613e
ZJS
131
132 <xi:include href="systemd.service.xml" xpointer="shared-unit-options" />
9ed7de60
PW
133 </refsect1>
134
d868475a
ZJS
135 <refsect1>
136 <title>See Also</title>
13a69c12
DT
137 <para><simplelist type="inline">
138 <member><citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
139 <member><citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
140 <member><citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry></member>
141 <member><citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry></member>
142 <member><citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry></member>
143 <member><citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</member>
144 </simplelist></para>
d868475a
ZJS
145 </refsect1>
146
147</refentry>