| DRACUT(8) |
| ========= |
| :doctype: manpage |
| :man source: dracut |
| :man manual: dracut |
| |
| NAME |
| ---- |
| dracut - low-level tool for generating an initramfs image |
| |
| SYNOPSIS |
| -------- |
| *dracut* [__OPTION...__] [__<image>__ [__<kernel version>__]] |
| |
| DESCRIPTION |
| ----------- |
| |
| Create an initramfs <image> for the kernel with the version <kernel version>. |
| If <kernel version> is omitted, then the version of the actual running |
| kernel is used. If <image> is omitted or empty, then the default location |
| /boot/initramfs-<kernel version>.img is used. |
| |
| 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, mounting the root filesystem and booting into the real system. |
| |
| At boot time, the kernel unpacks that archive into RAM disk, mounts and uses it |
| as initial root file system. All finding of the root device happens in this |
| early userspace. |
| |
| For a complete list of kernel command line options see *dracut.cmdline*(7). |
| |
| If you are dropped to an emergency shell, while booting your initramfs, |
| the file _/run/initramfs/rdsosreport.txt_ is created, which can be safed to a |
| (to be mounted by hand) partition (usually /boot) or a USB stick. |
| Additional debugging info can be produced by adding **rd.debug** to the kernel |
| command line. _/run/initramfs/rdsosreport.txt_ contains all logs and the output |
| of some tools. It should be attached to any report about dracut problems. |
| |
| USAGE |
| ----- |
| |
| include::dracut.usage.asc[] |
| |
| OPTIONS |
| ------- |
| **--kver** _<kernel version>_:: |
| set the kernel version. This enables to specify the kernel version, without |
| specifying the location of the initramfs image. For example: |
| ---- |
| # dracut --kver 3.5.0-0.rc7.git1.2.fc18.x86_64 |
| ---- |
| |
| **-f, --force**:: |
| overwrite existing initramfs file. |
| |
| **-m, --modules** _<list of dracut modules>_:: |
| specify a space-separated list of dracut modules to call when building the |
| initramfs. Modules are located in _/usr/lib/dracut/modules.d_. This |
| parameter can be specified multiple times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --modules "module1 module2" ... |
| ---- |
| =============================== |
| |
| **-o, --omit** _<list of dracut modules>_:: |
| omit a space-separated list of dracut modules. This parameter can be |
| specified multiple times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --omit "module1 module2" ... |
| ---- |
| =============================== |
| |
| **-a, --add** _<list of dracut modules>_:: |
| add a space-separated list of dracut modules to the default set of modules. |
| This parameter can be specified multiple times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --add "module1 module2" ... |
| ---- |
| =============================== |
| |
| **--force-add** _<list of dracut modules>_:: |
| force to add a space-separated list of dracut modules to the default set of |
| modules, when -H is specified. This parameter can be specified multiple |
| times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --force-add "module1 module2" ... |
| ---- |
| =============================== |
| |
| **-d, --drivers** _<list of kernel modules>_:: |
| specify a space-separated list of kernel modules to exclusively include |
| in the initramfs. The kernel modules have to be specified without the ".ko" |
| suffix. This parameter can be specified multiple times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --drivers "kmodule1 kmodule2" ... |
| ---- |
| =============================== |
| |
| **--add-drivers** _<list of kernel modules>_:: |
| specify a space-separated list of kernel modules to add to the initramfs. |
| The kernel modules have to be specified without the ".ko" suffix. This |
| parameter can be specified multiple times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --add-drivers "kmodule1 kmodule2" ... |
| ---- |
| =============================== |
| |
| **--omit-drivers** _<list of kernel modules>_:: |
| specify a space-separated list of kernel modules not to add to the |
| initramfs. |
| The kernel modules have to be specified without the ".ko" suffix. This |
| parameter can be specified multiple times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --omit-drivers "kmodule1 kmodule2" ... |
| ---- |
| =============================== |
| |
| **--filesystems** _<list of filesystems>_:: |
| specify a space-separated list of kernel filesystem modules to exclusively |
| include in the generic initramfs. This parameter can be specified multiple |
| times. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --filesystems "filesystem1 filesystem2" ... |
| ---- |
| =============================== |
| |
| **-k, --kmoddir** _<kernel directory>_:: |
| specify the directory, where to look for kernel modules |
| |
| **--fwdir** _<dir>[:<dir>...]++_:: |
| specify additional directories, where to look for firmwares. This parameter |
| can be specified multiple times. |
| |
| **--kernel-cmdline <parameters>**:: |
| specify default kernel command line parameters |
| |
| |
| **--kernel-only**:: |
| only install kernel drivers and firmware files |
| |
| **--no-kernel**:: |
| do not install kernel drivers and firmware files |
| |
| **--early-microcode**:: |
| Combine early microcode with ramdisk |
| |
| **--no-early-microcode**:: |
| Do not combine early microcode with ramdisk |
| |
| **--print-cmdline**:: |
| print the kernel command line for the current disk layout |
| |
| **--mdadmconf**:: |
| include local _/etc/mdadm.conf_ |
| |
| **--nomdadmconf**:: |
| do not include local _/etc/mdadm.conf_ |
| |
| **--lvmconf**:: |
| include local _/etc/lvm/lvm.conf_ |
| |
| **--nolvmconf**:: |
| do not include local _/etc/lvm/lvm.conf_ |
| |
| **--fscks** [LIST]:: |
| add a space-separated list of fsck tools, in addition to _dracut.conf_'s |
| specification; the installation is opportunistic (non-existing tools are |
| ignored) |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --fscks "fsck.foo barfsck" ... |
| ---- |
| =============================== |
| |
| **--nofscks**:: |
| inhibit installation of any fsck tools |
| |
| **--strip**:: |
| strip binaries in the initramfs (default) |
| |
| **--nostrip**:: |
| do not strip binaries in the initramfs |
| |
| **--prelink**:: |
| prelink binaries in the initramfs (default) |
| |
| **--noprelink**:: |
| do not prelink binaries in the initramfs |
| |
| **--hardlink**:: |
| hardlink files in the initramfs (default) |
| |
| **--nohardlink**:: |
| do not hardlink files in the initramfs |
| |
| **--prefix** _<dir>_:: |
| prefix initramfs files with the specified directory |
| |
| **--noprefix**:: |
| do not prefix initramfs files (default) |
| |
| **-h, --help**:: |
| display help text and exit. |
| |
| **--debug**:: |
| output debug information of the build process |
| |
| **-v, --verbose**:: |
| increase verbosity level (default is info(4)) |
| |
| **-q, --quiet**:: decrease verbosity level (default is info(4)) |
| |
| **-c, --conf** _<dracut configuration file>_:: |
| specify configuration file to use. |
| + |
| Default: |
| _/etc/dracut.conf_ |
| |
| **--confdir** _<configuration directory>_:: |
| specify configuration directory to use. |
| + |
| Default: |
| _/etc/dracut.conf.d_ |
| |
| **--tmpdir** _<temporary directory>_:: |
| specify temporary directory to use. |
| + |
| Default: |
| _/var/tmp_ |
| |
| **--sshkey** _<sshkey file>_:: ssh key file used with ssh-client module. |
| |
| **--logfile** _<logfile>_:: logfile to use; overrides any setting from |
| the configuration files. |
| + |
| Default: |
| _/var/log/dracut.log_ |
| |
| **-l, --local**:: |
| activates the local mode. dracut will use modules from the current working |
| directory instead of the system-wide installed modules in |
| _/usr/lib/dracut/modules.d_. |
| This is 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 and generate host-specific configuration. |
| + |
| [WARNING] |
| ==== |
| If chrooted to another root other than the real root device, use "--fstab" and |
| provide a valid _/etc/fstab_. |
| ==== |
| |
| **-N, --no-hostonly**:: |
| Disable Host-Only mode |
| |
| **--hostonly-cmdline**: |
| Store kernel command line arguments needed in the initramfs |
| |
| **--no-hostonly-cmdline**: |
| Do not store kernel command line arguments needed in the initramfs |
| |
| **--hostonly-i18n**: |
| Install only needed keyboard and font files according to the host configuration (default). |
| |
| **--no-hostonly-i18n**: |
| Install all keyboard and font files available. |
| |
| **--persistent-policy** _<policy>_:: |
| Use _<policy>_ to address disks and partitions. |
| _<policy>_ can be any directory name found in /dev/disk. |
| E.g. "by-uuid", "by-label" |
| |
| **--fstab**:: |
| Use _/etc/fstab_ instead of _/proc/self/mountinfo_. |
| |
| **--add-fstab** _<filename>_:: |
| Add entries of _<filename>_ to the initramfs /etc/fstab. |
| |
| **--mount** "_<device>_ _<mountpoint>_ _<filesystem type>_ [_<filesystem options>_ [_<dump frequency>_ [_<fsck order>_]]]":: |
| Mount _<device>_ on _<mountpoint>_ with _<filesystem type>_ in the |
| initramfs. _<filesystem options>_, _<dump options>_ and _<fsck order>_ can |
| be specified, see fstab manpage for the details. |
| The default _<filesystem options>_ is "defaults". |
| The default _<dump frequency>_ is "0". |
| the default _<fsck order>_ is "2". |
| |
| **--add-device** _<device>_ :: |
| Bring up _<device>_ in initramfs, _<device>_ should be the device name. |
| This can be useful in hostonly mode for resume support when your swap is on |
| LVM or an encrypted partition. |
| [NB --device can be used for compatibility with earlier releases] |
| |
| **-i, --include** _<SOURCE>_ _<TARGET>_:: |
| include the files in the SOURCE directory into the |
| TARGET directory in the final initramfs. If SOURCE is a file, it will be |
| installed to TARGET in the final initramfs. This parameter can be specified |
| multiple times. |
| |
| **-I, --install** _<file list>_:: |
| install the space separated list of files into the initramfs. |
| + |
| [NOTE] |
| =============================== |
| If [LIST] has multiple arguments, then you have to put these in quotes. For |
| example: |
| ---- |
| # dracut --install "/bin/foo /sbin/bar" ... |
| ---- |
| =============================== |
| |
| **--install-optional** _<file list>_:: |
| install the space separated list of files into the initramfs, if they exist. |
| |
| **--gzip**:: |
| Compress the generated initramfs using gzip. This will be done by default, |
| unless another compression option or --no-compress is passed. Equivalent to |
| "--compress=gzip -9" |
| |
| **--bzip2**:: |
| Compress the generated initramfs using bzip2. |
| + |
| [WARNING] |
| ==== |
| Make sure your kernel has bzip2 decompression support compiled in, otherwise you |
| will not be able to boot. Equivalent to "--compress=bzip2" |
| ==== |
| |
| **--lzma**:: |
| Compress the generated initramfs using lzma. |
| + |
| [WARNING] |
| ==== |
| Make sure your kernel has lzma decompression support compiled in, otherwise you |
| will not be able to boot. Equivalent to "lzma --compress=lzma -9" |
| ==== |
| |
| **--xz**:: |
| Compress the generated initramfs using xz. |
| + |
| [WARNING] |
| ==== |
| Make sure your kernel has xz decompression support compiled in, otherwise you |
| will not be able to boot. Equivalent to |
| "lzma --compress=xz --check=crc32 --lzma2=dict=1MiB" |
| ==== |
| |
| **--lzo**:: |
| Compress the generated initramfs using lzop. |
| [WARNING] |
| ==== |
| Make sure your kernel has lzo decompression support compiled in, otherwise you |
| will not be able to boot. |
| ==== |
| |
| **--lz4**:: |
| Compress the generated initramfs using lz4. |
| [WARNING] |
| ==== |
| Make sure your kernel has lz4 decompression support compiled in, otherwise you |
| will not be able to boot. |
| ==== |
| |
| **--compress** _<compressor>_:: |
| Compress the generated initramfs using the passed compression program. If |
| you pass it just the name of a compression program, it will call that |
| program with known-working arguments. If you pass a quoted string with |
| arguments, it will be called with exactly those arguments. Depending on what |
| you pass, this may result in an initramfs that the kernel cannot decompress. |
| |
| **--no-compress**:: |
| Do not compress the generated initramfs. This will override any other |
| compression options. |
| |
| **--list-modules**:: |
| List all available dracut modules. |
| |
| **-M, --show-modules**:: |
| Print included module's name to standard output during build. |
| |
| **--keep**:: |
| Keep the initramfs temporary directory for debugging purposes. |
| |
| **--printsize**:: |
| Print out the module install size |
| |
| **--profile**: |
| Output profile information of the build process |
| |
| **--ro-mnt**: |
| Mount / and /usr read-only by default. |
| |
| **-L, --stdlog** _<level>_:: |
| [0-6] Specify logging level (to standard error) |
| ---- |
| 0 - suppress any messages |
| 1 - only fatal errors |
| 2 - all errors |
| 3 - warnings |
| 4 - info |
| 5 - debug info (here starts lots of output) |
| 6 - trace info (and even more) |
| ---- |
| |
| **--regenerate-all**:: |
| Regenerate all initramfs images at the default location with the kernel |
| versions found on the system. Additional parameters are passed through. |
| |
| FILES |
| ----- |
| _/var/log/dracut.log_:: |
| logfile of initramfs image creation |
| |
| _/tmp/dracut.log_:: |
| logfile of initramfs image creation, if _/var/log/dracut.log_ is not |
| writable |
| |
| _/etc/dracut.conf_:: |
| see dracut.conf5 |
| |
| _/etc/dracut.conf.d/*.conf_:: |
| see dracut.conf5 |
| |
| _/usr/lib/dracut/dracut.conf.d/*.conf_:: |
| see dracut.conf5 |
| |
| Configuration in the initramfs |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| _/etc/conf.d/_:: |
| Any files found in _/etc/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. Deprecated, better use |
| /etc/cmdline.d/*.conf. |
| |
| _/etc/cmdline.d/*.conf_:: |
| Can contain additional command line options. |
| |
| AVAILABILITY |
| ------------ |
| The dracut command is part of the dracut package and is available from |
| link:$$https://dracut.wiki.kernel.org$$[https://dracut.wiki.kernel.org] |
| |
| AUTHORS |
| ------- |
| Harald Hoyer |
| |
| Victor Lowther |
| |
| Philippe Seewer |
| |
| Warren Togami |
| |
| Amadeusz Żołnowski |
| |
| Jeremy Katz |
| |
| David Dillow |
| |
| Will Woods |
| |
| SEE ALSO |
| -------- |
| *dracut.cmdline*(7) *dracut.conf*(5) |