1KERNEL-COMMAND-LINE(7) kernel-command-line KERNEL-COMMAND-LINE(7)
2
3
4
6 kernel-command-line - Kernel command line parameters
7
9 /proc/cmdline
10
12 The kernel, the initial RAM disk (initrd) and basic userspace
13 functionality may be configured at boot via kernel command line
14 arguments. In addition, various systemd tools look at the EFI variable
15 "SystemdOptions" (if available). Both sources are combined, but the
16 kernel command line has higher priority. Please note that the EFI
17 variable is only used by systemd tools, and is ignored by the kernel
18 and other user space tools, so it is not a replacement for the kernel
19 command line.
20
21 For command line parameters understood by the kernel, please see
22 kernel-parameters.html[1] and bootparam(7).
23
24 For command line parameters understood by the initial RAM disk, please
25 see dracut.cmdline(7), or the documentation of the specific initrd
26 implementation of your installation.
27
29 systemd.unit=, rd.systemd.unit=, systemd.dump_core,
30 systemd.early_core_pattern=, systemd.crash_chvt, systemd.crash_shell,
31 systemd.crash_reboot, systemd.confirm_spawn, systemd.service_watchdogs,
32 systemd.show_status, systemd.status_unit_format=, systemd.log_target=,
33 systemd.log_level=, systemd.log_location=, systemd.log_color,
34 systemd.default_standard_output=, systemd.default_standard_error=,
35 systemd.setenv=, systemd.machine_id=, systemd.unified_cgroup_hierarchy,
36 systemd.legacy_systemd_cgroup_controller
37 Parameters understood by the system and service manager to control
38 system behavior. For details, see systemd(1).
39
40 systemd.mask=, systemd.wants=, systemd.debug_shell
41 Additional parameters understood by systemd-debug-generator(8), to
42 mask or start specific units at boot, or invoke a debug shell on
43 tty9.
44
45 systemd.run=, systemd.run_success_action=, systemd.run_failure_action=
46 Additional parameters understood by systemd-run-generator(8), to
47 run a command line specified on the kernel command line as system
48 service after booting up.
49
50 systemd.early_core_pattern=
51 During early boot, the generation of core dump files is disabled
52 until a core dump handler (if any) takes over. This parameter
53 allows specifying an absolute path where core dump files should be
54 stored until a handler is installed. The path should be absolute
55 and may contain specifiers, see core(5) for details.
56
57 systemd.restore_state=
58 This parameter is understood by several system tools to control
59 whether or not they should restore system state from the previous
60 boot. For details, see systemd-backlight@.service(8) and systemd-
61 rfkill.service(8).
62
63 systemd.volatile=
64 This parameter controls whether the system shall boot up in
65 volatile mode. Takes a boolean argument, or the special value
66 "state". If false (the default), normal boot mode is selected, the
67 root directory and /var/ are mounted as specified on the kernel
68 command line or /etc/fstab, or otherwise configured. If true, full
69 state-less boot mode is selected. In this case the root directory
70 is mounted as volatile memory file system ("tmpfs"), and only /usr/
71 is mounted from the file system configured as root device, in
72 read-only mode. This enables fully state-less boots were the
73 vendor-supplied OS is used as shipped, with only default
74 configuration and no stored state in effect, as /etc/ and /var/ (as
75 well as all other resources shipped in the root file system) are
76 reset at boot and lost on shutdown. If this setting is set to
77 "state" the root file system is mounted read-only, however /var/ is
78 mounted as a volatile memory file system ("tmpfs"), so that the
79 system boots up with the normal configuration applied, but all
80 state reset at boot and lost at shutdown. If this setting is set to
81 "overlay" the root file system is set up as "overlayfs" mount
82 combining the read-only root directory with a writable "tmpfs", so
83 that no modifications are made to disk, but the file system may be
84 modified nonetheless with all changes being lost at reboot. For
85 details, see systemd-volatile-root.service(8) and systemd-fstab-
86 generator(8).
87
88 quiet
89 Parameter understood by both the kernel and the system and service
90 manager to control console log verbosity. For details, see
91 systemd(1).
92
93 debug
94 Parameter understood by both the kernel and the system and service
95 manager to control console log verbosity. For details, see
96 systemd(1).
97
98 -b, rd.emergency, emergency, rd.rescue, rescue, single, s, S, 1, 2, 3,
99 4, 5
100 Parameters understood by the system and service manager, as
101 compatibility and convenience options. For details, see systemd(1).
102
103 locale.LANG=, locale.LANGUAGE=, locale.LC_CTYPE=, locale.LC_NUMERIC=,
104 locale.LC_TIME=, locale.LC_COLLATE=, locale.LC_MONETARY=,
105 locale.LC_MESSAGES=, locale.LC_PAPER=, locale.LC_NAME=,
106 locale.LC_ADDRESS=, locale.LC_TELEPHONE=, locale.LC_MEASUREMENT=,
107 locale.LC_IDENTIFICATION=
108 Parameters understood by the system and service manager to control
109 locale and language settings. For details, see systemd(1).
110
111 fsck.mode=, fsck.repair=
112 Parameters understood by the file system checker services. For
113 details, see systemd-fsck@.service(8).
114
115 quotacheck.mode=
116 Parameter understood by the file quota checker service. For
117 details, see systemd-quotacheck.service(8).
118
119 systemd.journald.forward_to_syslog=, systemd.journald.forward_to_kmsg=,
120 systemd.journald.forward_to_console=, systemd.journald.forward_to_wall=
121 Parameters understood by the journal service. For details, see
122 systemd-journald.service(8).
123
124 vconsole.keymap=, vconsole.keymap_toggle=, vconsole.font=,
125 vconsole.font_map=, vconsole.font_unimap=
126 Parameters understood by the virtual console setup logic. For
127 details, see vconsole.conf(5).
128
129 udev.log_level=, rd.udev.log_level=, udev.children_max=,
130 rd.udev.children_max=, udev.exec_delay=, rd.udev.exec_delay=,
131 udev.event_timeout=, rd.udev.event_timeout=, udev.timeout_signal=,
132 rd.udev.timeout_signal=, udev.blockdev_read_only,
133 rd.udev.blockdev_read_only, net.ifnames=, net.naming-scheme=
134 Parameters understood by the device event managing daemon. For
135 details, see systemd-udevd.service(8).
136
137 plymouth.enable=
138 May be used to disable the Plymouth boot splash. For details, see
139 plymouth(8).
140
141 luks=, rd.luks=, luks.crypttab=, rd.luks.crypttab=, luks.name=,
142 rd.luks.name=, luks.uuid=, rd.luks.uuid=, luks.options=,
143 rd.luks.options=, luks.key=, rd.luks.key=
144 Configures the LUKS full-disk encryption logic at boot. For
145 details, see systemd-cryptsetup-generator(8).
146
147 fstab=, rd.fstab=
148 Configures the /etc/fstab logic at boot. For details, see systemd-
149 fstab-generator(8).
150
151 root=, rootfstype=, rootflags=, ro, rw
152 Configures the root file system and its file system type and mount
153 options, as well as whether it shall be mounted read-only or
154 read-write initially. For details, see systemd-fstab-generator(8).
155
156 mount.usr=, mount.usrfstype=, mount.usrflags=
157 Configures the /usr file system (if required) and its file system
158 type and mount options. For details, see systemd-fstab-
159 generator(8).
160
161 veritytab=, rd.veritytab=, roothash=, systemd.verity=,
162 rd.systemd.verity=, systemd.verity_root_data=,
163 systemd.verity_root_hash=, systemd.verity.root_options=
164 Configures the integrity protection root hash for the root file
165 system, and other related parameters. For details, see systemd-
166 veritysetup-generator(8).
167
168 systemd.gpt_auto=, rd.systemd.gpt_auto=
169 Configures whether GPT based partition auto-discovery shall be
170 attempted. For details, see systemd-gpt-auto-generator(8).
171
172 systemd.default_timeout_start_sec=
173 Overwrites the default start job timeout DefaultTimeoutStartSec= at
174 boot. For details, see systemd-system.conf(5).
175
176 systemd.watchdog_device=
177 Overwrites the watchdog device path WatchdogDevice=. For details,
178 see systemd-system.conf(5).
179
180 systemd.cpu_affinity=
181 Overrides the CPU affinity mask for the service manager and the
182 default for all child processes it forks. This takes precedence
183 over CPUAffinity=, see systemd-system.conf(5) for details.
184
185 modules_load=, rd.modules_load=
186 Load a specific kernel module early at boot. For details, see
187 systemd-modules-load.service(8).
188
189 resume=, resumeflags=
190 Enables resume from hibernation using the specified device and
191 mount options. All fstab(5)-like paths are supported. For details,
192 see systemd-hibernate-resume-generator(8).
193
194 systemd.firstboot=
195 Takes a boolean argument, defaults to on. If off, systemd-
196 firstboot.service(8) will not query the user for basic system
197 settings, even if the system boots up for the first time and the
198 relevant settings are not initialized yet. Not to be confused with
199 systemd.condition-first-boot= (see below), which overrides the
200 result of the ConditionFirstBoot= unit file condition, and thus
201 controls more than just systemd-firstboot.service behaviour.
202
203 systemd.condition-needs-update=
204 Takes a boolean argument. If specified, overrides the result of
205 ConditionNeedsUpdate= unit condition checks. See systemd.unit(5)
206 for details.
207
208 systemd.condition-first-boot=
209 Takes a boolean argument. If specified, overrides the result of
210 ConditionFirstBoot= unit condition checks. See systemd.unit(5) for
211 details. Not to be confused with systemd.firstboot= which only
212 controls behaviour of the systemd-firstboot.service system service
213 but has no effect on the condition check (see above).
214
215 systemd.clock-usec=
216 Takes a decimal, numeric timestamp in µs since January 1st 1970,
217 00:00am, to set the system clock to. The system time is set to the
218 specified timestamp early during boot. It is not propagated to the
219 hardware clock (RTC).
220
221 systemd.random-seed=
222 Takes a base64 encoded random seed value to credit with full
223 entropy to the kernel's random pool during early service manager
224 initialization. This option is useful in testing environments where
225 delays due to random pool initialization in entropy starved virtual
226 machines shall be avoided.
227
228 Note that if this option is used the seed is accessible to
229 unprivileged programs from /proc/cmdline. This option is hence a
230 security risk when used outside of test systems, since the
231 (possibly) only seed used for initialization of the kernel's
232 entropy pool might be easily acquired by unprivileged programs.
233
234 It is recommended to pass 512 bytes of randomized data (as that
235 matches the Linux kernel pool size), which may be generated with a
236 command like the following:
237
238 dd if=/dev/urandom bs=512 count=1 status=none | base64 -w 0
239
240 Again: do not use this option outside of testing environments, it's
241 a security risk elsewhere, as secret key material derived from the
242 entropy pool can possibly be reconstructed by unprivileged
243 programs.
244
245 systemd.hostname=
246 Accepts a hostname to set during early boot. If specified takes
247 precedence over what is set in /etc/hostname. Note that this does
248 not bar later runtime changes to the hostname, it simply controls
249 the initial hostname set during early boot.
250
252 systemd(1), systemd-system.conf(5), bootparam(7), dracut.cmdline(7),
253 systemd-debug-generator(8), systemd-fsck@.service(8), systemd-
254 quotacheck.service(8), systemd-journald.service(8), systemd-vconsole-
255 setup.service(8), systemd-udevd.service(8), plymouth(8), systemd-
256 cryptsetup-generator(8), systemd-veritysetup-generator(8), systemd-
257 fstab-generator(8), systemd-gpt-auto-generator(8), systemd-volatile-
258 root.service(8), systemd-modules-load.service(8), systemd-
259 backlight@.service(8), systemd-rfkill.service(8), systemd-hibernate-
260 resume-generator(8), systemd-firstboot.service(8), bootctl(1)
261
263 1. kernel-parameters.html
264 https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
265
266
267
268systemd 249 KERNEL-COMMAND-LINE(7)