]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/logind.conf.xml
logind: add HandleLidSwitchDocked= option to logind.conf + documentation
[thirdparty/systemd.git] / man / logind.conf.xml
1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
3 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
4 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
5
6 <!--
7 This file is part of systemd.
8
9 Copyright 2010 Lennart Poettering
10
11 systemd is free software; you can redistribute it and/or modify it
12 under the terms of the GNU Lesser General Public License as published by
13 the Free Software Foundation; either version 2.1 of the License, or
14 (at your option) any later version.
15
16 systemd is distributed in the hope that it will be useful, but
17 WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 Lesser General Public License for more details.
20
21 You should have received a copy of the GNU Lesser General Public License
22 along with systemd; If not, see <http://www.gnu.org/licenses/>.
23 -->
24
25 <refentry id="logind.conf" conditional='ENABLE_LOGIND'>
26 <refentryinfo>
27 <title>logind.conf</title>
28 <productname>systemd</productname>
29
30 <authorgroup>
31 <author>
32 <contrib>Developer</contrib>
33 <firstname>Lennart</firstname>
34 <surname>Poettering</surname>
35 <email>lennart@poettering.net</email>
36 </author>
37 </authorgroup>
38 </refentryinfo>
39
40 <refmeta>
41 <refentrytitle>logind.conf</refentrytitle>
42 <manvolnum>5</manvolnum>
43 </refmeta>
44
45 <refnamediv>
46 <refname>logind.conf</refname>
47 <refpurpose>Login manager configuration file</refpurpose>
48 </refnamediv>
49
50 <refsynopsisdiv>
51 <para><filename>/etc/systemd/logind.conf</filename></para>
52 </refsynopsisdiv>
53
54 <refsect1>
55 <title>Description</title>
56
57 <para>This file configures various parameters of the systemd login manager, <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
58
59 </refsect1>
60
61 <refsect1>
62 <title>Options</title>
63
64 <para>All options are configured in the
65 <literal>[Login]</literal> section:</para>
66
67 <variablelist>
68
69 <varlistentry>
70 <term><varname>NAutoVTs=</varname></term>
71
72 <listitem><para>Takes a positive
73 integer. Configures how many virtual
74 terminals (VTs) to allocate by default
75 that, when switched to and are
76 previously unused,
77 <literal>autovt</literal> services are
78 automatically spawned on. These
79 services are instantiated from the
80 template unit
81 <filename>autovt@.service</filename>
82 for the respective VT TTY name,
83 for example, <filename>autovt@tty4.service</filename>. By
84 default,
85 <filename>autovt@.service</filename>
86 is linked to
87 <filename>getty@.service</filename>.
88 In other words, login prompts are started
89 dynamically as the user switches to
90 unused virtual terminals. Hence, this
91 parameter controls how many login
92 <literal>gettys</literal> are
93 available on the VTs. If a VT is
94 already used by some other subsystem
95 (for example, a graphical login), this
96 kind of activation will not be
97 attempted. Note that the VT configured
98 in <varname>ReserveVT=</varname> is
99 always subject to this kind of
100 activation, even if it is not one of
101 the VTs configured with the
102 <varname>NAutoVTs=</varname>
103 directive. Defaults to 6. When set to
104 0, automatic spawning of
105 <literal>autovt</literal> services is
106 disabled.</para></listitem>
107 </varlistentry>
108
109 <varlistentry>
110 <term><varname>ReserveVT=</varname></term>
111
112 <listitem><para>Takes a positive
113 integer. Identifies one
114 virtual terminal that shall
115 unconditionally be reserved for
116 <filename>autovt@.service</filename>
117 activation (see above). The VT
118 selected with this option will be
119 marked busy unconditionally, so that no
120 other subsystem will allocate it. This
121 functionality is useful to ensure that,
122 regardless of how many VTs are allocated
123 by other subsystems, one login
124 <literal>getty</literal> is always
125 available. Defaults to 6 (in other
126 words, there will always be a
127 <literal>getty</literal> available on
128 Alt-F6.). When set to 0, VT
129 reservation is
130 disabled.</para></listitem>
131 </varlistentry>
132
133 <varlistentry>
134 <term><varname>KillUserProcesses=</varname></term>
135
136 <listitem><para>Takes a boolean
137 argument. Configures whether the
138 processes of a user should be killed
139 when the user completely logs out (i.e. after
140 the user's last session ended). Defaults to
141 <literal>no</literal>.</para>
142
143 <para>Note that setting
144 <varname>KillUserProcesses=1</varname>
145 will break tools like
146 <citerefentry><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
147 </varlistentry>
148
149 <varlistentry>
150 <term><varname>KillOnlyUsers=</varname></term>
151 <term><varname>KillExcludeUsers=</varname></term>
152
153 <listitem><para>These settings take
154 space-separated lists of usernames
155 that influence the effect of
156 <varname>KillUserProcesses=</varname>. If
157 not empty, only processes of users
158 listed in
159 <varname>KillOnlyUsers=</varname> will
160 be killed when they log out
161 entirely. Processes of users listed in
162 <varname>KillExcludeUsers=</varname>
163 are excluded from being
164 killed. <varname>KillExcludeUsers=</varname>
165 defaults to <literal>root</literal>
166 and takes precedence over
167 <varname>KillOnlyUsers=</varname>,
168 which defaults to the empty list.</para></listitem>
169 </varlistentry>
170
171 <varlistentry>
172 <term><varname>IdleAction=</varname></term>
173
174 <listitem><para>Configures the action
175 to take when the system is idle. Takes
176 one of <literal>ignore</literal>,
177 <literal>poweroff</literal>,
178 <literal>reboot</literal>,
179 <literal>halt</literal>,
180 <literal>kexec</literal>,
181 <literal>suspend</literal>,
182 <literal>hibernate</literal>,
183 <literal>hybrid-sleep</literal>, and
184 <literal>lock</literal>. Defaults to
185 <literal>ignore</literal>.</para>
186
187 <para>Note that this requires that
188 user sessions correctly report the
189 idle status to the system. The system
190 will execute the action after all
191 sessions report that they are idle,
192 no idle inhibitor lock is active,
193 and subsequently, the time configured
194 with <varname>IdleActionSec=</varname>
195 (see below) has expired.</para>
196 </listitem>
197 </varlistentry>
198
199 <varlistentry>
200 <term><varname>IdleActionSec=</varname></term>
201
202 <listitem><para>Configures the delay
203 after which the action configured in
204 <varname>IdleAction=</varname> (see
205 above) is taken after the system is
206 idle.</para></listitem>
207 </varlistentry>
208
209 <varlistentry>
210 <term><varname>InhibitDelayMaxSec=</varname></term>
211
212 <listitem><para>Specifies the maximum
213 time a system shutdown or sleep
214 request is delayed due to an inhibitor
215 lock of type <literal>delay</literal>
216 being active before the inhibitor is
217 ignored and the operation executes
218 anyway. Defaults to
219 5.</para></listitem>
220 </varlistentry>
221
222 <varlistentry>
223 <term><varname>HandlePowerKey=</varname></term>
224 <term><varname>HandleSuspendKey=</varname></term>
225 <term><varname>HandleHibernateKey=</varname></term>
226 <term><varname>HandleLidSwitch=</varname></term>
227 <term><varname>HandleLidSwitchDocked=</varname></term>
228
229 <listitem><para>Controls whether
230 logind shall handle the system power
231 and sleep keys and the lid switch to
232 trigger actions such as system
233 power-off or suspend. Can be one of
234 <literal>ignore</literal>,
235 <literal>poweroff</literal>,
236 <literal>reboot</literal>,
237 <literal>halt</literal>,
238 <literal>kexec</literal>,
239 <literal>suspend</literal>,
240 <literal>hibernate</literal>,
241 <literal>hybrid-sleep</literal>, and
242 <literal>lock</literal>. If
243 <literal>ignore</literal>, logind will
244 never handle these keys. If
245 <literal>lock</literal>, all running
246 sessions will be screen-locked;
247 otherwise, the specified action will
248 be taken in the respective event. Only
249 input devices with the
250 <literal>power-switch</literal> udev
251 tag will be watched for key/lid switch
252 events. <varname>HandlePowerKey=</varname>
253 defaults to
254 <literal>poweroff</literal>.
255 <varname>HandleSuspendKey=</varname>
256 and
257 <varname>HandleLidSwitch=</varname>
258 default to <literal>suspend</literal>.
259 <varname>HandleLidSwitchDocked=</varname>
260 defaults to <literal>ignore</literal>.
261 <varname>HandleHibernateKey=</varname>
262 defaults to
263 <literal>hibernate</literal>. If the
264 system is inserted in a docking station,
265 or if more than one display is connected,
266 the action specified by
267 <varname>HandleLidSwitchDocked=</varname>
268 occurs; otherwise the
269 <varname>HandleLidSwitch=</varname>
270 action occurs.</para></listitem>
271 </varlistentry>
272
273 <varlistentry>
274 <term><varname>PowerKeyIgnoreInhibited=</varname></term>
275 <term><varname>SuspendKeyIgnoreInhibited=</varname></term>
276 <term><varname>HibernateKeyIgnoreInhibited=</varname></term>
277 <term><varname>LidSwitchIgnoreInhibited=</varname></term>
278
279 <listitem><para>Controls whether
280 actions triggered by the power and
281 sleep keys and the lid switch are
282 subject to inhibitor locks. These
283 settings take boolean arguments. If
284 <literal>off</literal>, the inhibitor
285 locks taken by applications in order
286 to block the requested operation are
287 respected. If <literal>on</literal>,
288 the requested operation is executed in
289 any
290 case. <varname>PowerKeyIgnoreInhibited=</varname>,
291 <varname>SuspendKeyIgnoreInhibited=</varname>
292 and
293 <varname>HibernateKeyIgnoreInhibited=</varname>
294 default to <literal>off</literal>.
295 <varname>LidSwitchIgnoreInhibited=</varname>
296 defaults to
297 <literal>yes</literal>. This means
298 that the lid switch does not respect
299 suspend blockers by default, but the
300 power and sleep keys do.
301 </para></listitem>
302 </varlistentry>
303
304 <varlistentry>
305 <term><varname>RuntimeDirectorySize=</varname></term>
306
307 <listitem><para>Sets the size limit on
308 the
309 <varname>$XDG_RUNTIME_DIR</varname>
310 runtime directory for each user who
311 logs in. Takes a size in bytes,
312 optionally suffixed with the usual K, G,
313 M, and T suffixes, to the base 1024
314 (IEC). Alternatively, a numerical
315 percentage suffixed by <literal>%</literal>
316 may be specified, which sets the size
317 limit relative to the amount of
318 physical RAM. Defaults to 10%. Note
319 that this size is a safety limit
320 only. As each runtime directory is a
321 tmpfs file system, it will only consume
322 as much memory as is needed.
323 </para></listitem>
324 </varlistentry>
325
326 <varlistentry>
327 <term><varname>RemoveIPC=</varname></term>
328
329 <listitem><para>Controls whether
330 System V and POSIX IPC objects
331 belonging to the user shall be removed
332 when the user fully logs out. Takes a
333 boolean argument. If enabled, the user
334 may not consume IPC resources after
335 the last of his sessions
336 terminated. This covers System V
337 semaphores, shared memory and message
338 queues, as well as POSIX shared memory
339 and message queues. Note that IPC
340 objects of the root user are excluded
341 from the effect of this
342 setting. Defaults to
343 <literal>yes</literal>.</para></listitem>
344 </varlistentry>
345
346 </variablelist>
347 </refsect1>
348
349 <refsect1>
350 <title>See Also</title>
351 <para>
352 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
353 <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
354 <citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
355 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
356 </para>
357 </refsect1>
358
359 </refentry>