chiark / gitweb /
Prep v229.5: Make musl-libc utmp/wtmp stubs visible.
[elogind.git] / man / logind.conf.xml
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">
4
5 <!--
6   This file is part of elogind.
7
8   Copyright 2010 Lennart Poettering
9
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.
14
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.
19
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/>.
22 -->
23
24 <refentry id="logind.conf" xmlns:xi="http://www.w3.org/2001/XInclude">
25   <refentryinfo>
26     <title>logind.conf</title>
27     <productname>elogind</productname>
28
29     <authorgroup>
30       <author>
31         <contrib>Developer</contrib>
32         <firstname>Lennart</firstname>
33         <surname>Poettering</surname>
34         <email>lennart@poettering.net</email>
35       </author>
36     </authorgroup>
37   </refentryinfo>
38
39   <refmeta>
40     <refentrytitle>logind.conf</refentrytitle>
41     <manvolnum>5</manvolnum>
42   </refmeta>
43
44   <refnamediv>
45     <refname>logind.conf</refname>
46     <refpurpose>Login manager configuration files</refpurpose>
47   </refnamediv>
48
49   <refsynopsisdiv>
50     <para><filename>/etc/elogind/logind.conf</filename></para>
51   </refsynopsisdiv>
52
53   <refsect1>
54     <title>Description</title>
55
56     <para>These files configure various parameters of the elogind
57     login manager.</para>
58   </refsect1>
59
60   <xi:include href="standard-conf.xml" xpointer="main-conf" />
61
62   <refsect1>
63     <title>Options</title>
64
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>
68
69     <refsect2><title>[Login] section:</title>
70       <variablelist>
71
72         <varlistentry>
73           <term><varname>KillUserProcesses=</varname></term>
74
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>
79
80           <para>Note that setting <varname>KillUserProcesses=1</varname>
81           will break tools like
82           <citerefentry project='die-net'><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
83         </varlistentry>
84
85         <varlistentry>
86           <term><varname>KillOnlyUsers=</varname></term>
87           <term><varname>KillExcludeUsers=</varname></term>
88
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>
99         </varlistentry>
100
101         <varlistentry>
102           <term><varname>IdleAction=</varname></term>
103
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>
116
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)
122           has expired.</para>
123           </listitem>
124         </varlistentry>
125
126         <varlistentry>
127           <term><varname>IdleActionSec=</varname></term>
128
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>
132         </varlistentry>
133
134         <varlistentry>
135           <term><varname>InhibitDelayMaxSec=</varname></term>
136
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
141           5.</para></listitem>
142         </varlistentry>
143
144         <varlistentry>
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>
150
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>
181         </varlistentry>
182
183         <varlistentry>
184           <term><varname>PowerKeyIgnoreInhibited=</varname></term>
185           <term><varname>SuspendKeyIgnoreInhibited=</varname></term>
186           <term><varname>HibernateKeyIgnoreInhibited=</varname></term>
187           <term><varname>LidSwitchIgnoreInhibited=</varname></term>
188
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>
204         </varlistentry>
205
206         <varlistentry>
207           <term><varname>HoldoffTimeoutSec=</varname></term>
208
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>
219         </varlistentry>
220
221         <varlistentry>
222           <term><varname>RuntimeDirectorySize=</varname></term>
223
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>
234         </varlistentry>
235
236         <varlistentry>
237           <term><varname>RemoveIPC=</varname></term>
238
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>
244         </varlistentry>
245
246       </variablelist>
247     </refsect2>
248
249     <refsect2><title>[Sleep] section:</title>
250
251       <para><command>elogind</command> supports three general
252       power-saving modes:</para>
253
254       <variablelist>
255         <varlistentry>
256           <term>suspend</term>
257
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.
265           </para></listitem>
266         </varlistentry>
267
268         <varlistentry>
269           <term>hibernate</term>
270
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.
278           </para></listitem>
279         </varlistentry>
280
281         <varlistentry>
282           <term>hybrid-sleep</term>
283
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.
291           </para></listitem>
292         </varlistentry>
293
294         <varlistentry>
295           <term><varname>SuspendMode=</varname></term>
296           <term><varname>HibernateMode=</varname></term>
297           <term><varname>HybridSleepMode=</varname></term>
298
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.
305           </para></listitem>
306         </varlistentry>
307
308         <varlistentry>
309           <term><varname>SuspendState=</varname></term>
310           <term><varname>HibernateState=</varname></term>
311           <term><varname>HybridSleepState=</varname></term>
312
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.
319           </para></listitem>
320         </varlistentry>
321
322       </variablelist>
323     </refsect2>
324   </refsect1>
325
326   <refsect1>
327       <title>See Also</title>
328       <para>
329         <citerefentry><refentrytitle>elogind</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
330         <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
331       </para>
332   </refsect1>
333
334 </refentry>