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+ -->
6 <refentry id=
"kernel-command-line">
9 <title>kernel-command-line
</title>
10 <productname>systemd
</productname>
14 <refentrytitle>kernel-command-line
</refentrytitle>
15 <manvolnum>7</manvolnum>
19 <refname>kernel-command-line
</refname>
20 <refpurpose>Kernel command line parameters
</refpurpose>
24 <para><filename>/proc/cmdline
</filename></para>
28 <title>Description
</title>
30 <para>The kernel, the initial RAM disk (initrd) and basic userspace functionality may be configured at
31 boot via 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
37 <para>For command line parameters understood by the kernel, please
39 <ulink url=
"https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html"><filename>kernel-parameters.html
</filename></ulink>
41 <citerefentry project='man-pages'
><refentrytitle>bootparam
</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
</para>
43 <para>For command line parameters understood by the initial RAM
45 <citerefentry project='man-pages'
><refentrytitle>dracut.cmdline
</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
46 or the documentation of the specific initrd implementation of your
51 <title>Core OS Command Line Arguments
</title>
53 <variablelist class='kernel-commandline-options'
>
55 <term><varname>systemd.unit=
</varname></term>
56 <term><varname>rd.systemd.unit=
</varname></term>
57 <term><varname>systemd.dump_core
</varname></term>
58 <term><varname>systemd.early_core_pattern=
</varname></term>
59 <term><varname>systemd.crash_chvt
</varname></term>
60 <term><varname>systemd.crash_shell
</varname></term>
61 <term><varname>systemd.crash_reboot
</varname></term>
62 <term><varname>systemd.confirm_spawn
</varname></term>
63 <term><varname>systemd.service_watchdogs
</varname></term>
64 <term><varname>systemd.show_status
</varname></term>
65 <term><varname>systemd.status_unit_format=
</varname></term>
66 <term><varname>systemd.log_target=
</varname></term>
67 <term><varname>systemd.log_level=
</varname></term>
68 <term><varname>systemd.log_location=
</varname></term>
69 <term><varname>systemd.log_color
</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.unified_cgroup_hierarchy
</varname></term>
75 <term><varname>systemd.legacy_systemd_cgroup_controller
</varname></term>
77 <para>Parameters understood by the system and service
78 manager to control system behavior. For details, see
79 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
</para>
84 <term><varname>systemd.mask=
</varname></term>
85 <term><varname>systemd.wants=
</varname></term>
86 <term><varname>systemd.debug_shell
</varname></term>
88 <para>Additional parameters understood by
89 <citerefentry><refentrytitle>systemd-debug-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
90 to mask or start specific units at boot, or invoke a debug
96 <term><varname>systemd.run=
</varname></term>
97 <term><varname>systemd.run_success_action=
</varname></term>
98 <term><varname>systemd.run_failure_action=
</varname></term>
100 <para>Additional parameters understood by
101 <citerefentry><refentrytitle>systemd-run-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>, to
102 run a command line specified on the kernel command line as system service after booting up.
</para>
107 <term><varname>systemd.early_core_pattern=
</varname></term>
109 <para>During early boot, the generation of core dump files is disabled until a core dump handler (if any)
110 takes over. This parameter allows specifying an absolute path where core dump files should be stored until
111 a handler is installed. The path should be absolute and may contain specifiers, see
112 <citerefentry><refentrytitle>core
</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details.
</para>
117 <term><varname>systemd.restore_state=
</varname></term>
119 <para>This parameter is understood by several system tools
120 to control whether or not they should restore system state
121 from the previous boot. For details, see
122 <citerefentry><refentrytitle>systemd-backlight@.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>
124 <citerefentry><refentrytitle>systemd-rfkill.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
130 <term><varname>systemd.volatile=
</varname></term>
132 <para>This parameter controls whether the system shall boot up in volatile mode. Takes a boolean argument, or
133 the special value
<literal>state
</literal>. If false (the default), normal boot mode is selected, the root
134 directory and
<filename>/var
</filename> are mounted as specified on the kernel command line or
135 <filename>/etc/fstab
</filename>, or otherwise configured. If true, full state-less boot mode is selected. In
136 this case the root directory is mounted as volatile memory file system (
<literal>tmpfs
</literal>), and only
137 <filename>/usr
</filename> is mounted from the file system configured as root device, in read-only mode. This
138 enables fully state-less boots were the vendor-supplied OS is used as shipped, with only default
139 configuration and no stored state in effect, as
<filename>/etc
</filename> and
<filename>/var
</filename> (as
140 well as all other resources shipped in the root file system) are reset at boot and lost on shutdown. If this
141 setting is set to
<literal>state
</literal> the root file system is mounted read-only, however
142 <filename>/var
</filename> is mounted as a volatile memory file system (
<literal>tmpfs
</literal>), so that the
143 system boots up with the normal configuration applied, but all state reset at boot and lost at shutdown. If
144 this setting is set to
<literal>overlay
</literal> the root file system is set up as
145 <literal>overlayfs
</literal> mount combining the read-only root directory with a writable
146 <literal>tmpfs
</literal>, so that no modifications are made to disk, but the file system may be modified
147 nonetheless with all changes being lost at reboot. For details, see
148 <citerefentry><refentrytitle>systemd-volatile-root.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>
150 <citerefentry><refentrytitle>systemd-fstab-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
155 <term><varname>quiet
</varname></term>
157 <para>Parameter understood by both the kernel and the system
158 and service manager to control console log verbosity. For
160 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
</para>
165 <term><varname>debug
</varname></term>
167 <para>Parameter understood by both the kernel and the system
168 and service manager to control console log verbosity. For
170 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
</para>
175 <term><varname>-b
</varname></term>
176 <term><varname>rd.emergency
</varname></term>
177 <term><varname>emergency
</varname></term>
178 <term><varname>rd.rescue
</varname></term>
179 <term><varname>rescue
</varname></term>
180 <term><varname>single
</varname></term>
181 <term><varname>s
</varname></term>
182 <term><varname>S
</varname></term>
183 <term><varname>1</varname></term>
184 <term><varname>2</varname></term>
185 <term><varname>3</varname></term>
186 <term><varname>4</varname></term>
187 <term><varname>5</varname></term>
189 <para>Parameters understood by the system and service
190 manager, as compatibility and convenience options. For details, see
191 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
</para>
196 <term><varname>locale.LANG=
</varname></term>
197 <term><varname>locale.LANGUAGE=
</varname></term>
198 <term><varname>locale.LC_CTYPE=
</varname></term>
199 <term><varname>locale.LC_NUMERIC=
</varname></term>
200 <term><varname>locale.LC_TIME=
</varname></term>
201 <term><varname>locale.LC_COLLATE=
</varname></term>
202 <term><varname>locale.LC_MONETARY=
</varname></term>
203 <term><varname>locale.LC_MESSAGES=
</varname></term>
204 <term><varname>locale.LC_PAPER=
</varname></term>
205 <term><varname>locale.LC_NAME=
</varname></term>
206 <term><varname>locale.LC_ADDRESS=
</varname></term>
207 <term><varname>locale.LC_TELEPHONE=
</varname></term>
208 <term><varname>locale.LC_MEASUREMENT=
</varname></term>
209 <term><varname>locale.LC_IDENTIFICATION=
</varname></term>
211 <para>Parameters understood by the system and service
212 manager to control locale and language settings. For
214 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
</para>
219 <term><varname>fsck.mode=
</varname></term>
220 <term><varname>fsck.repair=
</varname></term>
223 <para>Parameters understood by the file system checker
224 services. For details, see
225 <citerefentry><refentrytitle>systemd-fsck@.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
230 <term><varname>quotacheck.mode=
</varname></term>
233 <para>Parameter understood by the file quota checker
234 service. For details, see
235 <citerefentry><refentrytitle>systemd-quotacheck.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
240 <term><varname>systemd.journald.forward_to_syslog=
</varname></term>
241 <term><varname>systemd.journald.forward_to_kmsg=
</varname></term>
242 <term><varname>systemd.journald.forward_to_console=
</varname></term>
243 <term><varname>systemd.journald.forward_to_wall=
</varname></term>
246 <para>Parameters understood by the journal service. For
248 <citerefentry><refentrytitle>systemd-journald.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
253 <term><varname>vconsole.keymap=
</varname></term>
254 <term><varname>vconsole.keymap_toggle=
</varname></term>
255 <term><varname>vconsole.font=
</varname></term>
256 <term><varname>vconsole.font_map=
</varname></term>
257 <term><varname>vconsole.font_unimap=
</varname></term>
260 <para>Parameters understood by the virtual console setup logic. For details, see
261 <citerefentry><refentrytitle>vconsole.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
</para>
266 <term><varname>udev.log_priority=
</varname></term>
267 <term><varname>rd.udev.log_priority=
</varname></term>
268 <term><varname>udev.children_max=
</varname></term>
269 <term><varname>rd.udev.children_max=
</varname></term>
270 <term><varname>udev.exec_delay=
</varname></term>
271 <term><varname>rd.udev.exec_delay=
</varname></term>
272 <term><varname>udev.event_timeout=
</varname></term>
273 <term><varname>rd.udev.event_timeout=
</varname></term>
274 <term><varname>net.ifnames=
</varname></term>
275 <term><varname>net.naming-scheme=
</varname></term>
278 <para>Parameters understood by the device event managing
279 daemon. For details, see
280 <citerefentry><refentrytitle>systemd-udevd.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
285 <term><varname>plymouth.enable=
</varname></term>
288 <para>May be used to disable the Plymouth boot splash. For
290 <citerefentry project='die-net'
><refentrytitle>plymouth
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
295 <term><varname>luks=
</varname></term>
296 <term><varname>rd.luks=
</varname></term>
297 <term><varname>luks.crypttab=
</varname></term>
298 <term><varname>rd.luks.crypttab=
</varname></term>
299 <term><varname>luks.name=
</varname></term>
300 <term><varname>rd.luks.name=
</varname></term>
301 <term><varname>luks.uuid=
</varname></term>
302 <term><varname>rd.luks.uuid=
</varname></term>
303 <term><varname>luks.options=
</varname></term>
304 <term><varname>rd.luks.options=
</varname></term>
305 <term><varname>luks.key=
</varname></term>
306 <term><varname>rd.luks.key=
</varname></term>
309 <para>Configures the LUKS full-disk encryption logic at
310 boot. For details, see
311 <citerefentry><refentrytitle>systemd-cryptsetup-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
316 <term><varname>fstab=
</varname></term>
317 <term><varname>rd.fstab=
</varname></term>
320 <para>Configures the
<filename>/etc/fstab
</filename> logic
321 at boot. For details, see
322 <citerefentry><refentrytitle>systemd-fstab-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
327 <term><varname>root=
</varname></term>
328 <term><varname>rootfstype=
</varname></term>
329 <term><varname>rootflags=
</varname></term>
330 <term><varname>ro
</varname></term>
331 <term><varname>rw
</varname></term>
334 <para>Configures the root file system and its file system
335 type and mount options, as well as whether it shall be
336 mounted read-only or read-write initially. For details,
338 <citerefentry><refentrytitle>systemd-fstab-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
343 <term><varname>mount.usr=
</varname></term>
344 <term><varname>mount.usrfstype=
</varname></term>
345 <term><varname>mount.usrflags=
</varname></term>
348 <para>Configures the /usr file system (if required) and
349 its file system type and mount options. For details, see
350 <citerefentry><refentrytitle>systemd-fstab-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
355 <term><varname>roothash=
</varname></term>
356 <term><varname>systemd.verity=
</varname></term>
357 <term><varname>rd.systemd.verity=
</varname></term>
358 <term><varname>systemd.verity_root_data=
</varname></term>
359 <term><varname>systemd.verity_root_hash=
</varname></term>
361 <para>Configures the integrity protection root hash for the root file system, and other related
362 parameters. For details, see
363 <citerefentry><refentrytitle>systemd-veritysetup-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
368 <term><varname>systemd.gpt_auto=
</varname></term>
369 <term><varname>rd.systemd.gpt_auto=
</varname></term>
372 <para>Configures whether GPT based partition auto-discovery
373 shall be attempted. For details, see
374 <citerefentry><refentrytitle>systemd-gpt-auto-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
379 <term><varname>systemd.default_timeout_start_sec=
</varname></term>
382 <para>Overwrites the default start job timeout
<varname>DefaultTimeoutStartSec=
</varname> at boot. For details,
383 see
<citerefentry><refentrytitle>systemd-system.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
</para>
388 <term><varname>systemd.watchdog_device=
</varname></term>
391 <para>Overwrites the watchdog device path
<varname>WatchdogDevice=
</varname>. For details, see
392 <citerefentry><refentrytitle>systemd-system.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
</para>
397 <term><varname>systemd.cpu_affinity=
</varname></term>
400 <para>Overrides the CPU affinity mask for the service manager and the default for all child
401 processes it forks. This takes precedence over
<varname>CPUAffinity=
</varname>, see
402 <citerefentry><refentrytitle>systemd-system.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>
408 <term><varname>modules_load=
</varname></term>
409 <term><varname>rd.modules_load=
</varname></term>
412 <para>Load a specific kernel module early at boot. For
414 <citerefentry><refentrytitle>systemd-modules-load.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
419 <term><varname>resume=
</varname></term>
420 <term><varname>resumeflags=
</varname></term>
423 <para>Enables resume from hibernation using the specified
424 device and mount options. All
425 <citerefentry project='man-pages'
><refentrytitle>fstab
</refentrytitle><manvolnum>5</manvolnum></citerefentry>-like
426 paths are supported. For details, see
427 <citerefentry><refentrytitle>systemd-hibernate-resume-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
432 <term><varname>systemd.firstboot=
</varname></term>
434 <listitem><para>Takes a boolean argument, defaults to on. If off,
435 <citerefentry><refentrytitle>systemd-firstboot.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>
436 will not query the user for basic system settings, even if the system boots up for the first time and
437 the relevant settings are not initialized yet. Not to be confused with
438 <varname>systemd.condition-first-boot=
</varname> (see below), which overrides the result of the
439 <varname>ConditionFirstBoot=
</varname> unit file condition, and thus controls more than just
440 <filename>systemd-firstboot.service
</filename> behaviour.
</para></listitem>
444 <term><varname>systemd.condition-needs-update=
</varname></term>
446 <listitem><para>Takes a boolean argument. If specified, overrides the result of
447 <varname>ConditionNeedsUpdate=
</varname> unit condition checks. See
448 <citerefentry><refentrytitle>systemd.unit
</refentrytitle><manvolnum>5</manvolnum></citerefentry> for
449 details.
</para></listitem>
453 <term><varname>systemd.condition-first-boot=
</varname></term>
455 <listitem><para>Takes a boolean argument. If specified, overrides the result of
456 <varname>ConditionFirstBoot=
</varname> unit condition checks. See
457 <citerefentry><refentrytitle>systemd.unit
</refentrytitle><manvolnum>5</manvolnum></citerefentry> for
458 details. Not to be confused with
<varname>systemd.firstboot=
</varname> which only controls behaviour
459 of the
<filename>systemd-firstboot.service
</filename> system service but has no effect on the
460 condition check (see above).
</para></listitem>
464 <term><varname>systemd.clock-usec=
</varname></term>
466 <listitem><para>Takes a decimal, numeric timestamp in µs since January
1st
1970,
00:
00am, to set the
467 system clock to. The system time is set to the specified timestamp early during
468 boot. It is not propagated to the hardware clock (RTC).
</para></listitem>
472 <term><varname>systemd.hostname=
</varname></term>
474 <listitem><para>Accepts a hostname to set during early boot. If specified takes precedence over what
475 is set in
<filename>/etc/hostname
</filename>. Note that this does not bar later runtime changes to
476 the hostname, it simply controls the initial hostname set during early boot.
</para></listitem>
483 <title>See Also
</title>
485 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
486 <citerefentry><refentrytitle>systemd-system.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
487 <citerefentry project='man-pages'
><refentrytitle>bootparam
</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
488 <citerefentry project='man-pages'
><refentrytitle>dracut.cmdline
</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
489 <citerefentry><refentrytitle>systemd-debug-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
490 <citerefentry><refentrytitle>systemd-fsck@.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
491 <citerefentry><refentrytitle>systemd-quotacheck.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
492 <citerefentry><refentrytitle>systemd-journald.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
493 <citerefentry><refentrytitle>systemd-vconsole-setup.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
494 <citerefentry><refentrytitle>systemd-udevd.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
495 <citerefentry project='die-net'
><refentrytitle>plymouth
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
496 <citerefentry><refentrytitle>systemd-cryptsetup-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
497 <citerefentry><refentrytitle>systemd-veritysetup-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
498 <citerefentry><refentrytitle>systemd-fstab-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
499 <citerefentry><refentrytitle>systemd-gpt-auto-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
500 <citerefentry><refentrytitle>systemd-volatile-root.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
501 <citerefentry><refentrytitle>systemd-modules-load.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
502 <citerefentry><refentrytitle>systemd-backlight@.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
503 <citerefentry><refentrytitle>systemd-rfkill.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
504 <citerefentry><refentrytitle>systemd-hibernate-resume-generator
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
505 <citerefentry><refentrytitle>systemd-firstboot.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
506 <citerefentry><refentrytitle>bootctl
</refentrytitle><manvolnum>1</manvolnum></citerefentry>