systemd.swap

systemd
Developer Lennart Poettering lennart@poettering.net
systemd.swap 5
systemd.swap systemd swap configuration files

`systemd.swap`

## Description

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.

This man page lists the configuration options specific to this unit type. 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 swap specific configuration options are configured in the [Swap] section.

Swap units must be named after the devices (resp. 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 systemd.unit 5.

All swap units automatically get the appropriate dependencies on the devices (resp. on the mount points of the files) they are activated from.

Swap units with `DefaultDependencies=` enabled implicitly acquire a conflicting dependency to `umount.target` so that they are deactivated at shutdown.

## `fstab`

Swap units may either be configured via unit files, or via `/etc/fstab` (see fstab 5 for details).

If a swap device or file is configured in both `/etc/fstab` and a unit file the configuration in the latter takes precedence.

Unless the `noauto` option is set for them all swap units configured in `/etc/fstab` are also added as requirements to `swap.target`, so that they are waited for and activated during boot.

## Options

Swap 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 systemd.exec 5. The options specific to the [Swap] section of swap units are the following:

`What=`

  Takes an absolute path of a device node or file to use for paging. See swapon 8 for details. If this refers to a device node, a dependency on the respective device unit is automatically created. (See systemd.device 5 for more information.) If this refers to a file, a dependency on the respective mount unit is automatically created. (See systemd.mount 5 for more information.) This option is mandatory.

`Priority=`

  Swap priority to use when activating the swap device or file. This takes an integer. This setting is optional.

`TimeoutSec=`

  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 SIGTERM, and after another delay of this time with SIGKILL. (See `KillMode=` below.) 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 90s.

`KillMode=`

  Specifies how processes of this swap shall be killed. One of `control-group`, `process`, `none`.

  This option is mostly equivalent to the `KillMode=` option of service files. See systemd.service 5 for details.

`KillSignal=`

  Specifies which signal to use when killing a process of this swap. Defaults to SIGTERM.

`SendSIGKILL=`

  Specifies whether to send SIGKILL to remaining processes after a timeout, if the normal shutdown procedure left processes of the swap around. Takes a boolean value. Defaults to "yes".

## See Also

systemd 1, systemctl 8, systemd.unit 5, systemd.exec 5, systemd.device 5, systemd.mount 5, swapon 8