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