9 dracut.cmdline - dracut kernel command line options
13 The root device used by the kernel is specified in the boot configuration
14 file on the kernel command line, as always.
16 The traditional _root=/dev/sda1_ style device specification is allowed, but not
17 encouraged. The root device should better be identified by LABEL or UUID. If a
18 label is used, as in _root=LABEL=<label_of_root>_ the initramfs will search all
19 available devices for a filesystem with the appropriate label, and mount that
20 device as the root filesystem. _root=UUID=<uuidnumber>_ will mount the partition
21 with that UUID as the root filesystem.
23 In the following all kernel command line parameters, which are processed by
24 dracut, are described.
26 "rd.*" parameters mentioned without "=" are boolean parameters. They can be
27 turned on/off by setting them to {0|1}. If the assignment with "=" is missing
28 "=1" is implied. For example _rd.info_ can be turned off with _rd.info=0_ or
29 turned on with _rd.info=1_ or _rd.info_. The last value in the kernel command
30 line is the value, which is honored.
34 **init=**_<path to real init>_::
35 specify the path to the init programm to be started after the initramfs has
38 **root=**_<path to blockdevice>_::
39 specify the block device to use as the root filesystem.
45 root=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
46 root=/dev/disk/by-label/Root
48 root=/dev/disk/by-uuid/3f5ad593-4546-4a94-a374-bcfb68aa11f7
49 root=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
50 root=PARTUUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
53 **rootfstype=**_<filesystem type>_:: "auto" if not specified, e.g.:
59 **rootflags=**_<mount options>_::
60 specify additional mount options for the root filesystem. If not set,
61 _/etc/fstab_ of the real root will be parsed for special mount options and
65 do not honor special mount options for the root filesystem found in
66 _/etc/fstab_ of the real root.
68 **resume=**_<path to resume partition>_
73 resume=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
74 resume=/dev/disk/by-uuid/3f5ad593-4546-4a94-a374-bcfb68aa11f7
75 resume=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
81 **rd.driver.blacklist=**_<drivername>[,<drivername>,...]_::
82 do not load kernel module <drivername>. This parameter can be specified
85 **rd.driver.pre=**_<drivername>[,<drivername>,...]_::
86 force loading kernel module <drivername>. This parameter can be specified
89 **rd.driver.post=**_<drivername>[,<drivername>,...]_::
90 force loading kernel module <drivername> after all automatic loading modules
91 have been loaded. This parameter can be specified multiple times.
97 print informational output though "quiet" is set
100 allow dropping to a shell, if root mounting fails
103 set -x for the dracut shell and logs to dmesg, console and
104 _/run/initramfs/init.log_
107 drop to a shell at the end
109 **rd.break=**_{cmdline|pre-udev|pre-trigger|initqueue|pre-mount|mount|pre-pivot|cleanup}_::
110 drop to a shell on defined breakpoint
113 set udev to loglevel info
116 set udev to loglevel debug
120 **vconsole.keymap=**_<keymap base file name>_::
121 keyboard translation table loaded by loadkeys; taken from keymaps directory;
122 will be written as KEYMAP to _/etc/vconsole.conf_ in the initramfs, e.g.:
125 vconsole.keymap=de-latin1-nodeadkeys
128 **vconsole.keymap.ext=**_<list of keymap base file names>_::
129 list of extra keymaps to bo loaded (sep. by space); will be written as
130 EXT_KEYMAP to _/etc/vconsole.conf_ in the initramfs
132 **vconsole.unicode**[=_{0|1}_]::
133 boolean, indicating UTF-8 mode; will be written as UNICODE to
134 _/etc/vconsole.conf_ in the initramfs
136 **vconsole.font=**_<font base file name>_::
137 console font; taken from consolefonts directory; will be written as FONT to
138 _/etc/vconsole.conf_ in the initramfs; e.g.:
141 vconsole.font=LatArCyrHeb-16
144 **vconsole.font.map=**_<console map base file name>_::
145 see description of '-m' parameter in setfont manual; taken from consoletrans
146 directory; will be written as FONT_MAP to _/etc/vconsole.conf_ in the
149 **vconsole.font.unimap=**_<unicode table base file name>_::
150 see description of '-u' parameter in setfont manual; taken from unimaps
151 directory; will be written as FONT_UNIMAP to _/etc/vconsole.conf_ in the
154 **locale.LANG=**_<locale>_::
155 taken from the environment; if no UNICODE is defined we set its value in
156 basis of LANG value (whether it ends with ".utf8" (or similar) or not); will
157 be written as LANG to _/etc/locale.conf_ in the initramfs; e.g.:
160 locale.LANG=pl_PL.utf8
163 **locale.LC_ALL=**_<locale>_::
164 taken from the environment; will be written as LC_ALL to _/etc/locale.conf_
170 disable LVM detection
172 **rd.lvm.vg=**_<volume group name>_::
173 only activate the volume groups with the given name. rd.lvm.vg can be
174 specified multiple times on the kernel command line.
176 **rd.lvm.lv=**_<logical volume name>_::
177 only activate the logical volumes with the given name. rd.lvm.lv can be
178 specified multiple times on the kernel command line.
181 remove any _/etc/lvm/lvm.conf_, which may exist in the initramfs
186 disable crypto LUKS detection
188 **rd.luks.uuid=**_<luks uuid>_::
189 only activate the LUKS partitions with the given UUID. Any "luks-" of the
190 LUKS UUID is removed before comparing to _<luks uuid>_.
191 The comparisons also matches, if _<luks uuid>_ is only the beginning of the
192 LUKS UUID, so you don't have to specify the full UUID.
193 This parameter can be specified multiple times.
195 **rd.luks.allow-discards=**_<luks uuid>_::
196 Allow using of discards (TRIM) requests for LUKS partitions with the given UUID.
197 Any "luks-" of the LUKS UUID is removed before comparing to _<luks uuid>_.
198 The comparisons also matches, if _<luks uuid>_ is only the beginning of the
199 LUKS UUID, so you don't have to specify the full UUID.
200 This parameter can be specified multiple times.
202 **rd.luks.allow-discards::
203 Allow using of discards (TRIM) requests on all LUKS partitions.
205 **rd.luks.crypttab=0**::
206 do not check, if LUKS partition is in _/etc/crypttab_
208 crypto LUKS - key on removable device support
209 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
210 **rd.luks.key=**_<keypath>:<keydev>:<luksdev>_::
211 _keypath_ is a path to key file to look for. It's REQUIRED. When _keypath_ ends with '.gpg' it's considered to be key encrypted symmetrically with GPG. You will be prompted for password on boot. GPG support comes with 'crypt-gpg' module which needs to be added explicitly.
213 _keydev_ is a device on which key file resides. It might be kernel name of devices (should start with "/dev/"), UUID (prefixed with "UUID=") or label (prefix with "LABEL="). You don't have to specify full UUID. Just its beginning will suffice, even if its ambiguous. All matching devices will be probed. This parameter is recommended, but not required. If not present, all block devices will be probed, which may significantly increase boot time.
215 If _luksdev_ is given, the specified key will only be applied for that LUKS device. Possible values are the same as for _keydev_. Unless you have several LUKS devices, you don't have to specify this parameter. The simplest usage is:
218 rd.luks.key=/foo/bar.key
221 As you see, you can skip colons in such a case.
226 disable MD RAID detection
229 disable MD RAID for imsm/isw raids, use DM RAID instead
232 disable MD RAID for SNIA ddf raids, use DM RAID instead
235 ignore mdadm.conf included in initramfs
237 **rd.md.waitclean=1**::
238 wait for any resync, recovery, or reshape activity to finish before continuing
240 **rd.md.uuid=**_<md raid uuid>_::
241 only activate the raid sets with the given UUID. This parameter can be
242 specified multiple times.
247 disable DM RAID detection
249 **rd.dm.uuid=**_<dm raid uuid>_::
250 only activate the raid sets with the given UUID. This parameter can be
251 specified multiple times.
258 **boot=**_<boot device>_::
259 specify the device, where /boot is located. e.g.
263 boot=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
268 **rd.fips.skipkernel**::
269 skip checksum check of the kernel image. Useful, if the kernel image is not
270 in a separate boot partition.
274 **ip=**_{dhcp|on|any|dhcp6|auto6|ibft}_::
275 dhcp|on|any::: get ip from dhcp server from all interfaces. If root=dhcp, loop
276 sequentially through all interfaces (eth0, eth1, ...) and use the first with
277 a valid DHCP root-path.
279 auto6::: IPv6 autoconfiguration
283 ibft::: iBFT autoconfiguration
285 **ip=**_<interface>_:_{dhcp|on|any|dhcp6|auto6}_[:[_<mtu>_][:_<macaddr>_]]::
286 This parameter can be specified multiple times.
288 dhcp|on|any|dhcp6::: get ip from dhcp server on a specific interface
289 auto6::: do IPv6 autoconfiguration
290 <macaddr>::: optionally set <macaddr> on the <interface>
292 **ip=**_<client-IP>_:_<server-IP>_:_<gateway-IP>_:_<netmask>_:_<client_hostname>_:_<interface>_:_{none|off|dhcp|on|any|dhcp6|auto6|ibft}_[:[_<mtu>_][:_<macaddr>_]]::
293 explicit network configuration. If you want do define a IPv6 address, put it
294 in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
297 <macaddr>::: optionally set <macaddr> on the <interface>
299 **ifname=**_<interface>_:_<MAC>_::
300 Assign network device name <interface> (ie eth0) to the NIC with MAC <MAC>.
301 Note: If you use this option you _must_ specify an ifname= argument for all
302 interfaces used in ip= or fcoe= arguments. However, if the interface in
303 ip= or fcoe= is a bridge, bonding or vlan interface, you should specify
304 an ifname= for _each_ of its underlying interfaces. This parameter can be
305 specified multiple times.
307 **bootdev=**_<interface>_::
308 specify network interface to use routing and netroot information from.
309 Required if multiple ip= lines are used.
311 **nameserver=**__<IP>__ [**nameserver=**__<IP>__ ...]::
312 specify nameserver(s) to use
315 boolean, turn off biosdevname network interface renaming
317 **vlan=_<vlanname>_:_<phydevice>_**::
318 Setup vlan device named <vlanname> on <phydeivce>.
319 We support the four styles of vlan names: VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5),
320 DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5)
322 **bond=_<bondname>_[:_<bondslaves>_:[:_<options>_]]**::
323 Setup bonding device <bondname> on top of <bondslaves>.
324 <bondslaves> is a comma-separated list of physical (ethernet) interfaces.
325 <options> is a comma-separated list on bonding options (modinfo bonding for details)
326 in format compatible with initscripts. If <options> includes multi-valued arp_ip_target option,
327 then its values should be separated by semicolon.
328 Bond without parameters assumes bond=bond0:eth0,eth1:mode=balance-rr
330 **bridge=_<bridgename>_:_<ethnames>_**::
331 Setup bridge <bridgename> with <ethnames>. <ethnames> is a comma-separated
332 list of physical (ethernet) interfaces. Bridge without parameters assumes bridge=br0:eth0
337 **root=**[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_]::
338 mount nfs share from <server-ip>:/<root-dir>, if no server-ip is given, use
339 dhcp next_server. if server-ip is an IPv6 address it has to be put in
340 brackets, e.g. [2001:DB8::1]. NFS options can be appended with the prefix
341 ":" or "," and are seperated by ",".
343 **root=**nfs:[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_], **root=**nfs4:[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_], **root=**_{dhcp|dhcp6}_::
344 root=dhcp alone directs initrd to look at the DHCP root-path where NFS
345 options can be specified.
348 root-path=<server-ip>:<root-dir>[,<nfs-options>]
349 root-path=nfs:<server-ip>:<root-dir>[,<nfs-options>]
350 root-path=nfs4:<server-ip>:<root-dir>[,<nfs-options>]
353 **root=**_/dev/nfs_ nfsroot=[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_]::
354 _Deprecated!_ kernel Documentation_/filesystems/nfsroot.txt_ defines this
355 method. This is supported by dracut, but not recommended.
357 **rd.nfs.domain=**_<NFSv4 domain name>_::
358 Set the NFSv4 domain name. Will overwrite the settings in _/etc/idmap.conf_.
362 **root=**iscsi:[_<username>_:_<password>_[:_<reverse>_:_<password>_]@][_<servername>_]:[_<protocol>_]:[_<port>_][:[_<iscsi_iface_name>_]:[_<netdev_name>_]]:[_<LUN>_]:_<targetname>_::
363 protocol defaults to "6", LUN defaults to "0". If the "servername" field is
364 provided by BOOTP or DHCP, then that field is used in conjunction with other
365 associated fields to contact the boot server in the Boot stage. However, if
366 the "servername" field is not provided, then the "targetname" field is then
367 used in the Discovery Service stage in conjunction with other associated
369 link:$$http://tools.ietf.org/html/rfc4173#section-5$$[rfc4173].
373 root=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
376 If servername is an IPv6 address, it has to be put in brackets. e.g.:
379 root=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
382 **root=**_???_ **netroot=**iscsi:[_<username>_:_<password>_[:_<reverse>_:_<password>_]@][_<servername>_]:[_<protocol>_]:[_<port>_][:[_<iscsi_iface_name>_]:[_<netdev_name>_]]:[_<LUN>_]:_<targetname>_ ...::
383 multiple netroot options allow setting up multiple iscsi disks. e.g.:
387 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
388 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1
391 If servername is an IPv6 address, it has to be put in brackets. e.g.:
394 netroot=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
397 **root=**_???_ **rd.iscsi.initiator=**_<initiator>_ **rd.iscsi.target.name=**_<target name>_ **rd.iscsi.target.ip=**_<target ip>_ **rd.iscsi.target.port=**_<target port>_ **rd.iscsi.target.group=**_<target group>_ **rd.iscsi.username=**_<username>_ **rd.iscsi.password=**_<password>_ **rd.iscsi.in.username=**_<in username>_ **rd.iscsi.in.password=**_<in password>_::
398 manually specify all iscsistart parameter (see **+iscsistartĀ --help+**)
400 **root=**_???_ **netroot=**iscsi **rd.iscsi.firmware=1**::
401 will read the iscsi parameter from the BIOS firmware
403 **rd.iscsi.param=**_<param>_::
404 <param> will be passed as "--param <param>" to iscsistart.
405 This parameter can be specified multiple times.
409 "netroot=iscsi iscsi_firmware rd.iscsi.param=node.session.timeo.replacement_timeout=30"
415 iscsistart -b --param node.session.timeo.replacement_timeout=30
420 **fcoe=**_<edd|interface|MAC>_:_{dcb|nodcb}_::
421 Try to connect to a FCoE SAN through the NIC specified by _<interface>_ or
422 _<MAC>_ or EDD settings. For the second argument, currently only nodcb is
423 supported. This parameter can be specified multiple times. Note: letters in
424 the MAC-address must be lowercase!
428 **root=**??? **netroot=**nbd:_<server>_:_<port>_[:_<fstype>_[:_<mountopts>_[:_<nbdopts>_]]]::
429 mount nbd share from <server>
431 **root=dhcp** with **dhcp** **root-path=**nbd:_<server>_:_<port>_[:_<fstype>_[:_<mountopts>_[:_<nbdopts>_]]]::
432 root=dhcp alone directs initrd to look at the DHCP root-path where NBD
433 options can be specified. This syntax is only usable in cases where you are
434 directly mounting the volume as the rootfs.
439 same syntax as the kernel module parameter (s390 only)
443 **rd.zfcp=**_<zfcp adaptor device bus ID>_,_<WWPN>_,_<FCPLUN>_::
444 rd.zfcp can be specified multiple times on the kernel command line. e.g.:
447 rd.zfcp=0.0.4000,0x5005076300C213e9,0x5022000000000000
451 ignore zfcp.conf included in the initramfs
455 **rd.znet=**_<nettype>_,_<subchannels>_,_<options>_::
456 rd.znet can be specified multiple times on the kernel command line. e.g.:
459 rd.znet=qeth,0.0.0600,0.0.0601,0.0.0602,layer2=1,portname=foo
460 rd.znet=ctc,0.0.0600,0.0.0601,0.0.0602,protocol=bar
465 **plymouth.enable=0**::
466 disable the plymouth bootsplash completly.
469 disable the plymouth bootsplash only for the initramfs.
473 **masterkey=**_<kernel master key path name>_::
474 Set the path name of the kernel master key. e.g.:
477 masterkey=/etc/keys/kmk-trusted.blob
480 **masterkeytype=**_<kernel master key type>_::
481 Set the type of the kernel master key. e.g.:
484 masterkeytype=trusted
487 **evmkey=**_<EVM key path name>_::
488 Set the path name of the EVM key. e.g.:
491 evmkey=/etc/keys/evm-trusted.blob
494 **ecryptfskey=**_<eCryptfs key path name>_::
495 Set the path name of the eCryptfs key. e.g.:
498 ecryptfskey=/etc/keys/ecryptfs-trusted.blob
501 Deprecated, renamed Options
502 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
503 Here is a list of options, which were used in dracut prior to version 008, and their new replacement.
509 rd_DASD_MOD:: rd.dasd
513 rdinitdebug rdnetdebug:: rd.debug
517 rd_DM_UUID:: rd.dm.uuid
519 rdblacklist:: rd.driver.blacklist
521 rdinsmodpost:: rd.driver.post
523 rdloaddriver:: rd.driver.pre
525 rd_NO_FSTAB:: rd.fstab=0
529 check:: rd.live.check
531 rdlivedebug:: rd.live.debug
533 live_dir:: rd.live.dir
535 liveimg:: rd.live.image
537 overlay:: rd.live.overlay
539 readonly_overlay:: rd.live.overlay.readonly
541 reset_overlay:: rd.live.overlay.reset
543 live_ram:: rd.live.ram
545 rd_NO_CRYPTTAB:: rd.luks.crypttab=0
547 rd_LUKS_KEYDEV_UUID:: rd.luks.keydev.uuid
549 rd_LUKS_KEYPATH:: rd.luks.keypath
551 rd_NO_LUKS:: rd.luks=0
553 rd_LUKS_UUID:: rd.luks.uuid
555 rd_NO_LVMCONF:: rd.lvm.conf
557 rd_LVM_LV:: rd.lvm.lv
561 rd_LVM_SNAPSHOT:: rd.lvm.snapshot
563 rd_LVM_SNAPSIZE:: rd.lvm.snapsize
565 rd_LVM_VG:: rd.lvm.vg
567 rd_NO_MDADMCONF:: rd.md.conf=0
569 rd_NO_MDIMSM:: rd.md.imsm=0
573 rd_MD_UUID:: rd.md.uuid
575 rd_NFS_DOMAIN:: rd.nfs.domain
577 iscsi_initiator:: rd.iscsi.initiator
579 iscsi_target_name:: rd.iscsi.target.name
581 iscsi_target_ip:: rd.iscsi.target.ip
583 iscsi_target_port:: rd.iscsi.target.port
585 iscsi_target_group:: rd.iscsi.target.group
587 iscsi_username:: rd.iscsi.username
589 iscsi_password:: rd.iscsi.password
591 iscsi_in_username:: rd.iscsi.in.username
593 iscsi_in_password:: rd.iscsi.in.password
595 iscsi_firmware:: rd.iscsi.firmware=0
597 rd_NO_PLYMOUTH:: rd.plymouth=0
603 rd_NO_SPLASH:: rd.splash
605 rdudevdebug:: rd.udev.debug
607 rdudevinfo:: rd.udev.info
609 rd_NO_ZFCPCONF:: rd.zfcp.conf=0
615 KEYMAP:: vconsole.keymap
617 KEYTABLE:: vconsole.keymap
619 SYSFONT:: vconsole.font
621 CONTRANS:: vconsole.font.map
623 UNIMAP:: vconsole.font.unimap
625 UNICODE:: vconsole.unicode
627 EXT_KEYMAP:: vconsole.keymap.ext
629 Configuration in the Initramfs
630 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
632 Any files found in _/etc/conf.d/_ will be sourced in the initramfs to
633 set initial values. Command line options will override these values
634 set in the configuration files.
637 Can contain additional command line options.
639 _/etc/cmdline.d/*.conf_::
640 Can contain additional command line options.
645 Project Leader and Developer
649 *dracut*(8) *dracut.conf*(5)