1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
6 This file is part of elogind.
8 Copyright 2010 Lennart Poettering
10 elogind is free software; you can redistribute it and/or modify it
11 under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation; either version 2.1 of the License, or
13 (at your option) any later version.
15 elogind is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 Lesser General Public License for more details.
20 You should have received a copy of the GNU Lesser General Public License
21 along with elogind; If not, see <http://www.gnu.org/licenses/>.
24 <refentry id="logind.conf" xmlns:xi="http://www.w3.org/2001/XInclude">
26 <title>logind.conf</title>
27 <productname>elogind</productname>
31 <contrib>Developer</contrib>
32 <firstname>Lennart</firstname>
33 <surname>Poettering</surname>
34 <email>lennart@poettering.net</email>
40 <refentrytitle>logind.conf</refentrytitle>
41 <manvolnum>5</manvolnum>
45 <refname>logind.conf</refname>
46 <refpurpose>Login manager configuration files</refpurpose>
50 <para><filename>/etc/elogind/logind.conf</filename></para>
54 <title>Description</title>
56 <para>These files configure various parameters of the elogind
60 <xi:include href="standard-conf.xml" xpointer="main-conf" />
63 <title>Options</title>
65 <para>All login options are configured in the
66 <literal>[Login]</literal> section, system sleep options are
67 configured in the <literal>[Sleep]</literal> section.</para>
69 <refsect2><title>[Login] section:</title>
73 <term><varname>KillUserProcesses=</varname></term>
75 <listitem><para>Takes a boolean argument. Configures whether
76 the processes of a user should be killed when the user
77 completely logs out (i.e. after the user's last session
78 ended). Defaults to <literal>no</literal>.</para>
80 <para>Note that setting <varname>KillUserProcesses=1</varname>
82 <citerefentry project='die-net'><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
86 <term><varname>KillOnlyUsers=</varname></term>
87 <term><varname>KillExcludeUsers=</varname></term>
89 <listitem><para>These settings take space-separated lists of
90 usernames that influence the effect of
91 <varname>KillUserProcesses=</varname>. If not empty, only
92 processes of users listed in <varname>KillOnlyUsers=</varname>
93 will be killed when they log out entirely. Processes of users
94 listed in <varname>KillExcludeUsers=</varname> are excluded
95 from being killed. <varname>KillExcludeUsers=</varname>
96 defaults to <literal>root</literal> and takes precedence over
97 <varname>KillOnlyUsers=</varname>, which defaults to the empty
98 list.</para></listitem>
102 <term><varname>IdleAction=</varname></term>
104 <listitem><para>Configures the action to take when the system
105 is idle. Takes one of
106 <literal>ignore</literal>,
107 <literal>poweroff</literal>,
108 <literal>reboot</literal>,
109 <literal>halt</literal>,
110 <literal>kexec</literal>,
111 <literal>suspend</literal>,
112 <literal>hibernate</literal>,
113 <literal>hybrid-sleep</literal>, and
114 <literal>lock</literal>.
115 Defaults to <literal>ignore</literal>.</para>
117 <para>Note that this requires that user sessions correctly
118 report the idle status to the system. The system will execute
119 the action after all sessions report that they are idle, no
120 idle inhibitor lock is active, and subsequently, the time
121 configured with <varname>IdleActionSec=</varname> (see below)
127 <term><varname>IdleActionSec=</varname></term>
129 <listitem><para>Configures the delay after which the action
130 configured in <varname>IdleAction=</varname> (see above) is
131 taken after the system is idle.</para></listitem>
135 <term><varname>InhibitDelayMaxSec=</varname></term>
137 <listitem><para>Specifies the maximum time a system shutdown
138 or sleep request is delayed due to an inhibitor lock of type
139 <literal>delay</literal> being active before the inhibitor is
140 ignored and the operation executes anyway. Defaults to
145 <term><varname>HandlePowerKey=</varname></term>
146 <term><varname>HandleSuspendKey=</varname></term>
147 <term><varname>HandleHibernateKey=</varname></term>
148 <term><varname>HandleLidSwitch=</varname></term>
149 <term><varname>HandleLidSwitchDocked=</varname></term>
151 <listitem><para>Controls whether logind shall handle the
152 system power and sleep keys and the lid switch to trigger
153 actions such as system power-off or suspend. Can be one of
154 <literal>ignore</literal>,
155 <literal>poweroff</literal>,
156 <literal>reboot</literal>,
157 <literal>halt</literal>,
158 <literal>kexec</literal>,
159 <literal>suspend</literal>,
160 <literal>hibernate</literal>,
161 <literal>hybrid-sleep</literal>, and
162 <literal>lock</literal>.
163 If <literal>ignore</literal>, logind will never handle these
164 keys. If <literal>lock</literal>, all running sessions will be
165 screen-locked; otherwise, the specified action will be taken
166 in the respective event. Only input devices with the
167 <literal>power-switch</literal> udev tag will be watched for
168 key/lid switch events. <varname>HandlePowerKey=</varname>
169 defaults to <literal>poweroff</literal>.
170 <varname>HandleSuspendKey=</varname> and
171 <varname>HandleLidSwitch=</varname> default to
172 <literal>suspend</literal>.
173 <varname>HandleLidSwitchDocked=</varname> defaults to
174 <literal>ignore</literal>.
175 <varname>HandleHibernateKey=</varname> defaults to
176 <literal>hibernate</literal>. If the system is inserted in a
177 docking station, or if more than one display is connected, the
178 action specified by <varname>HandleLidSwitchDocked=</varname>
179 occurs; otherwise the <varname>HandleLidSwitch=</varname>
180 action occurs.</para></listitem>
184 <term><varname>PowerKeyIgnoreInhibited=</varname></term>
185 <term><varname>SuspendKeyIgnoreInhibited=</varname></term>
186 <term><varname>HibernateKeyIgnoreInhibited=</varname></term>
187 <term><varname>LidSwitchIgnoreInhibited=</varname></term>
189 <listitem><para>Controls whether actions triggered by the
190 power and sleep keys and the lid switch are subject to
191 inhibitor locks. These settings take boolean arguments. If
192 <literal>no</literal>, the inhibitor locks taken by
193 applications in order to block the requested operation are
194 respected. If <literal>yes</literal>, the requested operation
195 is executed in any case.
196 <varname>PowerKeyIgnoreInhibited=</varname>,
197 <varname>SuspendKeyIgnoreInhibited=</varname> and
198 <varname>HibernateKeyIgnoreInhibited=</varname> default to
199 <literal>no</literal>.
200 <varname>LidSwitchIgnoreInhibited=</varname> defaults to
201 <literal>yes</literal>. This means that the lid switch does
202 not respect suspend blockers by default, but the power and
203 sleep keys do. </para></listitem>
207 <term><varname>HoldoffTimeoutSec=</varname></term>
209 <listitem><para>Specifies the timeout after system startup or
210 system resume in which elogind will hold off on reacting to
211 LID events. This is required for the system to properly
212 detect any hotplugged devices so elogind can ignore LID events
213 if external monitors, or docks, are connected. If set to 0,
214 elogind will always react immediately, possibly before the
215 kernel fully probed all hotplugged devices. This is safe, as
216 long as you do not care for elogind to account for devices
217 that have been plugged or unplugged while the system was off.
218 Defaults to 30s.</para></listitem>
222 <term><varname>RuntimeDirectorySize=</varname></term>
224 <listitem><para>Sets the size limit on the
225 <varname>$XDG_RUNTIME_DIR</varname> runtime directory for each
226 user who logs in. Takes a size in bytes, optionally suffixed
227 with the usual K, G, M, and T suffixes, to the base 1024
228 (IEC). Alternatively, a numerical percentage suffixed by
229 <literal>%</literal> may be specified, which sets the size
230 limit relative to the amount of physical RAM. Defaults to 10%.
231 Note that this size is a safety limit only. As each runtime
232 directory is a tmpfs file system, it will only consume as much
233 memory as is needed. </para></listitem>
237 <term><varname>RemoveIPC=</varname></term>
239 <listitem><para>Controls whether System V and POSIX IPC objects belonging to the user shall be removed when the
240 user fully logs out. Takes a boolean argument. If enabled, the user may not consume IPC resources after the
241 last of the user's sessions terminated. This covers System V semaphores, shared memory and message queues, as
242 well as POSIX shared memory and message queues. Note that IPC objects of the root user and other system users
243 are excluded from the effect of this setting. Defaults to <literal>yes</literal>.</para></listitem>
249 <refsect2><title>[Sleep] section:</title>
251 <para><command>elogind</command> supports three general
252 power-saving modes:</para>
258 <listitem><para>a low-power state
259 where execution of the OS is paused,
260 and complete power loss might result
261 in lost data, and which is fast to
262 enter and exit. This corresponds to
263 suspend, standby, or freeze states as
264 understood by the kernel.
269 <term>hibernate</term>
271 <listitem><para>a low-power state
272 where execution of the OS is paused,
273 and complete power loss does not
274 result in lost data, and which might
275 be slow to enter and exit. This
276 corresponds to the hibernation as
277 understood by the kernel.
282 <term>hybrid-sleep</term>
284 <listitem><para>a low-power state
285 where execution of the OS is paused,
286 which might be slow to enter, and on
287 complete power loss does not result in
288 lost data but might be slower to exit
289 in that case. This mode is called
290 suspend-to-both by the kernel.
295 <term><varname>SuspendMode=</varname></term>
296 <term><varname>HibernateMode=</varname></term>
297 <term><varname>HybridSleepMode=</varname></term>
299 <listitem><para>The string to be written to
300 <filename>/sys/power/disk</filename> by elogind.
301 More than one value can be specified by separating
302 multiple values with whitespace. They will be tried
303 in turn, until one is written without error. If
304 neither succeeds, the operation will be aborted.
309 <term><varname>SuspendState=</varname></term>
310 <term><varname>HibernateState=</varname></term>
311 <term><varname>HybridSleepState=</varname></term>
313 <listitem><para>The string to be written to
314 <filename>/sys/power/state</filename> by elogind.
315 More than one value can be specified by separating
316 multiple values with whitespace. They will be tried
317 in turn, until one is written without error. If
318 neither succeeds, the operation will be aborted.
327 <title>See Also</title>
329 <citerefentry><refentrytitle>elogind</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
330 <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,