<listitem><para>Takes a positive
integer. Configures how many virtual
terminals (VTs) to allocate by default
- that -- when switched to and
- previously unused --
+ that, when switched to and are
+ previously unused,
<literal>autovt</literal> services are
automatically spawned on. These
services are instantiated from the
<filename>autovt@.service</filename>
activation (see above). The VT
selected with this option will be
- marked busy unconditionally so that no
+ marked busy unconditionally, so that no
other subsystem will allocate it. This
functionality is useful to ensure that
- regardless how many VTs are allocated
+ regardless of how many VTs are allocated
by other subsystems, one login
<literal>getty</literal> is always
- available. Defaults to 6 (with other
- words: there will always be a
+ available. Defaults to 6 (in other
+ words, there will always be a
<literal>getty</literal> available on
Alt-F6.). When set to 0, VT
reservation is
processes of a user should be killed
when she or he completely logs out (i.e. after
her/his last session ended). Defaults to
- <literal>no</literal>.</para></listitem>
+ <literal>no</literal>.</para>
+
+ <para>Note that setting
+ <varname>KillUserProcesses=1</varname>
+ will break tools like
+ <citerefentry><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>KillOnlyUsers=</varname></term>
+ <term><varname>KillExcludeUsers=</varname></term>
+
+ <listitem><para>These settings take
+ space-separated lists of usernames
+ that influence the effect of
+ <varname>KillUserProcesses=</varname>. If
+ not empty, only processes of users
+ listed in
+ <varname>KillOnlyUsers=</varname> will
+ be killed when they log out
+ entirely. Processes of users listed in
+ <varname>KillExcludeUsers=</varname>
+ are excluded from being
+ killed. <varname>KillExcludeUsers=</varname>
+ defaults to <literal>root</literal>
+ and takes precedence over
+ <varname>KillOnlyUsers=</varname>,
+ which defaults to the empty list.</para></listitem>
</varlistentry>
<varlistentry>
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
+ sessions report that they are idle,
+ no idle inhibitor lock is active,
+ and subsequently, the time configured
with <varname>IdleActionSec=</varname>
- (see below) has passed.</para>
+ (see below) has expired.</para>
</listitem>
</varlistentry>
idle.</para></listitem>
</varlistentry>
- <varlistentry>
- <term><varname>KillOnlyUsers=</varname></term>
- <term><varname>KillExcludeUsers=</varname></term>
-
- <listitem><para>These settings take
- space-separated lists of usernames
- that influence the effect of
- <varname>KillUserProcesses=</varname>. If
- not empty, only processes of users
- listed in
- <varname>KillOnlyUsers</varname> will
- be killed when they log out
- entirely. Processes of users listed in
- <varname>KillExcludeUsers=</varname>
- are excluded from being
- killed. <varname>KillExcludeUsers=</varname>
- defaults to <literal>root</literal>
- and takes precedence over
- <varname>KillOnlyUsers=</varname>
- which defaults to the empty list.</para></listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>Controllers=</varname></term>
- <term><varname>ResetControllers=</varname></term>
-
- <listitem><para>These settings control
- the default control group hierarchies
- users logging in are added to, in
- addition to the
- <literal>name=systemd</literal> 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
- <varname>Controllers=</varname> and be
- reset to the root control group in all
- hierarchies listed in
- <varname>ResetControllers=</varname>. <varname>Controllers=</varname>
- defaults to the empty list,
- <varname>ResetControllers=</varname>
- defaults to
- <literal>cpu</literal>. Note that for
- all controllers that are not listed in
- either <varname>Controllers=</varname>
- or
- <varname>ResetControllers=</varname>,
- newly created sessions will be part of
- the control groups of the system
- service that created the
- session.</para></listitem>
- </varlistentry>
-
<varlistentry>
<term><varname>InhibitDelayMaxSec=</varname></term>
time a system shutdown or sleep
request is delayed due to an inhibitor
lock of type <literal>delay</literal>
- being active -- before it is ignored
- and the operation executed
+ being active before the inhibitor is
+ ignored and the operation executes
anyway. Defaults to
5s.</para></listitem>
</varlistentry>
<literal>ignore</literal>, logind will
never handle these keys. If
<literal>lock</literal>, all running
- sessions will be screen-locked; otherwise,
- the specified action
- will be taken in the respective
- event. Only input devices with the
+ sessions will be screen-locked;
+ otherwise, the specified action will
+ be taken in the respective event. Only
+ input devices with the
<literal>power-switch</literal> udev
tag will be watched for key/lid switch
events. <varname>HandlePowerKey=</varname>
default to <literal>suspend</literal>.
<varname>HandleHibernateKey=</varname>
defaults to
- <literal>hibernate</literal>.</para></listitem>
+ <literal>hibernate</literal>. Note
+ that the lid switch is ignored if the
+ system is inserted in a docking
+ station, or if more than one display
+ is connected.</para></listitem>
</varlistentry>
<varlistentry>
<varname>SuspendKeyIgnoreInhibited=</varname>
and
<varname>HibernateKeyIgnoreInhibited=</varname>
- defaults to <literal>off</literal>,
+ default to <literal>off</literal>.
<varname>LidSwitchIgnoreInhibited=</varname>
defaults to
<literal>yes</literal>. This means
</para></listitem>
</varlistentry>
- </variablelist>
+ <varlistentry>
+ <term><varname>RuntimeDirectorySize=</varname></term>
+
+ <listitem><para>Sets the size limit on
+ the
+ <varname>$XDG_RUNTIME_DIR</varname>
+ runtime directory for each user who
+ logs in. Takes a size in bytes,
+ possibly suffixed with the usual K, G,
+ M, T suffixes, to the base 1024
+ (IEC). Alternatively, a percentage
+ suffixed by <literal>%</literal> 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 it is filled up
+ to.</para></listitem>
+ </varlistentry>
- <para>Note that setting
- <varname>KillUserProcesses=1</varname> will break tools
- like
- <citerefentry><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
-
- <para>Note that <varname>KillUserProcesses=1</varname>
- is a weaker version of
- <varname>kill-session-processes=1</varname>, which may
- be configured per-service for
- <citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry>. 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.</para>
+ </variablelist>
</refsect1>
<refsect1>