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 force mounting _/_ and _/usr_ (if it is a separate device) read-only. If
66 none of ro and rw is present, both are mounted according to _/etc/fstab_.
69 force mounting _/_ and _/usr_ (if it is a separate device) read-write.
73 do not honor special mount options for the root filesystem found in
74 _/etc/fstab_ of the real root.
76 **resume=**_<path to resume partition>_::
77 resume from a swap partition
82 resume=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
83 resume=/dev/disk/by-uuid/3f5ad593-4546-4a94-a374-bcfb68aa11f7
84 resume=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
88 skip fsck for rootfs and _/usr_. If you're mounting _/usr_ read-only and
89 the init system performs fsck before remount, you might want to use this
90 option to avoid duplication.
95 **rd.driver.blacklist=**_<drivername>[,<drivername>,...]_::
96 do not load kernel module <drivername>. This parameter can be specified
99 **rd.driver.pre=**_<drivername>[,<drivername>,...]_::
100 force loading kernel module <drivername>. This parameter can be specified
103 **rd.driver.post=**_<drivername>[,<drivername>,...]_::
104 force loading kernel module <drivername> after all automatic loading modules
105 have been loaded. This parameter can be specified multiple times.
107 [[dracutkerneldebug]]
111 print informational output though "quiet" is set
114 allow dropping to a shell, if root mounting fails
117 set -x for the dracut shell and logs to dmesg, console and
118 _/run/initramfs/init.log_
121 drop to a shell at the end
123 **rd.break=**_{cmdline|pre-udev|pre-trigger|initqueue|pre-mount|mount|pre-pivot|cleanup}_::
124 drop to a shell on defined breakpoint
127 set udev to loglevel info
130 set udev to loglevel debug
134 **vconsole.keymap=**_<keymap base file name>_::
135 keyboard translation table loaded by loadkeys; taken from keymaps directory;
136 will be written as KEYMAP to _/etc/vconsole.conf_ in the initramfs, e.g.:
139 vconsole.keymap=de-latin1-nodeadkeys
142 **vconsole.keymap.ext=**_<list of keymap base file names>_::
143 list of extra keymaps to bo loaded (sep. by space); will be written as
144 EXT_KEYMAP to _/etc/vconsole.conf_ in the initramfs
146 **vconsole.unicode**[=_{0|1}_]::
147 boolean, indicating UTF-8 mode; will be written as UNICODE to
148 _/etc/vconsole.conf_ in the initramfs
150 **vconsole.font=**_<font base file name>_::
151 console font; taken from consolefonts directory; will be written as FONT to
152 _/etc/vconsole.conf_ in the initramfs; e.g.:
155 vconsole.font=LatArCyrHeb-16
158 **vconsole.font.map=**_<console map base file name>_::
159 see description of '-m' parameter in setfont manual; taken from consoletrans
160 directory; will be written as FONT_MAP to _/etc/vconsole.conf_ in the
163 **vconsole.font.unimap=**_<unicode table base file name>_::
164 see description of '-u' parameter in setfont manual; taken from unimaps
165 directory; will be written as FONT_UNIMAP to _/etc/vconsole.conf_ in the
168 **locale.LANG=**_<locale>_::
169 taken from the environment; if no UNICODE is defined we set its value in
170 basis of LANG value (whether it ends with ".utf8" (or similar) or not); will
171 be written as LANG to _/etc/locale.conf_ in the initramfs; e.g.:
174 locale.LANG=pl_PL.utf8
177 **locale.LC_ALL=**_<locale>_::
178 taken from the environment; will be written as LC_ALL to _/etc/locale.conf_
184 disable LVM detection
186 **rd.lvm.vg=**_<volume group name>_::
187 only activate the volume groups with the given name. rd.lvm.vg can be
188 specified multiple times on the kernel command line.
190 **rd.lvm.lv=**_<logical volume name>_::
191 only activate the logical volumes with the given name. rd.lvm.lv can be
192 specified multiple times on the kernel command line.
195 remove any _/etc/lvm/lvm.conf_, which may exist in the initramfs
200 disable crypto LUKS detection
202 **rd.luks.uuid=**_<luks uuid>_::
203 only activate the LUKS partitions with the given UUID. Any "luks-" of the
204 LUKS UUID is removed before comparing to _<luks uuid>_.
205 The comparisons also matches, if _<luks uuid>_ is only the beginning of the
206 LUKS UUID, so you don't have to specify the full UUID.
207 This parameter can be specified multiple times.
209 **rd.luks.allow-discards=**_<luks uuid>_::
210 Allow using of discards (TRIM) requests for LUKS partitions with the given UUID.
211 Any "luks-" of the LUKS UUID is removed before comparing to _<luks uuid>_.
212 The comparisons also matches, if _<luks uuid>_ is only the beginning of the
213 LUKS UUID, so you don't have to specify the full UUID.
214 This parameter can be specified multiple times.
216 **rd.luks.allow-discards::
217 Allow using of discards (TRIM) requests on all LUKS partitions.
219 **rd.luks.crypttab=0**::
220 do not check, if LUKS partition is in _/etc/crypttab_
222 crypto LUKS - key on removable device support
223 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
224 **rd.luks.key=**_<keypath>:<keydev>:<luksdev>_::
225 _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.
227 _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.
229 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:
232 rd.luks.key=/foo/bar.key
235 As you see, you can skip colons in such a case.
240 disable MD RAID detection
243 disable MD RAID for imsm/isw raids, use DM RAID instead
246 disable MD RAID for SNIA ddf raids, use DM RAID instead
249 ignore mdadm.conf included in initramfs
251 **rd.md.waitclean=1**::
252 wait for any resync, recovery, or reshape activity to finish before continuing
254 **rd.md.uuid=**_<md raid uuid>_::
255 only activate the raid sets with the given UUID. This parameter can be
256 specified multiple times.
261 disable DM RAID detection
263 **rd.dm.uuid=**_<dm raid uuid>_::
264 only activate the raid sets with the given UUID. This parameter can be
265 specified multiple times.
272 **boot=**_<boot device>_::
273 specify the device, where /boot is located. e.g.
277 boot=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
282 **rd.fips.skipkernel**::
283 skip checksum check of the kernel image. Useful, if the kernel image is not
284 in a separate boot partition.
288 **ip=**_{dhcp|on|any|dhcp6|auto6|ibft}_::
289 dhcp|on|any::: get ip from dhcp server from all interfaces. If root=dhcp, loop
290 sequentially through all interfaces (eth0, eth1, ...) and use the first with
291 a valid DHCP root-path.
293 auto6::: IPv6 autoconfiguration
297 ibft::: iBFT autoconfiguration
299 **ip=**_<interface>_:_{dhcp|on|any|dhcp6|auto6}_[:[_<mtu>_][:_<macaddr>_]]::
300 This parameter can be specified multiple times.
302 =====================
303 dhcp|on|any|dhcp6::: get ip from dhcp server on a specific interface
304 auto6::: do IPv6 autoconfiguration
305 <macaddr>::: optionally **set** <macaddr> on the <interface>. This
306 cannot be used in conjunction with the **ifname** argument for the
308 =====================
311 =====================
312 It is recommended to either bind <interface> to a MAC with the **ifname**
313 argument. Or use biosdevname to name your interfaces, which will then have names according to their hardware location.
315 em<port>::: for embedded NICs
316 p<slot>#<port>_<virtual instance>::: for cards in PCI slots
317 =====================
319 **ip=**_<client-IP>_:_<server-IP>_:_<gateway-IP>_:_<netmask>_:_<client_hostname>_:_<interface>_:_{none|off|dhcp|on|any|dhcp6|auto6|ibft}_[:[_<mtu>_][:_<macaddr>_]]::
320 explicit network configuration. If you want do define a IPv6 address, put it
321 in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
324 =====================
325 <macaddr>::: optionally **set** <macaddr> on the <interface>. This
326 cannot be used in conjunction with the **ifname** argument for the
328 =====================
331 =====================
332 It is recommended to either bind <interface> to a MAC with the **ifname**
333 argument. Or use biosdevname to name your interfaces, which will then have names according to their hardware location.
335 em<port>::: for embedded NICs
336 p<slot>#<port>_<virtual instance>::: for cards in PCI slots
337 =====================
339 **ifname=**_<interface>_:_<MAC>_::
340 Assign network device name <interface> (ie "bootnet") to the NIC with MAC <MAC>.
344 Do **not** use the default kernel naming scheme for the interface name,
345 as it can conflict with the kernel names. So, don't use "eth[0-9]+" for the
346 interface name. Better name it "bootnet" or "bluesocket".
348 **bootdev=**_<interface>_::
349 specify network interface to use routing and netroot information from.
350 Required if multiple ip= lines are used.
352 **nameserver=**__<IP>__ [**nameserver=**__<IP>__ ...]::
353 specify nameserver(s) to use
356 boolean, turn off biosdevname network interface renaming
358 **vlan=_<vlanname>_:_<phydevice>_**::
359 Setup vlan device named <vlanname> on <phydeivce>.
360 We support the four styles of vlan names: VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5),
361 DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5)
363 **bond=_<bondname>_[:_<bondslaves>_:[:_<options>_]]**::
364 Setup bonding device <bondname> on top of <bondslaves>.
365 <bondslaves> is a comma-separated list of physical (ethernet) interfaces.
366 <options> is a comma-separated list on bonding options (modinfo bonding for details)
367 in format compatible with initscripts. If <options> includes multi-valued arp_ip_target option,
368 then its values should be separated by semicolon.
369 Bond without parameters assumes bond=bond0:eth0,eth1:mode=balance-rr
371 **bridge=_<bridgename>_:_<ethnames>_**::
372 Setup bridge <bridgename> with <ethnames>. <ethnames> is a comma-separated
373 list of physical (ethernet) interfaces. Bridge without parameters assumes bridge=br0:eth0
378 **root=**[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_]::
379 mount nfs share from <server-ip>:/<root-dir>, if no server-ip is given, use
380 dhcp next_server. if server-ip is an IPv6 address it has to be put in
381 brackets, e.g. [2001:DB8::1]. NFS options can be appended with the prefix
382 ":" or "," and are seperated by ",".
384 **root=**nfs:[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_], **root=**nfs4:[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_], **root=**_{dhcp|dhcp6}_::
385 root=dhcp alone directs initrd to look at the DHCP root-path where NFS
386 options can be specified.
389 root-path=<server-ip>:<root-dir>[,<nfs-options>]
390 root-path=nfs:<server-ip>:<root-dir>[,<nfs-options>]
391 root-path=nfs4:<server-ip>:<root-dir>[,<nfs-options>]
394 **root=**_/dev/nfs_ nfsroot=[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_]::
395 _Deprecated!_ kernel Documentation_/filesystems/nfsroot.txt_ defines this
396 method. This is supported by dracut, but not recommended.
398 **rd.nfs.domain=**_<NFSv4 domain name>_::
399 Set the NFSv4 domain name. Will overwrite the settings in _/etc/idmap.conf_.
403 **root=**iscsi:[_<username>_:_<password>_[:_<reverse>_:_<password>_]@][_<servername>_]:[_<protocol>_]:[_<port>_][:[_<iscsi_iface_name>_]:[_<netdev_name>_]]:[_<LUN>_]:_<targetname>_::
404 protocol defaults to "6", LUN defaults to "0". If the "servername" field is
405 provided by BOOTP or DHCP, then that field is used in conjunction with other
406 associated fields to contact the boot server in the Boot stage. However, if
407 the "servername" field is not provided, then the "targetname" field is then
408 used in the Discovery Service stage in conjunction with other associated
410 link:$$http://tools.ietf.org/html/rfc4173#section-5$$[rfc4173].
414 root=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
417 If servername is an IPv6 address, it has to be put in brackets. e.g.:
420 root=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
423 **root=**_???_ **netroot=**iscsi:[_<username>_:_<password>_[:_<reverse>_:_<password>_]@][_<servername>_]:[_<protocol>_]:[_<port>_][:[_<iscsi_iface_name>_]:[_<netdev_name>_]]:[_<LUN>_]:_<targetname>_ ...::
424 multiple netroot options allow setting up multiple iscsi disks. e.g.:
428 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
429 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1
432 If servername is an IPv6 address, it has to be put in brackets. e.g.:
435 netroot=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
438 **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>_::
439 manually specify all iscsistart parameter (see **+iscsistartĀ --help+**)
441 **root=**_???_ **netroot=**iscsi **rd.iscsi.firmware=1**::
442 will read the iscsi parameter from the BIOS firmware
444 **rd.iscsi.param=**_<param>_::
445 <param> will be passed as "--param <param>" to iscsistart.
446 This parameter can be specified multiple times.
450 "netroot=iscsi iscsi_firmware rd.iscsi.param=node.session.timeo.replacement_timeout=30"
456 iscsistart -b --param node.session.timeo.replacement_timeout=30
461 **fcoe=**_<edd|interface|MAC>_:_{dcb|nodcb}_::
462 Try to connect to a FCoE SAN through the NIC specified by _<interface>_ or
463 _<MAC>_ or EDD settings. For the second argument, currently only nodcb is
464 supported. This parameter can be specified multiple times.
467 letters in the MAC-address must be lowercase!
471 **root=**??? **netroot=**nbd:_<server>_:_<port>_[:_<fstype>_[:_<mountopts>_[:_<nbdopts>_]]]::
472 mount nbd share from <server>
474 **root=dhcp** with **dhcp** **root-path=**nbd:_<server>_:_<port>_[:_<fstype>_[:_<mountopts>_[:_<nbdopts>_]]]::
475 root=dhcp alone directs initrd to look at the DHCP root-path where NBD
476 options can be specified. This syntax is only usable in cases where you are
477 directly mounting the volume as the rootfs.
482 same syntax as the kernel module parameter (s390 only)
486 **rd.zfcp=**_<zfcp adaptor device bus ID>_,_<WWPN>_,_<FCPLUN>_::
487 rd.zfcp can be specified multiple times on the kernel command line. e.g.:
490 rd.zfcp=0.0.4000,0x5005076300C213e9,0x5022000000000000
494 ignore zfcp.conf included in the initramfs
498 **rd.znet=**_<nettype>_,_<subchannels>_,_<options>_::
499 rd.znet can be specified multiple times on the kernel command line. e.g.:
502 rd.znet=qeth,0.0.0600,0.0.0601,0.0.0602,layer2=1,portname=foo
503 rd.znet=ctc,0.0.0600,0.0.0601,0.0.0602,protocol=bar
508 **plymouth.enable=0**::
509 disable the plymouth bootsplash completly.
512 disable the plymouth bootsplash only for the initramfs.
516 **masterkey=**_<kernel master key path name>_::
517 Set the path name of the kernel master key. e.g.:
520 masterkey=/etc/keys/kmk-trusted.blob
523 **masterkeytype=**_<kernel master key type>_::
524 Set the type of the kernel master key. e.g.:
527 masterkeytype=trusted
530 **evmkey=**_<EVM key path name>_::
531 Set the path name of the EVM key. e.g.:
534 evmkey=/etc/keys/evm-trusted.blob
537 **ecryptfskey=**_<eCryptfs key path name>_::
538 Set the path name of the eCryptfs key. e.g.:
541 ecryptfskey=/etc/keys/ecryptfs-trusted.blob
544 Deprecated, renamed Options
545 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
546 Here is a list of options, which were used in dracut prior to version 008, and their new replacement.
552 rd_DASD_MOD:: rd.dasd
556 rdinitdebug rdnetdebug:: rd.debug
560 rd_DM_UUID:: rd.dm.uuid
562 rdblacklist:: rd.driver.blacklist
564 rdinsmodpost:: rd.driver.post
566 rdloaddriver:: rd.driver.pre
568 rd_NO_FSTAB:: rd.fstab=0
572 check:: rd.live.check
574 rdlivedebug:: rd.live.debug
576 live_dir:: rd.live.dir
578 liveimg:: rd.live.image
580 overlay:: rd.live.overlay
582 readonly_overlay:: rd.live.overlay.readonly
584 reset_overlay:: rd.live.overlay.reset
586 live_ram:: rd.live.ram
588 rd_NO_CRYPTTAB:: rd.luks.crypttab=0
590 rd_LUKS_KEYDEV_UUID:: rd.luks.keydev.uuid
592 rd_LUKS_KEYPATH:: rd.luks.keypath
594 rd_NO_LUKS:: rd.luks=0
596 rd_LUKS_UUID:: rd.luks.uuid
598 rd_NO_LVMCONF:: rd.lvm.conf
600 rd_LVM_LV:: rd.lvm.lv
604 rd_LVM_SNAPSHOT:: rd.lvm.snapshot
606 rd_LVM_SNAPSIZE:: rd.lvm.snapsize
608 rd_LVM_VG:: rd.lvm.vg
610 rd_NO_MDADMCONF:: rd.md.conf=0
612 rd_NO_MDIMSM:: rd.md.imsm=0
616 rd_MD_UUID:: rd.md.uuid
618 rd_NFS_DOMAIN:: rd.nfs.domain
620 iscsi_initiator:: rd.iscsi.initiator
622 iscsi_target_name:: rd.iscsi.target.name
624 iscsi_target_ip:: rd.iscsi.target.ip
626 iscsi_target_port:: rd.iscsi.target.port
628 iscsi_target_group:: rd.iscsi.target.group
630 iscsi_username:: rd.iscsi.username
632 iscsi_password:: rd.iscsi.password
634 iscsi_in_username:: rd.iscsi.in.username
636 iscsi_in_password:: rd.iscsi.in.password
638 iscsi_firmware:: rd.iscsi.firmware=0
640 rd_NO_PLYMOUTH:: rd.plymouth=0
646 rd_NO_SPLASH:: rd.splash
648 rdudevdebug:: rd.udev.debug
650 rdudevinfo:: rd.udev.info
652 rd_NO_ZFCPCONF:: rd.zfcp.conf=0
658 KEYMAP:: vconsole.keymap
660 KEYTABLE:: vconsole.keymap
662 SYSFONT:: vconsole.font
664 CONTRANS:: vconsole.font.map
666 UNIMAP:: vconsole.font.unimap
668 UNICODE:: vconsole.unicode
670 EXT_KEYMAP:: vconsole.keymap.ext
672 Configuration in the Initramfs
673 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
675 Any files found in _/etc/conf.d/_ will be sourced in the initramfs to
676 set initial values. Command line options will override these values
677 set in the configuration files.
680 Can contain additional command line options.
682 _/etc/cmdline.d/*.conf_::
683 Can contain additional command line options.
691 *dracut*(8) *dracut.conf*(5)