'\" t
.TH "SYSTEMD\&.SWAP" "5" "" "systemd 252" "systemd.swap"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
systemd.swap \- Swap unit configuration
.SH "SYNOPSIS"
.PP
\fIswap\fR\&.swap
.SH "DESCRIPTION"
.PP
A unit configuration file whose name ends in
"\&.swap"
encodes information about a swap device or file for memory paging controlled and supervised by systemd\&.
.PP
This man page lists the configuration options specific to this unit type\&. See
\fBsystemd.unit\fR(5)
for the common options of all unit configuration files\&. The common configuration items are configured in the generic [Unit] and [Install] sections\&. The swap specific configuration options are configured in the [Swap] section\&.
.PP
Additional options are listed in
\fBsystemd.exec\fR(5), which define the execution environment the
\fBswapon\fR(8)
program is executed in, in
\fBsystemd.kill\fR(5), which define the way these processes are terminated, and in
\fBsystemd.resource-control\fR(5), which configure resource control settings for these processes of the unit\&.
.PP
Swap units must be named after the devices or files they control\&. Example: the swap device
/dev/sda5
must be configured in a unit file
dev\-sda5\&.swap\&. For details about the escaping logic used to convert a file system path to a unit name, see
\fBsystemd.unit\fR(5)\&. Note that swap units cannot be templated, nor is possible to add multiple names to a swap unit by creating additional symlinks to it\&.
.PP
Note that swap support on Linux is privileged, swap units are hence only available in the system service manager (and root\*(Aqs user service manager), but not in unprivileged user\*(Aqs service manager\&.
.SH "AUTOMATIC DEPENDENCIES"
.SS "Implicit Dependencies"
.PP
The following dependencies are implicitly added:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
All swap units automatically get the
\fIBindsTo=\fR
and
\fIAfter=\fR
dependencies on the device units or the mount units of the files they are activated from\&.
.RE
.PP
Additional implicit dependencies may be added as result of execution and resource control parameters as documented in
\fBsystemd.exec\fR(5)
and
\fBsystemd.resource-control\fR(5)\&.
.SS "Default Dependencies"
.PP
The following dependencies are added unless
\fIDefaultDependencies=no\fR
is set:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Local swap units automatically acquire a
\fIConflicts=\fR
and a
\fIBefore=\fR
dependency on
umount\&.target
so that they are deactivated at shutdown as well as a
\fIBefore=swap\&.target\fR
dependency\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Network swap units (those with
\fB_netdev\fR
in their options) automatically acquire
\fIAfter=\fR
dependencies on
remote\-fs\-pre\&.target
and
network\&.target, plus
\fIAfter=\fR
and
\fIWants=\fR
dependencies on
network\-online\&.target, and a
\fIBefore=\fR
dependency on
remote\-fs\&.target
instead of
swap\&.target\&.
.RE
.SH "FSTAB"
.PP
Swap units may either be configured via unit files, or via
/etc/fstab
(see
\fBfstab\fR(5)
for details)\&. Swaps listed in
/etc/fstab
will be converted into native units dynamically at boot and when the configuration of the system manager is reloaded\&. See
\fBsystemd-fstab-generator\fR(8)
for details about the conversion\&.
.PP
If a swap device or file is configured in both
/etc/fstab
and a unit file, the configuration in the latter takes precedence\&.
.PP
When reading
/etc/fstab, a few special options are understood by systemd which influence how dependencies are created for swap units\&.
.PP
\fBnoauto\fR, \fBauto\fR
.RS 4
With
\fBnoauto\fR, the swap unit will not be added as a dependency for
swap\&.target
(or
remote\-fs\&.target
for network swap devices, see
\fB_netdev\fR
below)\&. This means that it will not be activated automatically during boot, unless it is pulled in by some other unit\&. The
\fBauto\fR
option has the opposite meaning and is the default\&.
.RE
.PP
\fBnofail\fR
.RS 4
With
\fBnofail\fR, the swap unit will be only wanted, not required by
swap\&.target
(or
remote\-fs\&.target
for network swap devices)\&. This means that the boot will continue even if this swap device is not activated successfully\&.
.RE
.PP
\fBx\-systemd\&.device\-timeout=\fR
.RS 4
Configure how long systemd should wait for a device to show up before giving up on an entry from
/etc/fstab\&. Specify a time in seconds or explicitly append a unit such as
"s",
"min",
"h",
"ms"\&.
.sp
Note that this option can only be used in
/etc/fstab, and will be ignored when part of the
\fIOptions=\fR
setting in a unit file\&.
.RE
.PP
\fBx\-systemd\&.makefs\fR
.RS 4
The swap structure will be initialized on the device\&. If the device is not "empty", i\&.e\&. it contains any signature, the operation will be skipped\&. It is hence expected that this option remains set even after the device has been initialized\&.
.sp
Note that this option can only be used in
/etc/fstab, and will be ignored when part of the
\fIOptions=\fR
setting in a unit file\&.
.sp
See
\fBsystemd-mkswap@.service\fR(8)
and the discussion of
\fBwipefs\fR(8)
in
\fBsystemd.mount\fR(5)\&.
.RE
.PP
\fB_netdev\fR
.RS 4
Marks this swap device as requiring network access\&. This is useful for swap on network block devices (e\&.g\&. iSCSI)\&.
.sp
Network swap units are ordered between
remote\-fs\-pre\&.target
and
remote\-fs\&.target, instead of being ordered before
swap\&.target\&. They also pull in
network\-online\&.target
and are ordered after it and
network\&.target\&.
.RE
.SH "OPTIONS"
.PP
Swap unit files may include [Unit] and [Install] sections, which are described in
\fBsystemd.unit\fR(5)\&.
.PP
Swap unit files must include a [Swap] section, which carries information about the swap device it supervises\&. A number of options that may be used in this section are shared with other unit types\&. These options are documented in
\fBsystemd.exec\fR(5)
and
\fBsystemd.kill\fR(5)\&. The options specific to the [Swap] section of swap units are the following:
.PP
\fIWhat=\fR
.RS 4
Takes an absolute path of a device node or file to use for paging\&. See
\fBswapon\fR(8)
for details\&. If this refers to a device node, a dependency on the respective device unit is automatically created\&. (See
\fBsystemd.device\fR(5)
for more information\&.) If this refers to a file, a dependency on the respective mount unit is automatically created\&. (See
\fBsystemd.mount\fR(5)
for more information\&.) This option is mandatory\&. Note that the usual specifier expansion is applied to this setting, literal percent characters should hence be written as
"%%"\&.
.RE
.PP
\fIPriority=\fR
.RS 4
Swap priority to use when activating the swap device or file\&. This takes an integer\&. This setting is optional and ignored when the priority is set by
\fBpri=\fR
in the
\fIOptions=\fR
key\&.
.RE
.PP
\fIOptions=\fR
.RS 4
May contain an option string for the swap device\&. This may be used for controlling discard options among other functionality, if the swap backing device supports the discard or trim operation\&. (See
\fBswapon\fR(8)
for more information\&.) Note that the usual specifier expansion is applied to this setting, literal percent characters should hence be written as
"%%"\&.
.RE
.PP
\fITimeoutSec=\fR
.RS 4
Configures the time to wait for the swapon command to finish\&. If a command does not exit within the configured time, the swap will be considered failed and be shut down again\&. All commands still running will be terminated forcibly via
\fBSIGTERM\fR, and after another delay of this time with
\fBSIGKILL\fR\&. (See
\fBKillMode=\fR
in
\fBsystemd.kill\fR(5)\&.) Takes a unit\-less value in seconds, or a time span value such as "5min 20s"\&. Pass
"0"
to disable the timeout logic\&. Defaults to
\fIDefaultTimeoutStartSec=\fR
from the manager configuration file (see
\fBsystemd-system.conf\fR(5))\&.
.RE
.PP
Check
\fBsystemd.unit\fR(5),
\fBsystemd.exec\fR(5), and
\fBsystemd.kill\fR(5)
for more settings\&.
.SH "SEE ALSO"
.PP
\fBsystemd\fR(1),
\fBsystemctl\fR(1),
\fBsystemd-system.conf\fR(5),
\fBsystemd.unit\fR(5),
\fBsystemd.exec\fR(5),
\fBsystemd.kill\fR(5),
\fBsystemd.resource-control\fR(5),
\fBsystemd.device\fR(5),
\fBsystemd.mount\fR(5),
\fBswapon\fR(8),
\fBsystemd-fstab-generator\fR(8),
\fBsystemd.directives\fR(7)
