.TH DRACUT 8 "June 2009" "Linux"
.SH NAME
dracut \- create initial ramdisk images for preloading modules
.SH SYNOPSIS
\fB dracut\fR [\fI OPTION\fR ]... \fI <image>\fR \fI <kernel-version>\fR
.SH DESCRIPTION
.B dracut
creates an initial image used by the kernel for
preloading the block device modules (such as IDE, SCSI or RAID)
which are needed to access the root filesystem.
.SH OPTIONS
.TP
.BR \- f ", " \- \- force
overwrite existing initramfs file.
.TP
.BR \- m ", " \- \- modules " \fILIST\fR"
specify a space-separated list of dracut modules to call
when building the initramfs.
Modules are located in
.IR /usr/share/dracut/modules.d .
.TP
.BR \- o ", " \- \- omit " \fILIST\fR"
omit a space-separated list of dracut modules.
.TP
.BR \- a ", " \- \- add " \fILIST\fR"
add a space-separated list of dracut modules.
.TP
.BR \- d ", " \- \- drivers " \fILIST\fR"
specify a space-separated list of kernel modules to exclusively include in the initramfs.
.BR \- \- add-drivers " \fILIST\fR"
specify a space-separated list of kernel modules to add to the initramfs.
.TP
.BR \- \- filesystems " \fILIST\fR"
specify a space-separated list of kernel filesystem modules to exclusively include in the generic initramfs.
.TP
.BR \- k ", " \- \- kmoddir " \fI {DIR}\fR
specify the directory, where to look for kernel modules
.TP
.BR " \-\-fwdir " \fI {DIR}\fR
specify additional directory, where to look for firmwares
.TP
.BR \- \- kernel-only
only install kernel drivers and firmware files
.TP
.BR \- \- no-kernel
do not install kernel drivers and firmware files
.TP
.BR \- \- mdadmconf
include local /etc/mdadm.conf
.TP
.BR \- \- nomdadmconf
do not include local /etc/mdadm.conf
.TP
.BR \- \- strip
strip binaries in the initramfs (default)
.TP
.BR \- \- nostrip
do not strip binaries in the initramfs
.TP
.BR \- h ", " \- \- help
display help text and exit.
.TP
.B \- \- debug
output debug information of the build process
.TP
.BR \- v ", " \- \- verbose
verbose output during the build process
.TP
.BR \- c ", " \- \- conf " \fIFILE\fR"
specify configuration file to use.
Default:
.IR /etc/dracut.conf
.TP
.BR \- l ", " \- \- local
local mode. Use modules from the current working
directory instead of the system-wide installed in
.IR /usr/share/dracut/modules.d .
Useful when running dracut from a git checkout.
.TP
.BR \- H ", " \- \- hostonly
Host-Only mode: Install only what is needed for
booting the local host instead of a generic host.
.TP
.BR \- i ", " \- \- include " \fISOURCE\fR" "" " \fITARGET\fR"
include the files in the SOURCE directory into the
target directory in the final initramfs.
.TP
.BR \- I ", " \- \- install " \fILIST\fR"
install the space separated list of files into the initramfs.
.SH KERNEL COMMAND LINE
The root filesystem used by the kernel is specified in the boot configuration
file, as always. The traditional \fB root=/dev/hda1\fR style device
specification is allowed. If a label is used, as in \fB root=LABEL=rootPart\fR
the initrd will search all available devices for an ext2 or ext3 filesystem
with the appropriate label, and mount that device as the root filesystem.
\fB root=UUID=uuidnumber\fR will mount the partition with that UUID as the
root filesystem.
.SH Standard
.TP
.B init=<path to real init>
.TP
.B root=<path to blockdevice>
specify blockdevice to use as root filesystem.
e.g. \fI /dev/sda1\fR
e.g. \fI /dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1\fR
.TP
.B rootfstype=<filesystem type>
"auto" if not specified, e.g. \fI rootfstype=ext3\fR
.TP
.B rootflags=<mount options>
specify additional mount options for the root filesystem. If not set, /etc/fstab
of the real root will be parsed for special mount options and mounted
accordingly.
.TP
.B rd_NO_FSTAB
do not honor special mount options for the root filesystem found in
/etc/fstab of the real root.
.SH I18N
.ad l
e.g. LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=de-latin1-nodeadkeys
.ad
.TP
.B KEYBOARDTYPE=sun|pc
will be written to /etc/sysconfig/keyboard in the initramfs
.TP
.B KEYTABLE=<keytable filename>
will be written to /etc/sysconfig/keyboard in the initramfs
.TP
.B SYSFONT= Console font
will be written to /etc/sysconfig/i18n in the initramfs
.TP
.B SYSFONTACM= Unicode font map
will be written to /etc/sysconfig/i18n in the initramfs
.TP
.B UNIMAP= Unicode font map
will be written to /etc/sysconfig/i18n in the initramfs
.TP
.B LANG=<locale>
will be written to /etc/sysconfig/i18n in the initramfs
.SH LVM
.TP
.B rd_NO_LVM
disable LVM detection
.TP
.B rd_LVM_VG=<volume group name>
only activate the volume groups with the given name
.TP
.B rd_NO_LVMCONF
remove any /etc/lvm/lvm.conf, which may exist in the initramfs
.SH crypto LUKS
.TP
.B rd_NO_LUKS
disable crypto LUKS detection
.TP
.B rd_LUKS_UUID=<luks uuid>
only activate the LUKS partitions with the given UUID
Any "luks-" of the LUKS UUID is removed before comparing to <luks uuid>.
The comparisons also matches, if <luks uuid> is only the beginning of the
LUKS UUID, so you don't have to specify the full UUID.
.B rd_NO_CRYPTTAB
do not check if LUKS partition is in /etc/crypttab
.SH MD
.TP
.B rd_NO_MD
disable MD RAID detection
.TP
.B rd_NO_MDIMSM
no MD RAID for imsm/isw raids, use dmraid instead
.TP
.B rd_NO_MDADMCONF
ignore mdadm.conf included in initramfs
.TP
.B rd_MD_UUID=<md uuid>
only activate the raid sets with the given UUID
.SH DMRAID
.TP
.B rd_NO_DM
disable DM RAID detection
.TP
.B rd_DM_UUID=<dmraid uuid>
only activate the raid sets with the given UUID
.SH DASD
.TP
.B rd_DASD_MOD=....
same syntax as the kernel module parameter (s390 only)
.TP
.B rd_DASD=<dasd adaptor device bus ID>[,readonly=X][,use_diag=X][,erplog=X][,failfast=X]
activate DASD device with the given adaptor device bus ID and setting the sysfs attributes
to the specified values
.SH ZFCP
.TP
.B rd_ZFCP=<zfcp adaptor device bus ID>,<WWPN>,<FCPLUN>
rd_ZFCP can be specified multiple times on the kernel command line.
example: rd_ZFCP=0.0.4000,0x5005076300C213e9,0x5022000000000000
.TP
.B rd_NO_ZFCPCONF
ignore zfcp.conf included in the initramfs
.SH CCW
.TP
.B rd_CCW=<nettype>,<subchannels>,<options>
rd_CCW can be specified multiple times on the kernel command line. Examples:
rd_CCW=qeth,0.0.0600,0.0.0601,0.0.0602,layer2=1,portname=foo
rd_CCW=ctc,0.0.0600,0.0.0601,0.0.0602,protocol=bar
.SH DHCP
.TP
.B root=dhcp
get IP from dhcp server, root-path option from dhcp specifies root location
.SH NFS
.TP
.B root=[<server-ip>:]<root-dir>[:<nfs-options>]
mount nfs share from <server-ip>:/<root-dir>, if no server-ip is given,
use dhcp next_server.
NFS options can be appended with the prefix "." or ","
.TP
.B root=nfs:[<server-ip>:]<root-dir>[:<nfs-options>]
.TP
.B root=nfs4:[<server-ip>:]<root-dir>[:<nfs-options>]
.TP
.B root=dhcp
root=dhcp alone directs initrd to look at the DHCP root-path where NFS
options can be specified.
root-path=<server-ip>:<root-dir>[,<nfs-options>]
root-path=nfs:<server-ip>:<root-dir>[,<nfs-options>]
root-path=nfs4:<server-ip>:<root-dir>[,<nfs-options>]
.TP
.B root=/dev/nfs nfsroot=[<server-ip>:]<root-dir>[,<nfs-options>]
\fB Deprecated!\fR kernel Documentation/filesystems/nfsroot.txt defines
this method.
This is supported by dracut but not recommended.
.TP
.B rd_NFS_DOMAIN=<NFSv4 domain name>
Set the NFSv4 domain name. Will overwrite the settings in /etc/idmap.conf.
.SH iSCSI
.TP
.B root=iscsi:[username:password[:reverse:password]@][<servername>]:[<protocol>]:[<port>]:[<LUN>]:<targetname>
protocol defaults to "6", LUN defaults to "0".
If the "servername" field is provided by BOOTP or DHCP, then that
field is used in conjunction with other associated fields to contact
the boot server in the Boot stage (Section 7). However, if the
"servername" field is not provided, then the "targetname" field is
then used in the Discovery Service stage in conjunction with other
associated fields.
http://tools.ietf.org/html/rfc4173
.TP
.B root=iscsi:[username:password[:reverse:password]@][<servername>]:[<protocol>]:[<port>]:[<LUN>]:<targetname>
e.g. root=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
.TP
.B root=??? netroot=iscsi:[username:password[:reverse:password]@][<servername>]:[<protocol>]:[<port>]:[<LUN>]:<targetname> ...
.ad l
multiple netroot options allow setting up multiple iscsi disks
e.g.
root=UUID=12424547
netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1
.B not yet implemented!
.ad
.TP
.B root=??? iscsi_initiator= iscsi_target_name= iscsi_target_ip= iscsi_target_port= iscsi_target_group= iscsi_username= iscsi_password= iscsi_in_username= iscsi_in_password=
.TP
.B root=??? iscsi_firmware
will read the iscsi parameter from the BIOS firmware
.SH FCoE
.TP
.B netroot=fcoe:<interface|MAC>:<dcb|nodcb>
Try to connect to a FCoE SAN through the NIC specified by <interface> or <MAC>,
for the second argument, currently only nodcb is supported. Note letters in
the MAC-address must be lowercase!
.SH NBD
.TP
.B root=nbd:<server>:<port>[:<fstype>][:<mountopts>]
mount nbd share from <server>
.TP
.B root=dhcp
with dhcp root-path=nbd:<server>:<port>[:<fstype>][:<mountopts>]
root=dhcp alone directs initrd to look at the DHCP root-path where NBD options can be specified.
This syntax is only usable in cases where you are directly mounting the volume as the rootfs.
.SH Network
.TP
.B ip={dhcp|on|any}
get ip from dhcp server from all interfaces. If root=dhcp, loop sequentially through all interfaces (eth0, eth1, ...) and use the first with a valid DHCP root-path.
.TP
.B ip=<interface>:{dhcp|on|any}
get ip from dhcp server on a specific interface
.TP
.ad l
.B ip=<client-IP>:[<server-id>]:<gateway-IP>:<netmask>:<client\%hostname>:<interface>:{none|off}
.ad
explicit network configuration
.TP
.B ifname=<interface>:<MAC>
Assign network device name <interface> (ie eth0) to the NIC with MAC <MAC>.
Note letters in the MAC-address must be lowercase!
Note that if you use this option you \fB must\fR specify an ifname= argument
for all interfaces used in ip= or fcoe= arguments
.TP
.B bootdev=<interface>
specify network interface to use routing and netroot information from. Required if multiple ip= lines are used.
.SH Plymouth Boot Splash
.TP
.B rd_NO_PLYMOUTH
do not start plymouth. This will not work with encrypted partitions.
.SH Misc
.TP
.B rdblacklist=<drivername>
do not load kernel module <drivername>
.TP
.B rdloaddriver=<drivername>
force loading kernel module <drivername>
.SH Debug
.TP
.B rdinfo
print informational output though "quiet" is set
.TP
.B rdshell
allow dropping to a shell, if root mounting fails
.TP
.B rdinitdebug
set -x for the dracut shell and logs to dmesg, console and /init.log
.TP
.B rdbreak
drop to a shell at the end
.TP
.B rdbreak={cmdline | pre-udev | pre-trigger | initqueue | pre-mount | mount | pre-pivot}
drop to a shell on defined breakpoint
.TP
.B rdudevinfo
set udev to loglevel info
.TP
.B rdudevdebug
set udev to loglevel debug
.TP
.B rdnetdebug
debug network scripts in dracut. Output is written to /tmp/
.SH CONFIGURATION IN INITRAMFS
.TP
.B /conf/conf.d/
Any files found in /conf/conf.d/ will be sourced in the initramfs to
set initial values. Command line options will override these values
set in the configuration files.
.SH FILES
.TP
.B /var/log/dracut.log
.TP
.B /tmp/dracut.log
.TP
.B /etc/dracut.conf
.SH AUTHORS
.nf
Harald Hoyer <harald@redhat.com>
Victor Lowther <victor.lowther@gmail.com>
Warren Togami <wtogami@redhat.com>
Jeremy Katz <katzj@redhat.com>
Philippe Seewer <philippe.seewer@bfh.ch>
David Dillow <dave@thedillows.org>
.fi
.SH AVAILABILITY
The dracut command is part of the dracut package and is available from
http://sourceforge.net/apps/trac/dracut/wiki
.SH SEE ALSO
.BR dracut.conf (5)