logind.conf(5) Login manager configuration file




This file configures various parameters of the systemd login manager systemd-logind.service(8).


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 previously unused -- autovt services are automatically spawned on. These services are instantiated from the template unit [email protected] for the respective VT TTY name, e.g. [email protected] By default [email protected] is linked to [email protected], i.e. 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 VTs configured with the NAutoVTs= directive. Defaults to 6. When set to 0, automatic spawning of autovt services is disabled.


Takes a positive integer. Configures the number of one virtual terminal that shall unconditionally be reserved for [email protected] 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 how many VTs are allocated by other subsystems one login getty is always available. Defaults to 6 (with other words: there'll always be a getty available on Alt-F6.). When set to 0, VT reservation is disabled.


Takes a boolean argument. Configures whether the processes of a user should be killed when she or he completely logs out (i.e. after her/his last session ended). Defaults to no.


Configures the action to take when the system is idle. Takes one of ignore, poweroff, reboot, halt, kexec, suspend, hibernate, hybrid-sleep, 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 reported that they are idle, and no idle inhibitor lock is active, and subsequently the time configured with IdleActionSec= (see below) has passed.


Configures the delay after which the action configured in IdleAction= (see above) is taken after the system is idle.

KillOnlyUsers=, KillExcludeUsers=

These settings take space separated lists of user names 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.

Controllers=, ResetControllers=

These settings control the default control group hierarchies users logging in are added to, in addition to the name=systemd named hierarchy. These settings take space separated lists of controller names. Pass the empty string to ensure that logind does not touch any hierarchies but systemd's own. When logging in user sessions will get private control groups in all hierarchies listed in Controllers= and be reset to the root control group in all hierarchies listed in ResetControllers=. Controllers= defaults to the empty list, ResetControllers= defaults to cpu. Note that for all controllers that are not listed in either Controllers= nor ResetControllers= newly created sessions will be part of the control groups of the system service that created the session.


Specifies the maximum time a system shutdown or sleep request is delayed due to an inhibitor lock of type delay being active -- before it is ignored and the operation executed anyway. Defaults to 5s.

HandlePowerKey=, HandleSuspendKey=, HandleHibernateKey=, HandleLidSwitch=

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, suspend, hibernate, 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. HandleHibernateKey= defaults to hibernate.

PowerKeyIgnoreInhibited=, SuspendKeyIgnoreInhibited=, HibernateKeyIgnoreInhibited=, LidSwitchIgnoreInhibited=

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 off the inhibitor locks taken by applications in order to block the requested operation are respected, if on the requested operation is executed in any case. PowerKeyIgnoreInhibited=, SuspendKeyIgnoreInhibited= and HibernateKeyIgnoreInhibited= defaults to off, LidSwitchIgnoreInhibited= defaults to yes. This means that the lid switch does not respect suspend blockers by default, but the power and sleep keys do.

Note that setting KillUserProcesses=1 will break tools like screen(1).

Note that KillUserProcesses=1 is a weaker version of kill-session-processes=1 which may be configured per-service for pam_systemd(8). The latter kills processes of a session as soon as it ends, the former kills processes as soon as the last session of the user ends.