]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - man/systemd.scope.xml
Merge pull request #14590 from poettering/doc-fixlets
[thirdparty/systemd.git] / man / systemd.scope.xml
index 503a480dd08e093db7182ef98f3ec0c52eb2e8e8..b624ac5f9303990683bf502ee1672dd2e4dcc80d 100644 (file)
     url="https://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface/">New
     Control Group Interfaces</ulink> for an introduction on how to make
     use of scope units from programs.</para>
+
+    <para>Note that, unlike service units, scope units have no "main" process: all processes in the scope are
+    equivalent. The lifecycle of the scope unit is thus not bound to the lifetime of one specific process,
+    but to the existence of at least one process in the scope. This also means that the exit statuses of
+    these processes are not relevant for the scope unit failure state. Scope units may still enter a failure
+    state, for example due to resource exhaustion or stop timeouts being reached, but not due to programs
+    inside of them terminating uncleanly. Since processes managed as scope units generally remain children of
+    the original process that forked them off, it is also the job of that process to collect their exit
+    statuses and act on them as needed.</para>
   </refsect1>
 
   <refsect1>
     </refsect2>
   </refsect1>
 
+  <refsect1>
+    <title>Options</title>
+
+    <para>Scope files may include a <literal>[Scope]</literal>
+    section, which carries information about the scope and the
+    units it contains. A number of options that may be used in
+    this section are shared with other unit types. These options are
+    documented in
+    <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+    and
+    <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+    The options specific to the <literal>[Scope]</literal> section
+    of scope units are the following:</para>
+
+    <variablelist class='unit-directives'>
+      <varlistentry>
+        <term><varname>RuntimeMaxSec=</varname></term>
+
+        <listitem><para>Configures a maximum time for the scope to run. If this is used and the scope has been
+        active for longer than the specified time it is terminated and put into a failure state. Pass
+        <literal>infinity</literal> (the default) to configure no runtime limit.</para></listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
   <refsect1>
     <title>See Also</title>
     <para>