mirror of
https://github.com/systemd/systemd.git
synced 2024-12-23 17:13:30 +08:00
bdac560801
For users, the square brackets already serve as markup and clearly delineate the section name from surrounding text. Putting additional markup around that only adds clutter. Also, we were very inconsistent in using the quotes. Let's just drop them altogether.
127 lines
5.3 KiB
XML
127 lines
5.3 KiB
XML
<?xml version='1.0'?>
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
|
<!-- SPDX-License-Identifier: LGPL-2.1+ -->
|
|
|
|
<refentry id="systemd.scope">
|
|
<refentryinfo>
|
|
<title>systemd.scope</title>
|
|
<productname>systemd</productname>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>systemd.scope</refentrytitle>
|
|
<manvolnum>5</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>systemd.scope</refname>
|
|
<refpurpose>Scope unit configuration</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<para><filename><replaceable>scope</replaceable>.scope</filename></para>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para>Scope units are not configured via unit configuration files,
|
|
but are only created programmatically using the bus interfaces of
|
|
systemd. They are named similar to filenames. A unit whose name
|
|
ends in <literal>.scope</literal> refers to a scope unit. Scopes
|
|
units manage a set of system processes. Unlike service units, scope
|
|
units manage externally created processes, and do not fork off
|
|
processes on its own.</para>
|
|
|
|
<para>The main purpose of scope units is grouping worker processes
|
|
of a system service for organization and for managing resources.</para>
|
|
|
|
<para><command>systemd-run <option>--scope</option></command> may
|
|
be used to easily launch a command in a new scope unit from the
|
|
command line.</para>
|
|
|
|
<para>See the <ulink
|
|
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>
|
|
<title>Automatic Dependencies</title>
|
|
|
|
<refsect2>
|
|
<title>Implicit Dependencies</title>
|
|
|
|
<para>Implicit dependencies may be added as result of
|
|
resource control parameters as documented in
|
|
<citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
|
|
</refsect2>
|
|
|
|
<refsect2>
|
|
<title>Default Dependencies</title>
|
|
|
|
<para>The following dependencies are added unless
|
|
<varname>DefaultDependencies=no</varname> is set:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>Scope units will automatically have dependencies of
|
|
type <varname>Conflicts=</varname> and
|
|
<varname>Before=</varname> on
|
|
<filename>shutdown.target</filename>. These ensure
|
|
that scope units are removed prior to system
|
|
shutdown. Only scope units involved with early boot or
|
|
late system shutdown should disable
|
|
<varname>DefaultDependencies=</varname> option.</para></listitem>
|
|
</itemizedlist>
|
|
</refsect2>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Options</title>
|
|
|
|
<para>Scope files may include a [Scope]
|
|
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 [Scope] 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>
|
|
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
|
</para>
|
|
</refsect1>
|
|
|
|
</refentry>
|