CONFIGURATION DIRECTORIES AND PRECEDENCE
logind.conf.d − Login manager configuration files
configure various parameters of the systemd login manager,
CONFIGURATION DIRECTORIES AND PRECEDENCE
configuration is defined during compilation, so a
configuration file is only needed when it is necessary to
deviate from those defaults. By default, the configuration
file in /etc/systemd/ contains commented out entries showing
the defaults as a guide to the administrator. This file can
be edited to create local overrides.
need to customize the configuration, they can install
configuration snippets in /usr/lib/systemd/*.conf.d/. Files
in /etc/ are reserved for the local administrator, who may
use this logic to override the configuration files installed
by vendor packages. The main configuration file is read
before any of the configuration directories, and has the
lowest precedence; entries in a file in any configuration
directory override entries in the single configuration file.
Files in the *.conf.d/ configuration subdirectories are
sorted by their filename in lexicographic order, regardless
of which of the subdirectories they reside in. If multiple
files specify the same option, the entry in the file with
the lexicographically latest name takes precedence. It is
recommended to prefix all filenames in those subdirectories
with a two−digit number and a dash, to simplify the
ordering of the files.
To disable a
configuration file supplied by the vendor, the recommended
way is to place a symlink to /dev/null in the configuration
directory in /etc/, with the same filename as the vendor
All options are
configured in the "[Login]" section:
Takes a positive integer.
Configures how many virtual terminals (VTs) to allocate by
default that, when switched to and are previously unused,
"autovt" services are automatically spawned on.
These services are instantiated from the template unit
autovt@.service for the respective VT TTY name, for example,
email@example.com. By default, autovt@.service is linked
to getty@.service. In other words, login prompts are started
dynamically as the user switches to unused virtual
terminals. Hence, this parameter controls how many login
"gettys" are available on the VTs. If a VT is
already used by some other subsystem (for example, a
graphical login), this kind of activation will not be
attempted. Note that the VT configured in ReserveVT=
is always subject to this kind of activation, even if it is
not one of the VTs configured with the NAutoVTs=
directive. Defaults to 6. When set to 0, automatic spawning
of "autovt" services is disabled.
Takes a positive integer.
Identifies one virtual terminal that shall unconditionally
be reserved for autovt@.service activation (see above). The
VT selected with this option will be marked busy
unconditionally, so that no other subsystem will allocate
it. This functionality is useful to ensure that, regardless
of how many VTs are allocated by other subsystems, one login
"getty" is always available. Defaults to 6 (in
other words, there will always be a "getty"
available on Alt−F6.). When set to 0, VT reservation
Takes a boolean argument.
Configures whether the processes of a user should be killed
when the user completely logs out (i.e. after the user's
last session ended). Defaults to "no".
setting KillUserProcesses=1 will break tools like
These settings take
space−separated lists of usernames that influence the
effect of KillUserProcesses=. If not empty, only
processes of users listed in KillOnlyUsers= will be
killed when they log out entirely. Processes of users listed
in KillExcludeUsers= are excluded from being killed.
KillExcludeUsers= defaults to "root" and
takes precedence over KillOnlyUsers=, which defaults
to the empty list.
Configures the action to take
when the system is idle. Takes one of "ignore",
"poweroff", "reboot", "halt",
"hibernate", "hybrid−sleep", and
"lock". Defaults to "ignore".
Note that this
requires that user sessions correctly report the idle status
to the system. The system will execute the action after all
sessions report that they are idle, no idle inhibitor lock
is active, and subsequently, the time configured with
IdleActionSec= (see below) has expired.
Configures the delay after
which the action configured in IdleAction= (see
above) is taken after the system is idle.
Specifies the maximum time a
system shutdown or sleep request is delayed due to an
inhibitor lock of type "delay" being active before
the inhibitor is ignored and the operation executes anyway.
Defaults to 5.
Controls whether logind shall
handle the system power and sleep keys and the lid switch to
trigger actions such as system power−off or suspend.
Can be one of "ignore", "poweroff",
"reboot", "halt", "kexec",
"hybrid−sleep", and "lock". If
"ignore", logind will never handle these keys. If
"lock", all running sessions will be
screen−locked; otherwise, the specified action will be
taken in the respective event. Only input devices with the
"power−switch" udev tag will be watched for
key/lid switch events. HandlePowerKey= defaults to
"poweroff". HandleSuspendKey= and
HandleLidSwitch= default to "suspend".
HandleLidSwitchDocked= defaults to
"ignore". HandleHibernateKey= defaults to
"hibernate". If the system is inserted in a
docking station, or if more than one display is connected,
the action specified by HandleLidSwitchDocked=
occurs; otherwise the HandleLidSwitch= action
Controls whether actions
triggered by the power and sleep keys and the lid switch are
subject to inhibitor locks. These settings take boolean
arguments. If "no", the inhibitor locks taken by
applications in order to block the requested operation are
respected. If "yes", the requested operation is
executed in any case. PowerKeyIgnoreInhibited=,
HibernateKeyIgnoreInhibited= default to
"no". LidSwitchIgnoreInhibited= defaults to
"yes". This means that the lid switch does not
respect suspend blockers by default, but the power and sleep
Specifies the timeout after
system startup or system resume in which systemd will hold
off on reacting to lid events. This is required for the
system to properly detect any hotplugged devices so systemd
can ignore lid events if external monitors, or docks, are
connected. If set to 0, systemd will always react
immediately, possibly before the kernel fully probed all
hotplugged devices. This is safe, as long as you do not care
for systemd to account for devices that have been plugged or
unplugged while the system was off. Defaults to 30s.
Sets the size limit on the
$XDG_RUNTIME_DIR runtime directory for each user who
logs in. Takes a size in bytes, optionally suffixed with the
usual K, G, M, and T suffixes, to the base 1024 (IEC).
Alternatively, a numerical percentage suffixed by
"%" may be specified, which sets the size limit
relative to the amount of physical RAM. Defaults to 10%.
Note that this size is a safety limit only. As each runtime
directory is a tmpfs file system, it will only consume as
much memory as is needed.
Sets the maximum number of OS
tasks each user may run concurrently. This controls the
TasksMax= setting of the per−user slice unit,
see systemd.resource-control(5) for details. Defaults
to 12288 (12K). If assigned the special value
"infinity", no tasks limit is applied.
Controls whether System V and
POSIX IPC objects belonging to the user shall be removed
when the user fully logs out. Takes a boolean argument. If
enabled, the user may not consume IPC resources after the
last of the user's sessions terminated. This covers System V
semaphores, shared memory and message queues, as well as
POSIX shared memory and message queues. Note that IPC
objects of the root user and other system users are excluded
from the effect of this setting. Defaults to