systemd.slice — Slice unit configuration
A unit configuration file whose name ends in
.slice" encodes information about a slice which
is a concept for hierarchically managing resources of a group of
processes. This management is performed by creating a node in the
Linux Control Group (cgroup) tree. Units that manage processes
(primarily scope and service units) may be assigned to a specific
slice. For each slice, certain resource limits may be set that
apply to all processes of all units contained in that
slice. Slices are organized hierarchically in a tree. The name of
the slice encodes the location in the tree. The name consists of a
dash-separated series of names, which describes the path to the
slice from the root slice. The root slice is named,
foo-bar.slice is a slice that is located
foo.slice, which in turn is located in
the root slice
Note that slice units cannot be templated, nor is possible to add multiple names to a slice unit by creating additional symlinks to it.
By default, service and scope units are placed in
system.slice, virtual machines and containers
are found in
machine.slice, and user sessions
for more information.
See systemd.unit(5) for the common options of all unit configuration files. The common configuration items are configured in the generic [Unit] and [Install] sections. The slice specific configuration options are configured in the [Slice] section. Currently, only generic resource control settings as described in systemd.resource-control(5) are allowed.
See the New Control Group Interfaces for an introduction on how to make use of slice units from programs.
Slice units automatically gain dependencies of type
their immediate parent slice unit.
DefaultDependencies=false is used in the "
[Unit]" section, slice
units will implicitly have dependencies of type
shutdown.target. These ensure that slice units are removed prior to system shutdown. Only
slice units involved with early boot or late system shutdown should disable this option.