From Fedora Project Wiki
(→‎Debug: typo of initramfs)
Line 187: Line 187:


<pre>rdshell</pre>
<pre>rdshell</pre>
{{admon/note|Drop to a shell, if the imitramfs fails.}}
{{admon/note|Drop to a shell, if the initramfs fails.}}
<pre>rdinitdebug</pre>
<pre>rdinitdebug</pre>
{{admon/note|set -x for the dracut shell.}}
{{admon/note|set -x for the dracut shell.}}

Revision as of 03:08, 16 June 2010


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.

SYNOPSIS

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

-f, --force

-f, --force
Overwrite existing initramfs file.

-m, --modules

-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

-o, --omit LIST
Omit a space-separated list of dracut modules.

-a, --add

-a, --add LIST
Add a space-separated list of dracut modules.

-d, --drivers

-d, --drivers LIST
Specify a space-separated list of kernel modules to include in the initramfs.

-k, --kmoddir

-k, --kmoddir {DIR}
Specify the directory, where to look for kernel modules.

--fwdir

--fwdir {DIR}
Specify additional directory, where to look for firmwares.

--kernel-only

--kernel-only
Only install kernel drivers and firmware files.

--no-kernel

--no-kernel
Do not install kernel drivers and firmware files.

--strip

--strip
Strip binaries in the initramfs (default).

--nostrip

--nostrip
No not strip binaries in the initramfs.

-h, --help

-h, --help
Display help text and exit.

--debug

--debug
Output debug information of the build process

-v, --verbose

v, --verbose
Verbose output during the build process

-c, --conf

-c, --conf FILE
Specify configuration file to use. Default: /etc/dracut.conf

-l, --local

-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

-H, --hostonly
Host-Only mode: Install only what is needed for booting the local host instead of a generic host.

-i, --include

-i, --include SOURCE TARGET
Include the files in the SOURCE directory into the target directory in the final initramfs.

-I, --install

-I, --install LIST
Install the space separated list of files into the initramfs.

Dracut kernel command line parameters

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.

Limitations

  • Command line length: 2048
  • dhcp root-path: 255

Standard

init=<path to real init>
root=<path to blockdevice>
Specify e.g. /dev/sda1 or /dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1

I18N

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

Bootsplash - plymouth

rd_plytheme=<theme name>
Specify the plymouth bootsplash theme (fallback is text)

LVM

rd_NO_LVM
Disable LVM detection
rd_LVM_VG=<volume group name>
Only activate the volume groups with the given name

crypto LUKS

rd_NO_LUKS
Disable crypto LUKS detection
rd_LUKS_UUID=<luks uuid>
Only activate the LUKS partitions with the given UUID

MD

rd_NO_MD
Disable MD RAID detection
rd_NO_MDIMSM
No MD RAID for imsm/isw raids, use dmraid instead.
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

DASD

dasd=....
Same syntax as the kernel module parameter (s390 only).

DHCP

You need to install dracut-network for this module.
root=dhcp
Get IP from dhcp server, root-path option from dhcp specifies root location.

NFS

You need to install "dracut-network" for this module.
root=[<server-ip>:]<root-dir>[:<nfs-options>]
root=nfs:[<server-ip>:]<root-dir>[:<nfs-options>]
root=nfs4:[<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 ","
root=dhcp root-path=<server-ip>:<root-dir>[,<nfs-options>]
root=dhcp root-path=nfs:<server-ip>:<root-dir>[,<nfs-options>]
root=dhcp root-path=nfs4:<server-ip>:<root-dir>[,<nfs-options>]
root=dhcp alone directs initrd to look at the DHCP root-path where NFS options can be specified.
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.
/etc/idmapd.conf is copied to the initramfs.

iSCSI

You need to install dracut-network for this module.
root=iscsi:[<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.RFC4173
root=iscsi:[<servername>]:[<protocol>]:[<port>]:[<LUN>]:<targetname>
root=??? netroot=iscsi:[<servername>]:[<protocol>]:[<port>]:[<LUN>]:<targetname> ...
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=::
root=??? iscsi_firmware::

NBD

You need to install dracut-network for this module.
root=nbd:<server>:<port>[:<fstype>][:<mountopts>]
Mount nbd share from <server>.
root=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.

Network

You need to install dracut-network for this module.
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.
ip=<interface>:[dhcp|on|any]
Get ip from dhcp server on a specific interface.
ip=<client-IP-number>:[<server-id>]:<gateway-IP-number>:<netmask>:<client-hostname>:<interface>:{none|off}
Explicit network configuration

Misc

rdblacklist=<modulename>
TBD: do not load modulename.

Debug

rdshell
Drop to a shell, if the initramfs fails.
rdinitdebug
set -x for the dracut shell.
rdbreak=[pre-udev|pre-mount|mount|pre-pivot|]
Drop the shell on defined breakpoint.
rdudevinfo
Set udev to loglevel info.
rdudevdebug
Set udev to loglevel debug.
rdnetdebug
Debug network scripts in dracut.

Configuration in initrd

/etc/conf.d/* 
Command line options can override values set here

Dracut-catimages

Creates initial ramdisk image by concatenating several images from the command line and /boot/dracut/

SYNOPSIS

dracut-catimages [OPTION]... <initramfs> <base image> [<image>...]

-f, --force

-f, --force
Overwrite existing initramfs file.

-i, --imagedir

-i, --imagedir
Directory with additional images to add (default: /boot/dracut/).

-o, --overlaydir

-o, --overlaydir
Overlay directory, which contains files that will be used to create an additional image.

--nooverlay

--nooverlay
Do not use the overlay directory.

--noimagedir

--noimagedir
Do not use the additional image directory.

-h, --help

-h, --help
Print help text and exit.

--debug

--debug
Output debug information of the build process.

-v, --verbose

-v, --verbose
Verbose output during the build process.

Dracut-gencmdline

Generate the kernel command line for the local host.

SYNOPSIS

dracut-gencmdline