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