'\" t .TH "KERNEL\-COMMAND\-LINE" "7" "" "systemd 254" "kernel-command-line" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" kernel-command-line \- Kernel command line parameters .SH "SYNOPSIS" .PP /proc/cmdline .SH "DESCRIPTION" .PP The kernel, the programs running in the initrd and in the host system may be configured at boot via kernel command line arguments\&. In addition, various systemd tools look at the EFI variable "SystemdOptions" (if available)\&. Both sources are combined, but the kernel command line has higher priority\&. Please note that \fIthe EFI variable is only used by systemd tools, and is ignored by the kernel and other user space tools\fR, so it is not a replacement for the kernel command line\&. .PP For command line parameters understood by the kernel, please see \m[blue]\fBkernel\-parameters\&.html\fR\m[]\&\s-2\u[1]\d\s+2 and \fBbootparam\fR(7)\&. .PP For command line parameters understood by the initrd, see \fBdracut.cmdline\fR(7), or the documentation of the specific initrd implementation of your installation\&. .SH "CORE OS COMMAND LINE ARGUMENTS" .PP \fIsystemd\&.unit=\fR, \fIrd\&.systemd\&.unit=\fR, \fIsystemd\&.dump_core\fR, \fIsystemd\&.crash_chvt\fR, \fIsystemd\&.crash_shell\fR, \fIsystemd\&.crash_reboot\fR, \fIsystemd\&.confirm_spawn\fR, \fIsystemd\&.service_watchdogs\fR, \fIsystemd\&.show_status\fR, \fIsystemd\&.status_unit_format=\fR, \fIsystemd\&.log_target=\fR, \fIsystemd\&.log_level=\fR, \fIsystemd\&.log_location=\fR, \fIsystemd\&.log_color\fR, \fIsystemd\&.log_ratelimit_kmsg\fR, \fIsystemd\&.default_standard_output=\fR, \fIsystemd\&.default_standard_error=\fR, \fIsystemd\&.setenv=\fR, \fIsystemd\&.machine_id=\fR, \fIsystemd\&.set_credential=\fR, \fIsystemd\&.set_credential_binary=\fR, \fIsystemd\&.import_credentials=\fR, \fIsystemd\&.reload_limit_interval_sec=\fR, \fIsystemd\&.reload_limit_burst=\fR .RS 4 Parameters understood by the system and service manager to control system behavior\&. For details, see \fBsystemd\fR(1)\&. .RE .PP \fIsystemd\&.mask=\fR, \fIsystemd\&.wants=\fR, \fIsystemd\&.debug_shell\fR .RS 4 Additional parameters understood by \fBsystemd-debug-generator\fR(8), to mask or start specific units at boot, or invoke a debug shell on tty9\&. .RE .PP \fIsystemd\&.run=\fR, \fIsystemd\&.run_success_action=\fR, \fIsystemd\&.run_failure_action=\fR .RS 4 Additional parameters understood by \fBsystemd-run-generator\fR(8), to run a command line specified on the kernel command line as system service after booting up\&. .RE .PP \fIsystemd\&.early_core_pattern=\fR .RS 4 During early boot, the generation of core dump files is disabled until a core dump handler (if any) takes over\&. This parameter allows specifying an absolute path where core dump files should be stored until a handler is installed\&. The path should be absolute and may contain specifiers, see \fBcore\fR(5) for details\&. .RE .PP \fIsystemd\&.restore_state=\fR .RS 4 This parameter is understood by several system tools to control whether or not they should restore system state from the previous boot\&. For details, see \fBsystemd-backlight@.service\fR(8) and \fBsystemd-rfkill.service\fR(8)\&. .RE .PP \fIsystemd\&.volatile=\fR .RS 4 This parameter controls whether the system shall boot up in volatile mode\&. Takes a boolean argument, or the special value "state"\&. If false (the default), normal boot mode is selected, the root directory and /var/ are mounted as specified on the kernel command line or /etc/fstab, or otherwise configured\&. If true, full state\-less boot mode is selected\&. In this case the root directory is mounted as volatile memory file system ("tmpfs"), and only /usr/ is mounted from the file system configured as root device, in read\-only mode\&. This enables fully state\-less boots were the vendor\-supplied OS is used as shipped, with only default configuration and no stored state in effect, as /etc/ and /var/ (as well as all other resources shipped in the root file system) are reset at boot and lost on shutdown\&. If this setting is set to "state" the root file system is mounted read\-only, however /var/ is mounted as a volatile memory file system ("tmpfs"), so that the system boots up with the normal configuration applied, but all state reset at boot and lost at shutdown\&. If this setting is set to "overlay" the root file system is set up as "overlayfs" mount combining the read\-only root directory with a writable "tmpfs", so that no modifications are made to disk, but the file system may be modified nonetheless with all changes being lost at reboot\&. For details, see \fBsystemd-volatile-root.service\fR(8) and \fBsystemd-fstab-generator\fR(8)\&. .RE .PP \fIquiet\fR .RS 4 Parameter understood by both the kernel and the system and service manager to control console log verbosity\&. For details, see \fBsystemd\fR(1)\&. .RE .PP \fIdebug\fR .RS 4 Parameter understood by both the kernel and the system and service manager to control console log verbosity\&. For details, see \fBsystemd\fR(1)\&. .RE .PP \fI\-b\fR, \fIrd\&.emergency\fR, \fIemergency\fR, \fIrd\&.rescue\fR, \fIrescue\fR, \fIsingle\fR, \fIs\fR, \fIS\fR, \fI1\fR, \fI2\fR, \fI3\fR, \fI4\fR, \fI5\fR .RS 4 Parameters understood by the system and service manager, as compatibility and convenience options\&. For details, see \fBsystemd\fR(1)\&. .RE .PP \fIlocale\&.LANG=\fR, \fIlocale\&.LANGUAGE=\fR, \fIlocale\&.LC_CTYPE=\fR, \fIlocale\&.LC_NUMERIC=\fR, \fIlocale\&.LC_TIME=\fR, \fIlocale\&.LC_COLLATE=\fR, \fIlocale\&.LC_MONETARY=\fR, \fIlocale\&.LC_MESSAGES=\fR, \fIlocale\&.LC_PAPER=\fR, \fIlocale\&.LC_NAME=\fR, \fIlocale\&.LC_ADDRESS=\fR, \fIlocale\&.LC_TELEPHONE=\fR, \fIlocale\&.LC_MEASUREMENT=\fR, \fIlocale\&.LC_IDENTIFICATION=\fR .RS 4 Parameters understood by the system and service manager to control locale and language settings\&. For details, see \fBsystemd\fR(1)\&. .RE .PP \fIfsck\&.mode=\fR, \fIfsck\&.repair=\fR .RS 4 Parameters understood by the file system checker services\&. For details, see \fBsystemd-fsck@.service\fR(8)\&. .RE .PP \fIquotacheck\&.mode=\fR .RS 4 Parameter understood by the file quota checker service\&. For details, see \fBsystemd-quotacheck.service\fR(8)\&. .RE .PP \fIsystemd\&.journald\&.forward_to_syslog=\fR, \fIsystemd\&.journald\&.forward_to_kmsg=\fR, \fIsystemd\&.journald\&.forward_to_console=\fR, \fIsystemd\&.journald\&.forward_to_wall=\fR .RS 4 Parameters understood by the journal service\&. For details, see \fBsystemd-journald.service\fR(8)\&. .RE .PP \fIvconsole\&.keymap=\fR, \fIvconsole\&.keymap_toggle=\fR, \fIvconsole\&.font=\fR, \fIvconsole\&.font_map=\fR, \fIvconsole\&.font_unimap=\fR .RS 4 Parameters understood by the virtual console setup logic\&. For details, see \fBvconsole.conf\fR(5)\&. .RE .PP \fIudev\&.log_level=\fR, \fIrd\&.udev\&.log_level=\fR, \fIudev\&.children_max=\fR, \fIrd\&.udev\&.children_max=\fR, \fIudev\&.exec_delay=\fR, \fIrd\&.udev\&.exec_delay=\fR, \fIudev\&.event_timeout=\fR, \fIrd\&.udev\&.event_timeout=\fR, \fIudev\&.timeout_signal=\fR, \fIrd\&.udev\&.timeout_signal=\fR, \fIudev\&.blockdev_read_only\fR, \fIrd\&.udev\&.blockdev_read_only\fR, \fInet\&.ifnames=\fR, \fInet\&.naming\-scheme=\fR .RS 4 Parameters understood by the device event managing daemon\&. For details, see \fBsystemd-udevd.service\fR(8)\&. .RE .PP \fIplymouth\&.enable=\fR .RS 4 May be used to disable the Plymouth boot splash\&. For details, see \fBplymouth\fR(8)\&. .RE .PP \fIluks=\fR, \fIrd\&.luks=\fR, \fIluks\&.crypttab=\fR, \fIrd\&.luks\&.crypttab=\fR, \fIluks\&.name=\fR, \fIrd\&.luks\&.name=\fR, \fIluks\&.uuid=\fR, \fIrd\&.luks\&.uuid=\fR, \fIluks\&.options=\fR, \fIrd\&.luks\&.options=\fR, \fIluks\&.key=\fR, \fIrd\&.luks\&.key=\fR .RS 4 Configures the LUKS full\-disk encryption logic at boot\&. For details, see \fBsystemd-cryptsetup-generator\fR(8)\&. .RE .PP \fIfstab=\fR, \fIrd\&.fstab=\fR .RS 4 Configures the /etc/fstab logic at boot\&. For details, see \fBsystemd-fstab-generator\fR(8)\&. .RE .PP \fIroot=\fR, \fIrootfstype=\fR, \fIrootflags=\fR, \fIro\fR, \fIrw\fR .RS 4 Configures the root file system and its file system type and mount options, as well as whether it shall be mounted read\-only or read\-write initially\&. For details, see \fBsystemd-fstab-generator\fR(8)\&. .sp If \fIroot=\fR is not set (or set to "gpt\-auto") the automatic root partition discovery implemented by \fBsystemd-gpt-auto-generator\fR(8) will be in effect\&. In this case \fIrootfstype=\fR, \fIrootflags=\fR, \fIro\fR, \fIrw\fR will be interpreted by \fBsystemd\-gpt\-auto\-generator\fR\&. .RE .PP \fImount\&.usr=\fR, \fImount\&.usrfstype=\fR, \fImount\&.usrflags=\fR .RS 4 Configures the /usr file system (if required) and its file system type and mount options\&. For details, see \fBsystemd-fstab-generator\fR(8)\&. .RE .PP \fIveritytab=\fR, \fIrd\&.veritytab=\fR, \fIroothash=\fR, \fIsystemd\&.verity=\fR, \fIrd\&.systemd\&.verity=\fR, \fIsystemd\&.verity_root_data=\fR, \fIsystemd\&.verity_root_hash=\fR, \fIsystemd\&.verity\&.root_options=\fR, \fIusrhash=\fR, \fIsystemd\&.verity_usr_data=\fR, \fIsystemd\&.verity_usr_hash=\fR, \fIsystemd\&.verity_usr_options=\fR .RS 4 Configures the integrity protection root hash for the root and /usr file systems, and other related parameters\&. For details, see \fBsystemd-veritysetup-generator\fR(8)\&. .RE .PP \fIsystemd\&.getty_auto=\fR .RS 4 Configures whether the serial\-getty@\&.service will run\&. For details, see \fBsystemd-getty-generator\fR(8)\&. .RE .PP \fIsystemd\&.gpt_auto=\fR, \fIrd\&.systemd\&.gpt_auto=\fR .RS 4 Configures whether GPT\-based partition auto\-discovery shall be attempted\&. For details, see \fBsystemd-gpt-auto-generator\fR(8)\&. .RE .PP \fIsystemd\&.image_policy=\fR, \fIrd\&.systemd\&.image_policy=\fR .RS 4 When GPT\-based partition auto\-discovery is used, configures the image dissection policy string to apply, as per \fBsystemd.image-policy\fR(7)\&. For details see \fBsystemd-gpt-auto-generator\fR(8)\&. .RE .PP \fIsystemd\&.default_timeout_start_sec=\fR .RS 4 Overrides the default start job timeout \fIDefaultTimeoutStartSec=\fR at boot\&. For details, see \fBsystemd-system.conf\fR(5)\&. .RE .PP \fIsystemd\&.default_device_timeout_sec=\fR .RS 4 Overrides the default device timeout \fIDefaultDeviceTimeoutSec=\fR at boot\&. For details, see \fBsystemd-system.conf\fR(5)\&. .RE .PP \fIsystemd\&.watchdog_device=\fR .RS 4 Overrides the watchdog device path \fIWatchdogDevice=\fR\&. For details, see \fBsystemd-system.conf\fR(5)\&. .RE .PP \fIsystemd\&.watchdog_sec=\fR .RS 4 Overrides the watchdog timeout settings otherwise configured with \fIRuntimeWatchdog=\fR, \fIRebootWatchdog=\fR and \fIKExecWatchdogSec=\fR\&. Takes a time value (if no unit is specified, seconds is the implicitly assumed time unit) or the special strings "off" or "default"\&. For details, see \fBsystemd-system.conf\fR(5)\&. .RE .PP \fIsystemd\&.watchdog_pre_sec=\fR .RS 4 Overrides the watchdog pre\-timeout settings otherwise configured with \fIRuntimeWatchdogPreSec=\fR\&. Takes a time value (if no unit is specified, seconds is the implicitly assumed time unit) or the special strings "off" or "default"\&. For details, see \fBsystemd-system.conf\fR(5)\&. .RE .PP \fIsystemd\&.watchdog_pretimeout_governor=\fR .RS 4 Overrides the watchdog pre\-timeout settings otherwise configured with \fIRuntimeWatchdogPreGovernor=\fR\&. Takes a string value\&. For details, see \fBsystemd-system.conf\fR(5)\&. .RE .PP \fIsystemd\&.cpu_affinity=\fR .RS 4 Overrides the CPU affinity mask for the service manager and the default for all child processes it forks\&. This takes precedence over \fICPUAffinity=\fR, see \fBsystemd-system.conf\fR(5) for details\&. .RE .PP \fImodules_load=\fR, \fIrd\&.modules_load=\fR .RS 4 Load a specific kernel module early at boot\&. For details, see \fBsystemd-modules-load.service\fR(8)\&. .RE .PP \fInameserver=\fR, \fIdomain=\fR .RS 4 Configures DNS server information and search domains, see \fBsystemd-resolved.service\fR(8) for details\&. .RE .PP \fIresume=\fR, \fIresumeflags=\fR .RS 4 Enables resume from hibernation using the specified device and mount options\&. All \fBfstab\fR(5)\-like paths are supported\&. For details, see \fBsystemd-hibernate-resume-generator\fR(8)\&. .RE .PP \fIsystemd\&.firstboot=\fR .RS 4 Takes a boolean argument, defaults to on\&. If off, \fBsystemd-firstboot.service\fR(8) will not query the user for basic system settings, even if the system boots up for the first time and the relevant settings are not initialized yet\&. Not to be confused with \fIsystemd\&.condition\-first\-boot=\fR (see below), which overrides the result of the \fIConditionFirstBoot=\fR unit file condition, and thus controls more than just systemd\-firstboot\&.service behaviour\&. .RE .PP \fIsystemd\&.condition\-needs\-update=\fR .RS 4 Takes a boolean argument\&. If specified, overrides the result of \fIConditionNeedsUpdate=\fR unit condition checks\&. See \fBsystemd.unit\fR(5) for details\&. .RE .PP \fIsystemd\&.condition\-first\-boot=\fR .RS 4 Takes a boolean argument\&. If specified, overrides the result of \fIConditionFirstBoot=\fR unit condition checks\&. See \fBsystemd.unit\fR(5) for details\&. Not to be confused with \fIsystemd\&.firstboot=\fR which only controls behaviour of the systemd\-firstboot\&.service system service but has no effect on the condition check (see above)\&. .RE .PP \fIsystemd\&.clock\-usec=\fR .RS 4 Takes a decimal, numeric timestamp in μs since January 1st 1970, 00:00am, to set the system clock to\&. The system time is set to the specified timestamp early during boot\&. It is not propagated to the hardware clock (RTC)\&. .RE .PP \fIsystemd\&.random\-seed=\fR .RS 4 Takes a base64 encoded random seed value to credit with full entropy to the kernel\*(Aqs random pool during early service manager initialization\&. This option is useful in testing environments where delays due to random pool initialization in entropy starved virtual machines shall be avoided\&. .sp Note that if this option is used the seed is accessible to unprivileged programs from /proc/cmdline\&. This option is hence a security risk when used outside of test systems, since the (possibly) only seed used for initialization of the kernel\*(Aqs entropy pool might be easily acquired by unprivileged programs\&. .sp It is recommended to pass 512 bytes of randomized data (as that matches the Linux kernel pool size), which may be generated with a command like the following: .sp .if n \{\ .RS 4 .\} .nf dd if=/dev/urandom bs=512 count=1 status=none | base64 \-w 0 .fi .if n \{\ .RE .\} .sp Again: do not use this option outside of testing environments, it\*(Aqs a security risk elsewhere, as secret key material derived from the entropy pool can possibly be reconstructed by unprivileged programs\&. .RE .PP \fIsystemd\&.hostname=\fR .RS 4 Accepts a hostname to set during early boot\&. If specified takes precedence over what is set in /etc/hostname\&. Note that this does not bar later runtime changes to the hostname, it simply controls the initial hostname set during early boot\&. .RE .PP \fIsystemd\&.tty\&.term\&.\fR\fI\fItty\fR\fR\fI=\fR, \fIsystemd\&.tty\&.rows\&.\fR\fI\fItty\fR\fR\fI=\fR, \fIsystemd\&.tty\&.columns\&.\fR\fI\fItty\fR\fR\fI=\fR .RS 4 These arguments allow configuring default values for \fI$TERM\fR, \fITTYRows=\fR, and \fITTYColumns=\fR for tty \fItty\fR\&. Additionally, \fIsystemd\&.tty\&.term\&.console\fR will configure the \fI$TERM\fR value used by \fBsystemd\fR if not set explicitly using \fITERM\fR on the kernel command line\&. The tty name should be specified without the /dev/ prefix (e\&.g\&. "systemd\&.tty\&.rows\&.ttyS0=80")\&. .RE .SH "HISTORY" .PP systemd 252 .RS 4 Kernel command\-line arguments \fIsystemd\&.unified_cgroup_hierarchy\fR and \fIsystemd\&.legacy_systemd_cgroup_controller\fR were deprecated\&. Please switch to the unified cgroup hierarchy\&. .RE .SH "SEE ALSO" .PP \fBsystemd\fR(1), \fBsystemd-system.conf\fR(5), \fBbootparam\fR(7), \fBsystemd.system-credentials\fR(7) \fBsmbios-type-11\fR(7), \fBdracut.cmdline\fR(7), \fBsystemd-debug-generator\fR(8), \fBsystemd-fsck@.service\fR(8), \fBsystemd-quotacheck.service\fR(8), \fBsystemd-journald.service\fR(8), \fBsystemd-vconsole-setup.service\fR(8), \fBsystemd-udevd.service\fR(8), \fBplymouth\fR(8), \fBsystemd-cryptsetup-generator\fR(8), \fBsystemd-veritysetup-generator\fR(8), \fBsystemd-fstab-generator\fR(8), \fBsystemd-getty-generator\fR(8), \fBsystemd-gpt-auto-generator\fR(8), \fBsystemd-volatile-root.service\fR(8), \fBsystemd-modules-load.service\fR(8), \fBsystemd-backlight@.service\fR(8), \fBsystemd-rfkill.service\fR(8), \fBsystemd-hibernate-resume-generator\fR(8), \fBsystemd-firstboot.service\fR(8), \fBbootctl\fR(1) .SH "NOTES" .IP " 1." 4 kernel-parameters.html .RS 4 \%https://docs.kernel.org/admin-guide/kernel-parameters.html .RE