]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/kernel-command-line.xml
man: Add xinclude namespace
[thirdparty/systemd.git] / man / kernel-command-line.xml
1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4 <!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
5
6 <refentry id="kernel-command-line" xmlns:xi="http://www.w3.org/2001/XInclude">
7
8 <refentryinfo>
9 <title>kernel-command-line</title>
10 <productname>systemd</productname>
11 </refentryinfo>
12
13 <refmeta>
14 <refentrytitle>kernel-command-line</refentrytitle>
15 <manvolnum>7</manvolnum>
16 </refmeta>
17
18 <refnamediv>
19 <refname>kernel-command-line</refname>
20 <refpurpose>Kernel command line parameters</refpurpose>
21 </refnamediv>
22
23 <refsynopsisdiv>
24 <para><filename>/proc/cmdline</filename></para>
25 </refsynopsisdiv>
26
27 <refsect1>
28 <title>Description</title>
29
30 <para>The kernel, the programs running in the initrd and in the host system may be configured at boot via
31 kernel command line arguments. In addition, various systemd tools look at the EFI variable
32 <literal>SystemdOptions</literal> (if available). Both sources are combined, but the kernel command line
33 has higher priority. Please note that <emphasis>the EFI variable is only used by systemd tools, and is
34 ignored by the kernel and other user space tools</emphasis>, so it is not a replacement for the kernel
35 command line.</para>
36
37 <para>For command line parameters understood by the kernel, please
38 see
39 <ulink url="https://docs.kernel.org/admin-guide/kernel-parameters.html"><filename>kernel-parameters.html</filename></ulink>
40 and
41 <citerefentry project='man-pages'><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
42
43 <para>For command line parameters understood by the initrd, see
44 <citerefentry project='man-pages'><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
45 or the documentation of the specific initrd implementation of your
46 installation.</para>
47 </refsect1>
48
49 <refsect1>
50 <title>Core OS Command Line Arguments</title>
51
52 <variablelist class='kernel-commandline-options'>
53 <varlistentry>
54 <term><varname>systemd.unit=</varname></term>
55 <term><varname>rd.systemd.unit=</varname></term>
56 <term><varname>systemd.dump_core</varname></term>
57 <term><varname>systemd.early_core_pattern=</varname></term>
58 <term><varname>systemd.crash_chvt</varname></term>
59 <term><varname>systemd.crash_shell</varname></term>
60 <term><varname>systemd.crash_reboot</varname></term>
61 <term><varname>systemd.confirm_spawn</varname></term>
62 <term><varname>systemd.service_watchdogs</varname></term>
63 <term><varname>systemd.show_status</varname></term>
64 <term><varname>systemd.status_unit_format=</varname></term>
65 <term><varname>systemd.log_target=</varname></term>
66 <term><varname>systemd.log_level=</varname></term>
67 <term><varname>systemd.log_location=</varname></term>
68 <term><varname>systemd.log_color</varname></term>
69 <term><varname>systemd.log_ratelimit_kmsg</varname></term>
70 <term><varname>systemd.default_standard_output=</varname></term>
71 <term><varname>systemd.default_standard_error=</varname></term>
72 <term><varname>systemd.setenv=</varname></term>
73 <term><varname>systemd.machine_id=</varname></term>
74 <term><varname>systemd.set_credential=</varname></term>
75 <term><varname>systemd.set_credential_binary=</varname></term>
76 <term><varname>systemd.import_credentials=</varname></term>
77 <term><varname>systemd.reload_limit_interval_sec=</varname></term>
78 <term><varname>systemd.reload_limit_burst=</varname></term>
79 <listitem>
80 <para>Parameters understood by the system and service
81 manager to control system behavior. For details, see
82 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
83 </listitem>
84 </varlistentry>
85
86 <varlistentry>
87 <term><varname>systemd.mask=</varname></term>
88 <term><varname>systemd.wants=</varname></term>
89 <term><varname>systemd.debug_shell</varname></term>
90 <listitem>
91 <para>Additional parameters understood by
92 <citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
93 to mask or start specific units at boot, or invoke a debug
94 shell on tty9.</para>
95 </listitem>
96 </varlistentry>
97
98 <varlistentry>
99 <term><varname>systemd.run=</varname></term>
100 <term><varname>systemd.run_success_action=</varname></term>
101 <term><varname>systemd.run_failure_action=</varname></term>
102 <listitem>
103 <para>Additional parameters understood by
104 <citerefentry><refentrytitle>systemd-run-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>, to
105 run a command line specified on the kernel command line as system service after booting up.</para>
106 </listitem>
107 </varlistentry>
108
109 <varlistentry>
110 <term><varname>systemd.early_core_pattern=</varname></term>
111 <listitem>
112 <para>During early boot, the generation of core dump files is disabled until a core dump handler (if any)
113 takes over. This parameter allows specifying an absolute path where core dump files should be stored until
114 a handler is installed. The path should be absolute and may contain specifiers, see
115 <citerefentry project='man-pages'><refentrytitle>core</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details.</para>
116 </listitem>
117 </varlistentry>
118
119 <varlistentry>
120 <term><varname>systemd.restore_state=</varname></term>
121 <listitem>
122 <para>This parameter is understood by several system tools
123 to control whether or not they should restore system state
124 from the previous boot. For details, see
125 <citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
126 and
127 <citerefentry><refentrytitle>systemd-rfkill.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
128 </para>
129 </listitem>
130 </varlistentry>
131
132 <varlistentry>
133 <term><varname>systemd.volatile=</varname></term>
134 <listitem>
135 <para>This parameter controls whether the system shall boot up in volatile mode. Takes a boolean argument, or
136 the special value <literal>state</literal>. If false (the default), normal boot mode is selected, the root
137 directory and <filename>/var/</filename> are mounted as specified on the kernel command line or
138 <filename>/etc/fstab</filename>, or otherwise configured. If true, full state-less boot mode is selected. In
139 this case the root directory is mounted as volatile memory file system (<literal>tmpfs</literal>), and only
140 <filename>/usr/</filename> is mounted from the file system configured as root device, in read-only mode. This
141 enables fully state-less boots were the vendor-supplied OS is used as shipped, with only default
142 configuration and no stored state in effect, as <filename>/etc/</filename> and <filename>/var/</filename> (as
143 well as all other resources shipped in the root file system) are reset at boot and lost on shutdown. If this
144 setting is set to <literal>state</literal> the root file system is mounted read-only, however
145 <filename>/var/</filename> is mounted as a volatile memory file system (<literal>tmpfs</literal>), so that the
146 system boots up with the normal configuration applied, but all state reset at boot and lost at shutdown. If
147 this setting is set to <literal>overlay</literal> the root file system is set up as
148 <literal>overlayfs</literal> mount combining the read-only root directory with a writable
149 <literal>tmpfs</literal>, so that no modifications are made to disk, but the file system may be modified
150 nonetheless with all changes being lost at reboot. For details, see
151 <citerefentry><refentrytitle>systemd-volatile-root.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
152 and
153 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
154 </listitem>
155 </varlistentry>
156
157 <varlistentry>
158 <term><varname>quiet</varname></term>
159 <listitem>
160 <para>Parameter understood by both the kernel and the system
161 and service manager to control console log verbosity. For
162 details, see
163 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
164 </listitem>
165 </varlistentry>
166
167 <varlistentry>
168 <term><varname>debug</varname></term>
169 <listitem>
170 <para>Parameter understood by both the kernel and the system
171 and service manager to control console log verbosity. For
172 details, see
173 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
174 </listitem>
175 </varlistentry>
176
177 <varlistentry>
178 <term><varname>-b</varname></term>
179 <term><varname>rd.emergency</varname></term>
180 <term><varname>emergency</varname></term>
181 <term><varname>rd.rescue</varname></term>
182 <term><varname>rescue</varname></term>
183 <term><varname>single</varname></term>
184 <term><varname>s</varname></term>
185 <term><varname>S</varname></term>
186 <term><varname>1</varname></term>
187 <term><varname>2</varname></term>
188 <term><varname>3</varname></term>
189 <term><varname>4</varname></term>
190 <term><varname>5</varname></term>
191 <listitem>
192 <para>Parameters understood by the system and service
193 manager, as compatibility and convenience options. For details, see
194 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
195 </listitem>
196 </varlistentry>
197
198 <varlistentry>
199 <term><varname>locale.LANG=</varname></term>
200 <term><varname>locale.LANGUAGE=</varname></term>
201 <term><varname>locale.LC_CTYPE=</varname></term>
202 <term><varname>locale.LC_NUMERIC=</varname></term>
203 <term><varname>locale.LC_TIME=</varname></term>
204 <term><varname>locale.LC_COLLATE=</varname></term>
205 <term><varname>locale.LC_MONETARY=</varname></term>
206 <term><varname>locale.LC_MESSAGES=</varname></term>
207 <term><varname>locale.LC_PAPER=</varname></term>
208 <term><varname>locale.LC_NAME=</varname></term>
209 <term><varname>locale.LC_ADDRESS=</varname></term>
210 <term><varname>locale.LC_TELEPHONE=</varname></term>
211 <term><varname>locale.LC_MEASUREMENT=</varname></term>
212 <term><varname>locale.LC_IDENTIFICATION=</varname></term>
213 <listitem>
214 <para>Parameters understood by the system and service
215 manager to control locale and language settings. For
216 details, see
217 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
218 </listitem>
219 </varlistentry>
220
221 <varlistentry>
222 <term><varname>fsck.mode=</varname></term>
223 <term><varname>fsck.repair=</varname></term>
224
225 <listitem>
226 <para>Parameters understood by the file system checker
227 services. For details, see
228 <citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
229 </listitem>
230 </varlistentry>
231
232 <varlistentry>
233 <term><varname>quotacheck.mode=</varname></term>
234
235 <listitem>
236 <para>Parameter understood by the file quota checker
237 service. For details, see
238 <citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
239 </listitem>
240 </varlistentry>
241
242 <varlistentry>
243 <term><varname>systemd.journald.forward_to_syslog=</varname></term>
244 <term><varname>systemd.journald.forward_to_kmsg=</varname></term>
245 <term><varname>systemd.journald.forward_to_console=</varname></term>
246 <term><varname>systemd.journald.forward_to_wall=</varname></term>
247
248 <listitem>
249 <para>Parameters understood by the journal service. For
250 details, see
251 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
252 </listitem>
253 </varlistentry>
254
255 <varlistentry>
256 <term><varname>vconsole.keymap=</varname></term>
257 <term><varname>vconsole.keymap_toggle=</varname></term>
258 <term><varname>vconsole.font=</varname></term>
259 <term><varname>vconsole.font_map=</varname></term>
260 <term><varname>vconsole.font_unimap=</varname></term>
261
262 <listitem>
263 <para>Parameters understood by the virtual console setup logic. For details, see
264 <citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
265 </listitem>
266 </varlistentry>
267
268 <varlistentry>
269 <term><varname>udev.log_level=</varname></term>
270 <term><varname>rd.udev.log_level=</varname></term>
271 <term><varname>udev.children_max=</varname></term>
272 <term><varname>rd.udev.children_max=</varname></term>
273 <term><varname>udev.exec_delay=</varname></term>
274 <term><varname>rd.udev.exec_delay=</varname></term>
275 <term><varname>udev.event_timeout=</varname></term>
276 <term><varname>rd.udev.event_timeout=</varname></term>
277 <term><varname>udev.timeout_signal=</varname></term>
278 <term><varname>rd.udev.timeout_signal=</varname></term>
279 <term><varname>udev.blockdev_read_only</varname></term>
280 <term><varname>rd.udev.blockdev_read_only</varname></term>
281 <term><varname>net.ifnames=</varname></term>
282 <term><varname>net.naming-scheme=</varname></term>
283
284 <listitem>
285 <para>Parameters understood by the device event managing
286 daemon. For details, see
287 <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
288 </listitem>
289 </varlistentry>
290
291 <varlistentry>
292 <term><varname>plymouth.enable=</varname></term>
293
294 <listitem>
295 <para>May be used to disable the Plymouth boot splash. For
296 details, see
297 <citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
298 </listitem>
299 </varlistentry>
300
301 <varlistentry>
302 <term><varname>luks=</varname></term>
303 <term><varname>rd.luks=</varname></term>
304 <term><varname>luks.crypttab=</varname></term>
305 <term><varname>rd.luks.crypttab=</varname></term>
306 <term><varname>luks.name=</varname></term>
307 <term><varname>rd.luks.name=</varname></term>
308 <term><varname>luks.uuid=</varname></term>
309 <term><varname>rd.luks.uuid=</varname></term>
310 <term><varname>luks.options=</varname></term>
311 <term><varname>rd.luks.options=</varname></term>
312 <term><varname>luks.key=</varname></term>
313 <term><varname>rd.luks.key=</varname></term>
314
315 <listitem>
316 <para>Configures the LUKS full-disk encryption logic at
317 boot. For details, see
318 <citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
319 </listitem>
320 </varlistentry>
321
322 <varlistentry>
323 <term><varname>fstab=</varname></term>
324 <term><varname>rd.fstab=</varname></term>
325
326 <listitem>
327 <para>Configures the <filename>/etc/fstab</filename> logic
328 at boot. For details, see
329 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
330 </listitem>
331 </varlistentry>
332
333 <varlistentry>
334 <term><varname>root=</varname></term>
335 <term><varname>rootfstype=</varname></term>
336 <term><varname>rootflags=</varname></term>
337 <term><varname>ro</varname></term>
338 <term><varname>rw</varname></term>
339
340 <listitem>
341 <para>Configures the root file system and its file system type and mount options, as well as
342 whether it shall be mounted read-only or read-write initially. For details, see
343 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
344
345 <para>If <varname>root=</varname> is not set (or set to <literal>gpt-auto</literal>) the automatic
346 root partition discovery implemented by
347 <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
348 will be in effect. In this case <varname>rootfstype=</varname>, <varname>rootflags=</varname>,
349 <varname>ro</varname>, <varname>rw</varname> will be interpreted by
350 <command>systemd-gpt-auto-generator</command>.</para>
351 </listitem>
352 </varlistentry>
353
354 <varlistentry>
355 <term><varname>mount.usr=</varname></term>
356 <term><varname>mount.usrfstype=</varname></term>
357 <term><varname>mount.usrflags=</varname></term>
358
359 <listitem>
360 <para>Configures the /usr file system (if required) and
361 its file system type and mount options. For details, see
362 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
363 </listitem>
364 </varlistentry>
365
366 <varlistentry>
367 <term><varname>veritytab=</varname></term>
368 <term><varname>rd.veritytab=</varname></term>
369 <term><varname>roothash=</varname></term>
370 <term><varname>systemd.verity=</varname></term>
371 <term><varname>rd.systemd.verity=</varname></term>
372 <term><varname>systemd.verity_root_data=</varname></term>
373 <term><varname>systemd.verity_root_hash=</varname></term>
374 <term><varname>systemd.verity.root_options=</varname></term>
375 <term><varname>usrhash=</varname></term>
376 <term><varname>systemd.verity_usr_data=</varname></term>
377 <term><varname>systemd.verity_usr_hash=</varname></term>
378 <term><varname>systemd.verity_usr_options=</varname></term>
379 <listitem>
380 <para>Configures the integrity protection root hash for the root and <filename>/usr</filename> file systems, and other related
381 parameters. For details, see
382 <citerefentry><refentrytitle>systemd-veritysetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
383 </listitem>
384 </varlistentry>
385
386 <varlistentry>
387 <term><varname>systemd.getty_auto=</varname></term>
388
389 <listitem>
390 <para>Configures whether the <filename>serial-getty@.service</filename> will run.
391 For details, see
392 <citerefentry><refentrytitle>systemd-getty-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
393 </listitem>
394 </varlistentry>
395
396 <varlistentry>
397 <term><varname>systemd.gpt_auto=</varname></term>
398 <term><varname>rd.systemd.gpt_auto=</varname></term>
399
400 <listitem>
401 <para>Configures whether GPT-based partition auto-discovery shall be attempted. For details, see
402 <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
403 </listitem>
404 </varlistentry>
405
406 <varlistentry>
407 <term><varname>systemd.image_policy=</varname></term>
408 <term><varname>rd.systemd.image_policy=</varname></term>
409
410 <listitem><para>When GPT-based partition auto-discovery is used, configures the image dissection
411 policy string to apply, as per
412 <citerefentry><refentrytitle>systemd.image-policy</refentrytitle><manvolnum>7</manvolnum></citerefentry>. For
413 details see
414 <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para></listitem>
415 </varlistentry>
416
417 <varlistentry>
418 <term><varname>systemd.default_timeout_start_sec=</varname></term>
419
420 <listitem>
421 <para>Overrides the default start job timeout <varname>DefaultTimeoutStartSec=</varname> at
422 boot. For details, see
423 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
424 </listitem>
425 </varlistentry>
426
427 <varlistentry>
428 <term><varname>systemd.default_device_timeout_sec=</varname></term>
429
430 <listitem>
431 <para>Overrides the default device timeout <varname>DefaultDeviceTimeoutSec=</varname> at boot. For
432 details, see
433 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
434 </listitem>
435 </varlistentry>
436
437 <varlistentry>
438 <term><varname>systemd.watchdog_device=</varname></term>
439
440 <listitem>
441 <para>Overrides the watchdog device path <varname>WatchdogDevice=</varname>. For details, see
442 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
443 </listitem>
444 </varlistentry>
445
446 <varlistentry>
447 <term><varname>systemd.watchdog_sec=</varname></term>
448
449 <listitem>
450 <para>Overrides the watchdog timeout settings otherwise configured with
451 <varname>RuntimeWatchdog=</varname>, <varname>RebootWatchdog=</varname> and
452 <varname>KExecWatchdogSec=</varname>. Takes a time value (if no unit is specified, seconds is the
453 implicitly assumed time unit) or the special strings <literal>off</literal> or
454 <literal>default</literal>. For details, see
455 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
456 </listitem>
457 </varlistentry>
458
459 <varlistentry>
460 <term><varname>systemd.watchdog_pre_sec=</varname></term>
461
462 <listitem>
463 <para>Overrides the watchdog pre-timeout settings otherwise configured with
464 <varname>RuntimeWatchdogPreSec=</varname>. Takes a time value (if no unit is specified, seconds is the
465 implicitly assumed time unit) or the special strings <literal>off</literal> or
466 <literal>default</literal>. For details, see
467 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
468 </listitem>
469 </varlistentry>
470
471 <varlistentry>
472 <term><varname>systemd.watchdog_pretimeout_governor=</varname></term>
473
474 <listitem>
475 <para>Overrides the watchdog pre-timeout settings otherwise configured with
476 <varname>RuntimeWatchdogPreGovernor=</varname>. Takes a string value. For details, see
477 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
478 </listitem>
479 </varlistentry>
480
481 <varlistentry>
482 <term><varname>systemd.cpu_affinity=</varname></term>
483
484 <listitem>
485 <para>Overrides the CPU affinity mask for the service manager and the default for all child
486 processes it forks. This takes precedence over <varname>CPUAffinity=</varname>, see
487 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
488 for details.</para>
489 </listitem>
490 </varlistentry>
491
492 <varlistentry>
493 <term><varname>modules_load=</varname></term>
494 <term><varname>rd.modules_load=</varname></term>
495
496 <listitem>
497 <para>Load a specific kernel module early at boot. For
498 details, see
499 <citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
500 </listitem>
501 </varlistentry>
502
503 <varlistentry>
504 <term><varname>nameserver=</varname></term>
505 <term><varname>domain=</varname></term>
506
507 <listitem><para>Configures DNS server information and search domains, see
508 <citerefentry><refentrytitle>systemd-resolved.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
509 for details.</para></listitem>
510 </varlistentry>
511
512 <varlistentry>
513 <term><varname>resume=</varname></term>
514 <term><varname>resumeflags=</varname></term>
515
516 <listitem>
517 <para>Enables resume from hibernation using the specified
518 device and mount options. All
519 <citerefentry project='man-pages'><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>-like
520 paths are supported. For details, see
521 <citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
522 </listitem>
523 </varlistentry>
524
525 <varlistentry>
526 <term><varname>systemd.firstboot=</varname></term>
527
528 <listitem><para>Takes a boolean argument, defaults to on. If off,
529 <citerefentry><refentrytitle>systemd-firstboot.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
530 will not query the user for basic system settings, even if the system boots up for the first time and
531 the relevant settings are not initialized yet. Not to be confused with
532 <varname>systemd.condition-first-boot=</varname> (see below), which overrides the result of the
533 <varname>ConditionFirstBoot=</varname> unit file condition, and thus controls more than just
534 <filename>systemd-firstboot.service</filename> behaviour.</para></listitem>
535 </varlistentry>
536
537 <varlistentry>
538 <term><varname>systemd.condition-needs-update=</varname></term>
539
540 <listitem><para>Takes a boolean argument. If specified, overrides the result of
541 <varname>ConditionNeedsUpdate=</varname> unit condition checks. See
542 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> for
543 details.</para></listitem>
544 </varlistentry>
545
546 <varlistentry>
547 <term><varname>systemd.condition-first-boot=</varname></term>
548
549 <listitem><para>Takes a boolean argument. If specified, overrides the result of
550 <varname>ConditionFirstBoot=</varname> unit condition checks. See
551 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> for
552 details. Not to be confused with <varname>systemd.firstboot=</varname> which only controls behaviour
553 of the <filename>systemd-firstboot.service</filename> system service but has no effect on the
554 condition check (see above).</para></listitem>
555 </varlistentry>
556
557 <varlistentry>
558 <term><varname>systemd.clock-usec=</varname></term>
559
560 <listitem><para>Takes a decimal, numeric timestamp in μs since January 1st 1970, 00:00am, to set the
561 system clock to. The system time is set to the specified timestamp early during boot. It is not
562 propagated to the hardware clock (RTC).</para></listitem>
563 </varlistentry>
564
565 <varlistentry>
566 <term><varname>systemd.random-seed=</varname></term>
567
568 <listitem><para>Takes a base64 encoded random seed value to credit with full entropy to the kernel's
569 random pool during early service manager initialization. This option is useful in testing
570 environments where delays due to random pool initialization in entropy starved virtual machines shall
571 be avoided.</para>
572
573 <para>Note that if this option is used the seed is accessible to unprivileged programs from
574 <filename>/proc/cmdline</filename>. This option is hence a security risk when used outside of test
575 systems, since the (possibly) only seed used for initialization of the kernel's entropy pool might be
576 easily acquired by unprivileged programs.</para>
577
578 <para>It is recommended to pass 512 bytes of randomized data (as that matches the Linux kernel pool
579 size), which may be generated with a command like the following:</para>
580
581 <programlisting>dd if=/dev/urandom bs=512 count=1 status=none | base64 -w 0</programlisting>
582
583 <para>Again: do not use this option outside of testing environments, it's a security risk elsewhere,
584 as secret key material derived from the entropy pool can possibly be reconstructed by unprivileged
585 programs.</para>
586 </listitem>
587 </varlistentry>
588
589 <varlistentry>
590 <term><varname>systemd.hostname=</varname></term>
591
592 <listitem><para>Accepts a hostname to set during early boot. If specified takes precedence over what
593 is set in <filename>/etc/hostname</filename>. Note that this does not bar later runtime changes to
594 the hostname, it simply controls the initial hostname set during early boot.</para></listitem>
595 </varlistentry>
596
597 <varlistentry>
598 <term><varname>systemd.tty.term.<replaceable>tty</replaceable>=</varname></term>
599 <term><varname>systemd.tty.rows.<replaceable>tty</replaceable>=</varname></term>
600 <term><varname>systemd.tty.columns.<replaceable>tty</replaceable>=</varname></term>
601
602 <listitem><para>These arguments allow configuring default values for <varname>$TERM</varname>,
603 <varname>TTYRows=</varname>, and <varname>TTYColumns=</varname> for tty
604 <replaceable>tty</replaceable>. Additionally, <varname>systemd.tty.term.console</varname> will
605 configure the <varname>$TERM</varname> value used by <command>systemd</command> if not set explicitly
606 using <varname>TERM</varname> on the kernel command line. The tty name should be specified without
607 the <filename>/dev/</filename> prefix (e.g. <literal>systemd.tty.rows.ttyS0=80</literal>).
608 </para></listitem>
609 </varlistentry>
610 </variablelist>
611 </refsect1>
612
613 <refsect1>
614 <title>History</title>
615
616 <variablelist>
617 <varlistentry>
618 <term>systemd 252</term>
619 <listitem><para>Kernel command-line arguments <varname>systemd.unified_cgroup_hierarchy</varname>
620 and <varname>systemd.legacy_systemd_cgroup_controller</varname> were deprecated. Please switch to
621 the unified cgroup hierarchy.</para></listitem>
622 </varlistentry>
623 </variablelist>
624 </refsect1>
625
626 <refsect1>
627 <title>See Also</title>
628 <para>
629 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
630 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
631 <citerefentry project='man-pages'><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
632 <citerefentry><refentrytitle>systemd.system-credentials</refentrytitle><manvolnum>7</manvolnum></citerefentry>
633 <citerefentry><refentrytitle>smbios-type-11</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
634 <citerefentry project='man-pages'><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
635 <citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
636 <citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
637 <citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
638 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
639 <citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
640 <citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
641 <citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
642 <citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
643 <citerefentry><refentrytitle>systemd-veritysetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
644 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
645 <citerefentry><refentrytitle>systemd-getty-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
646 <citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
647 <citerefentry><refentrytitle>systemd-volatile-root.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
648 <citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
649 <citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
650 <citerefentry><refentrytitle>systemd-rfkill.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
651 <citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
652 <citerefentry><refentrytitle>systemd-firstboot.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
653 <citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
654 </para>
655 </refsect1>
656
657 </refentry>