Poster of Linux kernelThe best gift for a Linux geek
DRACUT

DRACUT

Section: Maintenance Commands (8) Updated: June 2009
Local index Up
 

NAME

dracut - create initial ramdisk images for preloading modules  

SYNOPSIS

dracut [OPTION]... <image> <kernel-version>

 

DESCRIPTION

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.

 

Options

-f, --force
overwrite existing initramfs file.
-m, --modules LIST
specify a space-separated list of dracut modules to call when building the initramfs. Modules are located in /usr/share/dracut/modules.d.
-o, --omit LIST
omit a space-separated list of dracut modules.
-a, --add LIST
add a space-separated list of dracut modules.
-d, --drivers LIST
specify a space-separated list of kernel modules to exclusively include# in the initramfs. --add-drivers LIST specify a space-separated list of kernel modules to add to the initramfs.
--filesystems LIST
specify a space-separated list of kernel filesystem modules to exclusively include in the generic initramfs.
-k, --kmoddir {DIR}
specify the directory, where to look for kernel modules
--fwdir {DIR}
specify additional directory, where to look for firmwares
--kernel-only
only install kernel drivers and firmware files
--no-kernel
do not install kernel drivers and firmware files
--mdadmconf
include local /etc/mdadm.conf
--nomdadmconf
do not include local /etc/mdadm.conf
--strip
strip binaries in the initramfs (default)
--nostrip
do not strip binaries in the initramfs
-h, --help
display help text and exit.
--debug
output debug information of the build process
-v, --verbose
verbose output during the build process
-c, --conf FILE
specify configuration file to use. Default: /etc/dracut.conf
--confdir DIR
specify configuration directory to use. Default: /etc/dracut.conf.d
-l, --local
local mode. Use modules from the current working directory instead of the system-wide installed in /usr/share/dracut/modules.d. Useful when running dracut from a git checkout.
-H, --hostonly
Host-Only mode: Install only what is needed for booting the local host instead of a generic host.
-i, --include SOURCE TARGET
include the files in the SOURCE directory into the target directory in the final initramfs.
-I, --install LIST
install the space separated list of files into the initramfs.

 

KERNEL COMMAND LINE

The root filesystem used by the kernel is specified in the boot configuration file, as always. The traditional root=/dev/hda1 style device specification is allowed. If a label is used, as in root=LABEL=rootPart 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. root=UUID=uuidnumber will mount the partition with that UUID as the root filesystem.

 

Standard

init=<path to real init>
root=<path to blockdevice>
specify blockdevice to use as root filesystem.
 e.g.
  root=/dev/sda1
  root=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
rootfstype=<filesystem type>
"auto" if not specified, e.g. rootfstype=ext3
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.
rd_NO_FSTAB
do not honor special mount options for the root filesystem found in /etc/fstab of the real root.

 

Misc

rdblacklist=<drivername>
do not load kernel module <drivername>
rdloaddriver=<drivername>
force loading kernel module <drivername>

 

Debug

rdinfo
print informational output though "quiet" is set
rdshell
allow dropping to a shell, if root mounting fails
rdinitdebug
set -x for the dracut shell and logs to dmesg, console and /init.log
rdbreak
drop to a shell at the end
rdbreak={cmdline:|pre-udev:|pre-trigger:|initqueue:|pre-mount:|mount:|pre-pivot} drop to a shell on defined breakpoint
rdudevinfo
set udev to loglevel info
rdudevdebug
set udev to loglevel debug
rdnetdebug
debug network scripts in dracut. Output is written to /tmp/

 

I18N


 e.g.
  LANG=en_US.UTF-8
  SYSFONT=latarcyrheb-sun16
  KEYTABLE=de-latin1-nodeadkeys
KEYBOARDTYPE=sun|pc
will be written to /etc/sysconfig/keyboard in the initramfs
KEYTABLE=<keytable filename>
will be written to /etc/sysconfig/keyboard in the initramfs
SYSFONT=Console font
will be written to /etc/sysconfig/i18n in the initramfs
SYSFONTACM=Unicode font map
will be written to /etc/sysconfig/i18n in the initramfs
UNIMAP=Unicode font map
will be written to /etc/sysconfig/i18n in the initramfs
LANG=<locale>
will be written to /etc/sysconfig/i18n in the initramfs

 

LVM

rd_NO_LVM
disable LVM detection
rd_LVM_VG=<volume group name>
only activate the volume groups with the given name rd_LVM_VG can be specified multiple times on the kernel command line.
rd_LVM_LV=<logical volume name>
only activate the volume groups with the given name rd_LVM_LV can be specified multiple times on the kernel command line.
rd_NO_LVMCONF
remove any /etc/lvm/lvm.conf, which may exist in the initramfs

 

crypto LUKS

rd_NO_LUKS
disable crypto LUKS detection
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. rd_NO_CRYPTTAB do not check if LUKS partition is in /etc/crypttab

 

MD

rd_NO_MD
disable MD RAID detection
rd_NO_MDIMSM
no MD RAID for imsm/isw raids, use dmraid instead
rd_NO_MDADMCONF
ignore mdadm.conf included in initramfs
rd_MD_UUID=<md uuid>
only activate the raid sets with the given UUID

 

DMRAID

rd_NO_DM
disable DM RAID detection
rd_DM_UUID=<dmraid uuid>
only activate the raid sets with the given UUID

 

Network

ip={dhcp|on|any|dhcp6|auto6}
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.

auto6: do IPv6 autoconfiguration

ip=<interface>:{dhcp|on|any|dhcp6|auto6}
dhcp|on|any|dhcp6: get ip from dhcp server on a specific interface

auto6: do IPv6 autoconfiguration

ip=<client-IP>::[<server-id>]::<gateway-IP>::<netmask>::<clienthostname>::<interface>::{none|off} explicit network configuration. If you want do define a IPv6 address, put it in brackets (e.g. [2001:DB8::1]).
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 must specify an ifname= argument for all interfaces used in ip= or fcoe= arguments
bootdev=<interface>
specify network interface to use routing and netroot information from. Required if multiple ip= lines are used.
nameserver=<IP> [nameserver=<IP> ...]
specify nameserver(s) to use

 

NFS

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 "," and are seperated by ",".
root=nfs:[<server-ip>:]<root-dir>[:<nfs-options>]
root=nfs4:[<server-ip>:]<root-dir>[:<nfs-options>]
root=dhcp|dhcp6
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>] 
root=/dev/nfs nfsroot=[<server-ip>:]<root-dir>[,<nfs-options>]
Deprecated! kernel Documentation/filesystems/nfsroot.txt defines this method. This is supported by dracut but not recommended.
rd_NFS_DOMAIN=<NFSv4 domain name>
Set the NFSv4 domain name. Will overwrite the settings in /etc/idmap.conf.

 

iSCSI

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

root=iscsi:[username:password:[:reverse:password]@]:[<servername>]::[<protocol>]::[<port>]::[<LUN>]::<targetname> e.g. root=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
root=??? netroot=iscsi:[username:password[:reverse:password]@]:[<servername>]::[<protocol>]::[<port>]::[<LUN>]::<targetname> ... multiple netroot options allow setting up multiple iscsi disks Not yet implemented!
 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

root=??? iscsi_initiator=<initiator> iscsi_target_name=<target name> iscsi_target_ip=<target ip> iscsi_target_port=<target port> iscsi_target_group=<target group> iscsi_username=<username> iscsi_password=<password> iscsi_in_username=<in username> iscsi_in_password=<in password> manually specify all iscsistart parameter (see iscsistart --help)

root=??? iscsi_firmware
will read the iscsi parameter from the BIOS firmware

 

FCoE

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!

 

NBD

root=nbd:<server>:<port>[:<fstype>][:<mountopts>]
mount nbd share from <server>
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.

 

DASD

rd_DASD_MOD=....
same syntax as the kernel module parameter (s390 only)

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

 

ZFCP

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

rd_NO_ZFCPCONF
ignore zfcp.conf included in the initramfs

 

CCW

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

 

Plymouth Boot Splash

rd_NO_PLYMOUTH
do not start plymouth. This will not work with encrypted partitions.

 

FILES

/var/log/dracut.log
/tmp/dracut.log
see dracut.conf(5)
/etc/dracut.conf
 

Configuration in the Initramfs

/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.
/etc/cmdline
Can contain additional command line options.

 

AUTHORS

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>
 

AVAILABILITY

The dracut command is part of the dracut package and is available from http://sourceforge.net/apps/trac/dracut/wiki

 

SEE ALSO

dracut.conf(5)


 

Index

NAME
SYNOPSIS
DESCRIPTION
Options
KERNEL COMMAND LINE
Standard
Misc
Debug
I18N
LVM
crypto LUKS
MD
DMRAID
Network
NFS
iSCSI
FCoE
NBD
DASD
ZFCP
CCW
Plymouth Boot Splash
FILES
Configuration in the Initramfs
AUTHORS
AVAILABILITY
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 22:01:32 GMT, April 16, 2011