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.
61 **rootflags=**__<mount options>__::
62 specify additional mount options for the root filesystem. If not set,
63 _/etc/fstab_ of the real root will be parsed for special mount options and
67 force mounting _/_ and _/usr_ (if it is a separate device) read-only. If
68 none of ro and rw is present, both are mounted according to _/etc/fstab_.
71 force mounting _/_ and _/usr_ (if it is a separate device) read-write.
74 **rootfallback=**__<path to blockdevice>__::
75 specify the block device to use as the root filesystem, if the normal root
76 cannot be found. This can only be a simple block device with a simple file
77 system, for which the filesystem driver is either compiled in, or added
78 manually to the initramfs. This parameter can be specified multiple times.
80 **rd.auto** **rd.auto=1**::
81 enable autoassembly of special devices like cryptoLUKS, dmraid, mdraid or
82 lvm. Default is off as of dracut version >= 024.
85 removes all compiled in configuration of the host system the initramfs image
86 was built on. This helps booting, if any disk layout changed, especially in
87 combination with rd.auto or other parameters specifying the layout.
90 prompts the user for additional kernel command line parameters
93 do not honor special mount options for the root filesystem found in
94 _/etc/fstab_ of the real root.
96 **resume=**__<path to resume partition>__::
97 resume from a swap partition
102 resume=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
103 resume=/dev/disk/by-uuid/3f5ad593-4546-4a94-a374-bcfb68aa11f7
104 resume=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
108 skip fsck for rootfs and _/usr_. If you're mounting _/usr_ read-only and
109 the init system performs fsck before remount, you might want to use this
110 option to avoid duplication.
115 Using iso-scan/filename with a Fedora/Red Hat/CentOS Live iso should just work
116 by copying the original kernel cmdline parameters.
121 menuentry 'Live Fedora 20' --class fedora --class gnu-linux --class gnu --class os {
122 set isolabel=Fedora-Live-LXDE-x86_64-20-1
123 set isofile="/boot/iso/Fedora-Live-LXDE-x86_64-20-1.iso"
124 loopback loop $isofile
125 linux (loop)/isolinux/vmlinuz0 boot=isolinux iso-scan/filename=$isofile root=live:LABEL=$isolabel ro rd.live.image quiet rhgb
126 initrd (loop)/isolinux/initrd0.img
132 **rd.driver.blacklist=**__<drivername>__[,__<drivername>__,...]::
133 do not load kernel module <drivername>. This parameter can be specified
136 **rd.driver.pre=**__<drivername>__[,__<drivername>__,...]::
137 force loading kernel module <drivername>. This parameter can be specified
140 **rd.driver.post=**__<drivername>__[,__<drivername>__,...]::
141 force loading kernel module <drivername> after all automatic loading modules
142 have been loaded. This parameter can be specified multiple times.
144 **rd.retry=**__<seconds>__::
145 specify how long dracut should retry the initqueue to configure devices.
146 The default is 30 seconds. After 2/3 of the time, degraded raids are force
147 started. If you have hardware, which takes a very long time to announce its
148 drives, you might want to extend this value.
150 **rd.timeout=**__<seconds>__::
151 specify how long dracut should wait for devices to appear. The
152 default is '0', which means 'forever'. Note that this timeout
153 should be longer than rd.retry to allow for proper configuration.
156 accept self-signed certificates for ssl downloads.
158 **rd.ctty=**__<terminal device>__::
159 specify the controlling terminal for the console.
160 This is useful, if you have multiple "console=" arguments.
162 [[dracutkerneldebug]]
165 If you are dropped to an emergency shell, the file
166 _/run/initramfs/rdsosreport.txt_ is created, which can be saved to a (to be
167 mounted by hand) partition (usually /boot) or a USB stick. Additional debugging
168 info can be produced by adding **rd.debug** to the kernel command line.
169 _/run/initramfs/rdsosreport.txt_ contains all logs and the output of some tools.
170 It should be attached to any report about dracut problems.
173 print informational output though "quiet" is set
176 allow dropping to a shell, if root mounting fails
179 set -x for the dracut shell.
180 If systemd is active in the initramfs, all output is logged to the systemd
181 journal, which you can inspect with "journalctl -ab".
182 If systemd is not active, the logs are written to dmesg and
183 _/run/initramfs/init.log_.
184 If "quiet" is set, it also logs to the console.
186 **rd.memdebug=[0-3]**::
187 Print memory usage info at various points, set the verbose level from 0 to 3.
189 Higher level means more debugging output:
193 1 - partial /proc/meminfo
195 3 - /proc/meminfo + /proc/slabinfo
199 drop to a shell at the end
201 **rd.break=**__{cmdline|pre-udev|pre-trigger|initqueue|pre-mount|mount|pre-pivot|cleanup}__::
202 drop to a shell on defined breakpoint
205 set udev to loglevel info
208 set udev to loglevel debug
212 **rd.vconsole.keymap=**__<keymap base file name>__::
213 keyboard translation table loaded by loadkeys; taken from keymaps directory;
214 will be written as KEYMAP to _/etc/vconsole.conf_ in the initramfs.
219 rd.vconsole.keymap=de-latin1-nodeadkeys
222 **rd.vconsole.keymap.ext=**__<list of keymap base file names>__::
223 list of extra keymaps to bo loaded (sep. by space); will be written as
224 EXT_KEYMAP to _/etc/vconsole.conf_ in the initramfs
226 **rd.vconsole.unicode**::
227 boolean, indicating UTF-8 mode; will be written as UNICODE to
228 _/etc/vconsole.conf_ in the initramfs
230 **rd.vconsole.font=**__<font base file name>__::
231 console font; taken from consolefonts directory; will be written as FONT to
232 _/etc/vconsole.conf_ in the initramfs.
237 rd.vconsole.font=LatArCyrHeb-16
240 **rd.vconsole.font.map=**__<console map base file name>__::
241 see description of '-m' parameter in setfont manual; taken from consoletrans
242 directory; will be written as FONT_MAP to _/etc/vconsole.conf_ in the
245 **rd.vconsole.font.unimap=**__<unicode table base file name>__::
246 see description of '-u' parameter in setfont manual; taken from unimaps
247 directory; will be written as FONT_UNIMAP to _/etc/vconsole.conf_ in the
250 **rd.locale.LANG=**__<locale>__::
251 taken from the environment; if no UNICODE is defined we set its value in
252 basis of LANG value (whether it ends with ".utf8" (or similar) or not); will
253 be written as LANG to _/etc/locale.conf_ in the initramfs.
258 rd.locale.LANG=pl_PL.utf8
261 **rd.locale.LC_ALL=**__<locale>__::
262 taken from the environment; will be written as LC_ALL to _/etc/locale.conf_
268 disable LVM detection
270 **rd.lvm.vg=**__<volume group name>__::
271 only activate the volume groups with the given name. rd.lvm.vg can be
272 specified multiple times on the kernel command line.
274 **rd.lvm.lv=**__<logical volume name>__::
275 only activate the logical volumes with the given name. rd.lvm.lv can be
276 specified multiple times on the kernel command line.
279 remove any _/etc/lvm/lvm.conf_, which may exist in the initramfs
284 disable crypto LUKS detection
286 **rd.luks.uuid=**__<luks uuid>__::
287 only activate the LUKS partitions with the given UUID. Any "luks-" of the
288 LUKS UUID is removed before comparing to _<luks uuid>_.
289 The comparisons also matches, if _<luks uuid>_ is only the beginning of the
290 LUKS UUID, so you don't have to specify the full UUID.
291 This parameter can be specified multiple times.
293 **rd.luks.allow-discards=**__<luks uuid>__::
294 Allow using of discards (TRIM) requests for LUKS partitions with the given
295 UUID. Any "luks-" of the LUKS UUID is removed before comparing to
296 _<luks uuid>_. The comparisons also matches, if _<luks uuid>_ is only the
297 beginning of the LUKS UUID, so you don't have to specify the full UUID.
298 This parameter can be specified multiple times.
300 **rd.luks.allow-discards**::
301 Allow using of discards (TRIM) requests on all LUKS partitions.
303 **rd.luks.crypttab=0**::
304 do not check, if LUKS partition is in _/etc/crypttab_
306 crypto LUKS - key on removable device support
307 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
308 **rd.luks.key=**__<keypath>__:__<keydev>__:__<luksdev>__::
309 _keypath_ is a path to key file to look for. It's REQUIRED. When _keypath_
310 ends with '.gpg' it's considered to be key encrypted symmetrically with GPG.
311 You will be prompted for password on boot. GPG support comes with
312 'crypt-gpg' module which needs to be added explicitly.
314 _keydev_ is a device on which key file resides. It might be kernel name of
315 devices (should start with "/dev/"), UUID (prefixed with "UUID=") or label
316 (prefix with "LABEL="). You don't have to specify full UUID. Just its beginning
317 will suffice, even if its ambiguous. All matching devices will be probed.
318 This parameter is recommended, but not required. If not present, all block
319 devices will be probed, which may significantly increase boot time.
321 If _luksdev_ is given, the specified key will only be applied for that LUKS
322 device. Possible values are the same as for _keydev_. Unless you have several
323 LUKS devices, you don't have to specify this parameter. The simplest usage is:
328 rd.luks.key=/foo/bar.key
331 As you see, you can skip colons in such a case.
334 ===============================
335 dracut pipes key to cryptsetup with _-d -_ argument, therefore you need to pipe
336 to crypsetup luksFormat with _-d -_, too!
338 Here follows example for key encrypted with GPG:
342 gpg --quiet --decrypt rootkey.gpg | \
343 cryptsetup -d - -v --cipher serpent-cbc-essiv:sha256 \
344 --key-size 256 luksFormat /dev/sda3
347 If you use plain keys, just add path to _-d_ option:
351 cryptsetup -d rootkey.key -v --cipher serpent-cbc-essiv:sha256 \
352 --key-size 256 luksFormat /dev/sda3
354 ===============================
359 disable MD RAID detection
362 disable MD RAID for imsm/isw raids, use DM RAID instead
365 disable MD RAID for SNIA ddf raids, use DM RAID instead
368 ignore mdadm.conf included in initramfs
370 **rd.md.waitclean=1**::
371 wait for any resync, recovery, or reshape activity to finish before
374 **rd.md.uuid=**__<md raid uuid>__::
375 only activate the raid sets with the given UUID. This parameter can be
376 specified multiple times.
381 disable DM RAID detection
383 **rd.dm.uuid=**__<dm raid uuid>__::
384 only activate the raid sets with the given UUID. This parameter can be
385 specified multiple times.
390 disable multipath detection
397 **boot=**__<boot device>__::
398 specify the device, where /boot is located.
404 boot=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
409 **rd.fips.skipkernel**::
410 skip checksum check of the kernel image. Useful, if the kernel image is not
411 in a separate boot partition.
417 =====================
418 It is recommended to either bind an interface to a MAC with the **ifname**
419 argument, or to use the systemd-udevd predictable network interface names.
421 Predictable network interface device names based on:
423 - firmware/bios-provided index numbers for on-board devices
424 - firmware-provided pci-express hotplug slot index number
425 - physical/geographical location of the hardware
426 - the interface's MAC address
429 http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames
431 Two character prefixes based on the type of interface:
439 o<index>:: on-board device index number
440 s<slot>[f<function>][d<dev_id>]:: hotplug slot index number
442 [P<domain>]p<bus>s<slot>[f<function>][d<dev_id>]:: PCI geographical location
443 [P<domain>]p<bus>s<slot>[f<function>][u<port>][..][c<config>][i<interface>]:: USB port number chain
445 All multi-function PCI devices will carry the [f<function>] number in the
446 device name, including the function 0 device.
448 When using PCI geography, The PCI domain is only prepended when it is not 0.
450 For USB devices the full chain of port numbers of hubs is composed. If the
451 name gets longer than the maximum number of 15 characters, the name is not
453 The usual USB configuration == 1 and interface == 0 values are suppressed.
455 PCI ethernet card with firmware index "1"::
458 PCI ethernet card in hotplug slot with firmware index number::
461 PCI ethernet multi-function card with 2 ports::
468 USB built-in 3G modem::
473 =====================
475 **ip=**__{dhcp|on|any|dhcp6|auto6}__::
476 dhcp|on|any::: get ip from dhcp server from all interfaces. If root=dhcp,
477 loop sequentially through all interfaces (eth0, eth1, ...) and use the first
478 with a valid DHCP root-path.
480 auto6::: IPv6 autoconfiguration
484 **ip=**__<interface>__:__{dhcp|on|any|dhcp6|auto6}__[:[__<mtu>__][:__<macaddr>__]]::
485 This parameter can be specified multiple times.
487 =====================
488 dhcp|on|any|dhcp6::: get ip from dhcp server on a specific interface
489 auto6::: do IPv6 autoconfiguration
490 <macaddr>::: optionally **set** <macaddr> on the <interface>. This
491 cannot be used in conjunction with the **ifname** argument for the
493 =====================
495 **ip=**__<client-IP>__:[__<peer>__]:__<gateway-IP>__:__<netmask>__:__<client_hostname>__:__<interface>__:__{none|off|dhcp|on|any|dhcp6|auto6|ibft}__[:[__<mtu>__][:__<macaddr>__]]::
496 explicit network configuration. If you want do define a IPv6 address, put it
497 in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
498 times. __<peer>__ is optional and is the address of the remote endpoint
499 for pointopoint interfaces and it may be followed by a slash and a decimal
500 number, encoding the network prefix length.
502 =====================
503 <macaddr>::: optionally **set** <macaddr> on the <interface>. This
504 cannot be used in conjunction with the **ifname** argument for the
506 =====================
508 **ip=**__<client-IP>__:[__<peer>__]:__<gateway-IP>__:__<netmask>__:__<client_hostname>__:__<interface>__:__{none|off|dhcp|on|any|dhcp6|auto6|ibft}__[:[__<dns1>__][:__<dns2>__]]::
509 explicit network configuration. If you want do define a IPv6 address, put it
510 in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
511 times. __<peer>__ is optional and is the address of the remote endpoint
512 for pointopoint interfaces and it may be followed by a slash and a decimal
513 number, encoding the network prefix length.
515 **ifname=**__<interface>__:__<MAC>__::
516 Assign network device name <interface> (ie "bootnet") to the NIC with
519 WARNING: Do **not** use the default kernel naming scheme for the interface name,
520 as it can conflict with the kernel names. So, don't use "eth[0-9]+" for the
521 interface name. Better name it "bootnet" or "bluesocket".
523 **rd.route=**__<net>__/__<netmask>__:__<gateway>__[:__<interface>__]::
524 Add a static route with route options, which are separated by a colon.
525 IPv6 addresses have to be put in brackets.
530 rd.route=192.168.200.0/24:192.168.100.222:ens10
531 rd.route=192.168.200.0/24:192.168.100.222
532 rd.route=192.168.200.0/24::ens10
533 rd.route=[2001:DB8:3::/8]:[2001:DB8:2::1]:ens10
536 **bootdev=**__<interface>__::
537 specify network interface to use routing and netroot information from.
538 Required if multiple ip= lines are used.
540 **BOOTIF=**__<MAC>__::
541 specify network interface to use routing and netroot information from.
544 Disable BOOTIF parsing, which is provided by PXE
546 **nameserver=**__<IP>__ [**nameserver=**__<IP>__ ...]::
547 specify nameserver(s) to use
550 Disable DNS setting of DHCP parameters.
553 boolean, turn off biosdevname network interface renaming
556 boolean, bring up network even without netroot set
558 **vlan=**__<vlanname>__:__<phydevice>__::
559 Setup vlan device named <vlanname> on <phydeivce>.
560 We support the four styles of vlan names: VLAN_PLUS_VID (vlan0005),
561 VLAN_PLUS_VID_NO_PAD (vlan5), DEV_PLUS_VID (eth0.0005),
562 DEV_PLUS_VID_NO_PAD (eth0.5)
564 **bond=**__<bondname>__[:__<bondslaves>__:[:__<options>__]]::
565 Setup bonding device <bondname> on top of <bondslaves>.
566 <bondslaves> is a comma-separated list of physical (ethernet) interfaces.
567 <options> is a comma-separated list on bonding options (modinfo bonding for
568 details) in format compatible with initscripts. If <options> includes
569 multi-valued arp_ip_target option, then its values should be separated by
570 semicolon. Bond without parameters assumes
571 bond=bond0:eth0,eth1:mode=balance-rr
573 **team=**__<teammaster>__:__<teamslaves>__::
574 Setup team device <teammaster> on top of <teamslaves>.
575 <teamslaves> is a comma-separated list of physical (ethernet) interfaces.
577 **bridge=**__<bridgename>__:__<ethnames>__::
578 Setup bridge <bridgename> with <ethnames>. <ethnames> is a comma-separated
579 list of physical (ethernet) interfaces. Bridge without parameters assumes
584 **root=**\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__]::
585 mount nfs share from <server-ip>:/<root-dir>, if no server-ip is given, use
586 dhcp next_server. If server-ip is an IPv6 address it has to be put in
587 brackets, e.g. [2001:DB8::1]. NFS options can be appended with the prefix
588 ":" or "," and are seperated by ",".
590 **root=**nfs:\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__], **root=**nfs4:\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__], **root=**__{dhcp|dhcp6}__::
591 root=dhcp alone directs initrd to look at the DHCP root-path where NFS
592 options can be specified.
597 root-path=<server-ip>:<root-dir>[,<nfs-options>]
598 root-path=nfs:<server-ip>:<root-dir>[,<nfs-options>]
599 root-path=nfs4:<server-ip>:<root-dir>[,<nfs-options>]
602 **root=**_/dev/nfs_ nfsroot=\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__]::
603 _Deprecated!_ kernel Documentation_/filesystems/nfsroot.txt_ defines this
604 method. This is supported by dracut, but not recommended.
606 **rd.nfs.domain=**__<NFSv4 domain name>__::
607 Set the NFSv4 domain name. Will overwrite the settings in _/etc/idmap.conf_.
609 **rd.net.dhcp.retry=**__<cnt>__::
610 If this option is set, dracut will try to connect via dhcp <cnt> times before failing.
613 **rd.net.timeout.dhcp=**__<arg>__::
614 If this option is set, dhclient is called with "-timeout <arg>".
616 **rd.net.timeout.iflink=**__<seconds>__::
617 Wait <seconds> until link shows up. Default is 60 seconds.
619 **rd.net.timeout.ifup=**__<seconds>__::
620 Wait <seconds> until link has state "UP". Default is 20 seconds.
622 **rd.net.timeout.route=**__<seconds>__::
623 Wait <seconds> until route shows up. Default is 20 seconds.
625 **rd.net.timeout.ipv6dad=**__<seconds>__::
626 Wait <seconds> until IPv6 DAD is finished. Default is 50 seconds.
628 **rd.net.timeout.ipv6auto=**__<seconds>__::
629 Wait <seconds> until IPv6 automatic addresses are assigned. Default is 40 seconds.
631 **rd.net.timeout.carrier=**__<seconds>__::
632 Wait <seconds> until carrier is recognized. Default is 5 seconds.
636 **root=**cifs://[__<username>__[:__<password>__]@]__<server-ip>__:__<root-dir>__::
637 mount cifs share from <server-ip>:/<root-dir>, if no server-ip is given, use
638 dhcp next_server. if server-ip is an IPv6 address it has to be put in
639 brackets, e.g. [2001:DB8::1]. If a username or password are not specified
640 as part of the root, then they must be passed on the command line through
643 WARNING: Passwords specified on the kernel command line are visible for all
644 users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the
645 network, when using DHCP with DHCP root-path.
647 **cifsuser**=__<username>__::
648 Set the cifs username, if not specified as part of the root.
650 **cifspass**=__<password>__::
651 Set the cifs password, if not specified as part of the root.
653 WARNING: Passwords specified on the kernel command line are visible for all
654 users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the
655 network, when using DHCP with DHCP root-path.
659 **root=**iscsi:[__<username>__:__<password>__[:__<reverse>__:__<password>__]@][__<servername>__]:[__<protocol>__]:[__<port>__][:[__<iscsi_iface_name>__]:[__<netdev_name>__]]:[__<LUN>__]:__<targetname>__::
660 protocol defaults to "6", LUN defaults to "0". If the "servername" field is
661 provided by BOOTP or DHCP, then that field is used in conjunction with other
662 associated fields to contact the boot server in the Boot stage. However, if
663 the "servername" field is not provided, then the "targetname" field is then
664 used in the Discovery Service stage in conjunction with other associated
666 link:$$http://tools.ietf.org/html/rfc4173#section-5$$[rfc4173].
668 WARNING: Passwords specified on the kernel command line are visible for all
669 users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the
670 network, when using DHCP with DHCP root-path.
675 root=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
678 If servername is an IPv6 address, it has to be put in brackets:
683 root=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
686 **root=**__???__ **netroot=**iscsi:[__<username>__:__<password>__[:__<reverse>__:__<password>__]@][__<servername>__]:[__<protocol>__]:[__<port>__][:[__<iscsi_iface_name>__]:[__<netdev_name>__]]:[__<LUN>__]:__<targetname>__ ...::
687 multiple netroot options allow setting up multiple iscsi disks:
693 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
694 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1
697 If servername is an IPv6 address, it has to be put in brackets:
702 netroot=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
705 WARNING: Passwords specified on the kernel command line are visible for all
706 users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the
707 network, when using DHCP with DHCP root-path.
708 You may want to use rd.iscsi.firmware.
710 **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>__::
711 manually specify all iscsistart parameter (see **+iscsistart --help+**)
713 WARNING: Passwords specified on the kernel command line are visible for all
714 users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the
715 network, when using DHCP with DHCP root-path.
716 You may want to use rd.iscsi.firmware.
718 **root=**_???_ **netroot=**iscsi **rd.iscsi.firmware=1**::
719 will read the iscsi parameter from the BIOS firmware
721 **rd.iscsi.param=**__<param>__::
722 <param> will be passed as "--param <param>" to iscsistart.
723 This parameter can be specified multiple times.
728 "netroot=iscsi rd.iscsi.firmware=1 rd.iscsi.param=node.session.timeo.replacement_timeout=30"
735 iscsistart -b --param node.session.timeo.replacement_timeout=30
738 **rd.iscsi.ibft** **rd.iscsi.ibft=1**:
739 Turn on iBFT autoconfiguration for the interfaces
741 **rd.iscsi.waitnet=0**:
742 Turn off waiting for all interfaces to be up before trying to login to the iSCSI targets.
744 **rd.iscsi.testroute=0**:
745 Turn off checking, if the route to the iSCSI target IP is possible before trying to login.
749 **fcoe=**__<edd|interface|MAC>__:__{dcb|nodcb}__::
750 Try to connect to a FCoE SAN through the NIC specified by _<interface>_ or
751 _<MAC>_ or EDD settings. For the second argument, currently only nodcb is
752 supported. This parameter can be specified multiple times.
754 NOTE: letters in the MAC-address must be lowercase!
758 **root=**??? **netroot=**nbd:__<server>__:__<port/exportname>__[:__<fstype>__[:__<mountopts>__[:__<nbdopts>__]]]::
759 mount nbd share from <server>.
762 If "exportname" instead of "port" is given the standard port is used.
763 Newer versions of nbd are only supported with "exportname".
765 **root=dhcp** with **dhcp** **root-path=**nbd:__<server>__:__<port/exportname>__[:__<fstype>__[:__<mountopts>__[:__<nbdopts>__]]]::
766 root=dhcp alone directs initrd to look at the DHCP root-path where NBD
767 options can be specified. This syntax is only usable in cases where you are
768 directly mounting the volume as the rootfs.
771 If "exportname" instead of "port" is given the standard port is used.
772 Newer versions of nbd are only supported with "exportname".
777 same syntax as the kernel module parameter (s390 only)
781 **rd.zfcp=**__<zfcp adaptor device bus ID>__,__<WWPN>__,__<FCPLUN>__::
782 rd.zfcp can be specified multiple times on the kernel command line.
787 rd.zfcp=0.0.4000,0x5005076300C213e9,0x5022000000000000
791 ignore zfcp.conf included in the initramfs
795 **rd.znet=**__<nettype>__,__<subchannels>__,__<options>__::
796 rd.znet can be specified multiple times on the kernel command line.
801 rd.znet=qeth,0.0.0600,0.0.0601,0.0.0602,layer2=1,portname=foo
802 rd.znet=ctc,0.0.0600,0.0.0601,protocol=bar
807 Dracut offers multiple options for live booted images:
809 =====================
810 SquashFS with read-only filesystem image::: The system will boot with a read
811 only filesystem from the SquashFS and apply a writable device-mapper snapshot
812 over the read only filesystem. Using this method ensures a relatively fast
813 boot and lower RAM usage. Users **must be careful** to avoid writing too many
814 blocks to the snapshot volume. Once the blocks of the snapshot overlay are
815 exhausted, the root filesystem becomes unusable and requires a reboot. A
816 persistent overlay is marked Invalid, and requires a difficult recovery.
817 Non-persistent overlays default to 512 MiB in RAM, but the size can be adjusted
818 with the **rd.live.overlay.size=** kernel command line option.
820 The filesystem structure is expected to be:
824 squashfs.img | Squashfs from LiveCD .iso downloaded via network
827 |- ext3fs.img | Filesystem image to mount read-only
829 /bin | Live filesystem
835 Dracut uses this method of live booting by default. No additional command line
836 options are required other than **root=live:<URL>** to specify the location
837 of your squashed filesystem.
839 - The compressed SquashFS image can be copied during boot to RAM at
840 `/run/initramfs/squashed.img` by using the **rd.live.ram=1** option.
841 - A device with a persistent overlay can be booted read only by using the
842 **rd.live.overlay.readonly** option on the kernel command line. This will
843 cause a temporary, writable overlay to be stacked over a read-only snapshot
844 of the root filesystem.
846 Uncompressed live filesystem image:::
847 When the live system was installed with the '--skipcompress' option of the
848 __livecd-iso-to-disk__ installation script for Live USB devices, the root
849 filesystem image, `ext3fs.img`, is expanded on installation and no SquashFS
850 is involved during boot.
852 - If **rd.live.ram=1** is used in this situation, the full, uncompressed
853 root filesystem is copied during boot to `/run/initramfs/rootfs.img` in the
856 - If **rd.live.overlay=none** is provided as a kernel command line option,
857 a writable, linear device-mapper target is created on boot with no overlay.
859 writable filesystem image:::
860 The system will retrieve a compressed filesystem image, extract it to
861 `/run/initramfs/fsimg/rootfs.img`, connect it to a loop device, create a
862 writable, linear device-mapper target at `/dev/mapper/live-rw`, and mount that
863 as a writable volume at `/`. More RAM is required during boot but the live
864 filesystem is easier to manage if it becomes full. Users can make a filesystem
865 image of any size and that size will be maintained when the system boots. There
866 is no persistence of root filesystem changes between boots with this option.
868 The filesystem structure is expected to be:
872 rootfs.tgz | Compressed tarball containing fileystem image
874 /rootfs.img | Filesystem image at /run/initramfs/fsimg/
876 /bin | Live filesystem
882 To use this boot option, ensure that **rd.writable.fsimg=1** is in your kernel
883 command line and add the **root=live:<URL>** to specify the location
884 of your compressed filesystem image tarball or SquashFS image.
885 =====================
887 **rd.writable.fsimg=**1::
888 Enables writable filesystem support. The system will boot with a fully
889 writable (but non-persistent) filesystem without snapshots __(see notes above
890 about available live boot options)__. You can use the **rootflags** option to
891 set mount options for the live filesystem as well __(see documentation about
892 rootflags in the **Standard** section above)__.
893 This implies that the whole image is copied to RAM before the boot continues.
895 NOTE: There must be enough free RAM available to hold the complete image.
897 This method is very suitable for diskless boots.
899 **root=**live:__<url>__::
900 Boots a live image retrieved from __<url>__. Valid handlers: __http, https, ftp, torrent, tftp__.
905 root=live:http://example.com/liveboot.img
906 root=live:ftp://ftp.example.com/liveboot.img
907 root=live:torrent://example.com/liveboot.img.torrent
910 **rd.live.debug=**1::
911 Enables debug output from the live boot process.
913 **rd.live.dir=**__<path>__::
914 Specifies the directory within the squashfs where the ext3fs.img or rootfs.img
915 can be found. By default, this is __LiveOS__.
917 **rd.live.squashimg=**__<filename of SquashFS image>__::
918 Specifies the filename for a SquashFS image of the root filesystem.
919 By default, this is __squashfs.img__.
922 Copy the complete image to RAM and use this for booting. This is useful
923 when the image resides on, i.e., a DVD which needs to be ejected later on.
925 **rd.live.overlay=**__<devspec>__:__(<pathspec>|auto)__|__none__::
926 Allow the usage of a permanent overlay.
927 - _<devspec>_ specifies the path to a device with a mountable filesystem.
928 - _<pathspec>_ is the path to a file within that filesystem, which shall be
929 used to persist the changes made to the device specified by the
930 **root=live:__<url>__** option.
931 - _none_ specifies no overlay when an uncompressed live root filesystem is
937 rd.live.overlay=/dev/sdb1:persistent-overlay.img
940 **rd.live.overlay.size=**__<size_MiB>__::
941 Specifies a non-persistent overlay size in MiB. The default is _512_.
943 **rd.live.overlay.readonly=**1::
944 Specifies a non-persistent, writable snapshot overlay to be stacked over a
945 read-only snapshot of the root filesystem, `/dev/mapper/live-ro`.
947 **rd.live.overlay.reset=**1::
948 Specifies that a persistent overlay should be reset on boot. All root
949 filesystem changes are vacated by this action.
951 **rd.live.overlay.thin=**1::
952 Enables the usage of thin snapshots instead of classic dm snapshots.
953 The advantage of thin snapshots is that they support discards, and will free
954 blocks that are not claimed by the filesystem. In this use case, this means
955 that memory is given back to the kernel when the filesystem does not claim it
961 **plymouth.enable=0**::
962 disable the plymouth bootsplash completely.
965 disable the plymouth bootsplash only for the initramfs.
969 **masterkey=**__<kernel master key path name>__::
970 Set the path name of the kernel master key.
975 masterkey=/etc/keys/kmk-trusted.blob
978 **masterkeytype=**__<kernel master key type>__::
979 Set the type of the kernel master key.
984 masterkeytype=trusted
987 **evmkey=**__<EVM key path name>__::
988 Set the path name of the EVM key.
993 evmkey=/etc/keys/evm-trusted.blob
996 **ecryptfskey=**__<eCryptfs key path name>__::
997 Set the path name of the eCryptfs key.
1002 ecryptfskey=/etc/keys/ecryptfs-trusted.blob
1005 Deprecated, renamed Options
1006 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
1007 Here is a list of options, which were used in dracut prior to version 008, and
1008 their new replacement.
1014 rd_DASD_MOD:: rd.dasd
1018 rdinitdebug rdnetdebug:: rd.debug
1022 rd_DM_UUID:: rd.dm.uuid
1024 rdblacklist:: rd.driver.blacklist
1026 rdinsmodpost:: rd.driver.post
1028 rdloaddriver:: rd.driver.pre
1030 rd_NO_FSTAB:: rd.fstab=0
1034 check:: rd.live.check
1036 rdlivedebug:: rd.live.debug
1038 live_dir:: rd.live.dir
1040 liveimg:: rd.live.image
1042 overlay:: rd.live.overlay
1044 readonly_overlay:: rd.live.overlay.readonly
1046 reset_overlay:: rd.live.overlay.reset
1048 live_ram:: rd.live.ram
1050 rd_NO_CRYPTTAB:: rd.luks.crypttab=0
1052 rd_LUKS_KEYDEV_UUID:: rd.luks.keydev.uuid
1054 rd_LUKS_KEYPATH:: rd.luks.keypath
1056 rd_NO_LUKS:: rd.luks=0
1058 rd_LUKS_UUID:: rd.luks.uuid
1060 rd_NO_LVMCONF:: rd.lvm.conf
1062 rd_LVM_LV:: rd.lvm.lv
1064 rd_NO_LVM:: rd.lvm=0
1066 rd_LVM_SNAPSHOT:: rd.lvm.snapshot
1068 rd_LVM_SNAPSIZE:: rd.lvm.snapsize
1070 rd_LVM_VG:: rd.lvm.vg
1072 rd_NO_MDADMCONF:: rd.md.conf=0
1074 rd_NO_MDIMSM:: rd.md.imsm=0
1078 rd_MD_UUID:: rd.md.uuid
1080 rd_NO_MULTIPATH: rd.multipath=0
1082 rd_NFS_DOMAIN:: rd.nfs.domain
1084 iscsi_initiator:: rd.iscsi.initiator
1086 iscsi_target_name:: rd.iscsi.target.name
1088 iscsi_target_ip:: rd.iscsi.target.ip
1090 iscsi_target_port:: rd.iscsi.target.port
1092 iscsi_target_group:: rd.iscsi.target.group
1094 iscsi_username:: rd.iscsi.username
1096 iscsi_password:: rd.iscsi.password
1098 iscsi_in_username:: rd.iscsi.in.username
1100 iscsi_in_password:: rd.iscsi.in.password
1102 iscsi_firmware:: rd.iscsi.firmware=0
1104 rd_NO_PLYMOUTH:: rd.plymouth=0
1110 rd_NO_SPLASH:: rd.splash
1112 rdudevdebug:: rd.udev.debug
1114 rdudevinfo:: rd.udev.info
1116 rd_NO_ZFCPCONF:: rd.zfcp.conf=0
1122 KEYMAP:: vconsole.keymap
1124 KEYTABLE:: vconsole.keymap
1126 SYSFONT:: vconsole.font
1128 CONTRANS:: vconsole.font.map
1130 UNIMAP:: vconsole.font.unimap
1132 UNICODE:: vconsole.unicode
1134 EXT_KEYMAP:: vconsole.keymap.ext
1136 Configuration in the Initramfs
1137 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1139 Any files found in _/etc/conf.d/_ will be sourced in the initramfs to
1140 set initial values. Command line options will override these values
1141 set in the configuration files.
1144 Can contain additional command line options. Deprecated, better use
1145 /etc/cmdline.d/*.conf.
1147 _/etc/cmdline.d/*.conf_::
1148 Can contain additional command line options.
1156 *dracut*(8) *dracut.conf*(5)