mirror of
https://github.com/dracutdevs/dracut.git
synced 2024-10-27 17:55:47 +03:00
c33488feb1
Renamed sosreport to rdsosreport to differ from the sosreport tool on the real root.
493 lines
14 KiB
Plaintext
493 lines
14 KiB
Plaintext
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.
|
||
|
||
EXAMPLE
|
||
-------
|
||
|
||
To create a initramfs image, the most simple command is:
|
||
----
|
||
# dracut
|
||
----
|
||
|
||
This will generate a general purpose initramfs image, with all possible
|
||
functionality resulting of the combination of the installed dracut modules and
|
||
system tools. The image is /boot/initramfs-_++<kernel version>++_.img and
|
||
contains the kernel modules of the currently active kernel with version
|
||
_++<kernel version>++_.
|
||
|
||
If the initramfs image already exists, dracut will display an error message, and
|
||
to overwrite the existing image, you have to use the --force option.
|
||
----
|
||
# dracut --force
|
||
----
|
||
|
||
If you want to specify another filename for the resulting image you would issue
|
||
a command like:
|
||
----
|
||
# dracut foobar.img
|
||
----
|
||
|
||
To generate an image for a specific kernel version, the command would be:
|
||
----
|
||
# dracut foobar.img 2.6.40-1.rc5.f20
|
||
----
|
||
|
||
A shortcut to generate the image at the default location for a specific kernel
|
||
version is:
|
||
----
|
||
# dracut --kver 2.6.40-1.rc5.f20
|
||
----
|
||
|
||
If you want to create lighter, smaller initramfs images, you may want to specify
|
||
the --hostonly or -H option. Using this option, the resulting image will
|
||
contain only those dracut modules, kernel modules and filesystems, which are
|
||
needed to boot this specific machine. This has the drawback, that you can't put
|
||
the disk on another controller or machine, and that you can't switch to another
|
||
root filesystem, without recreating the initramfs image. The usage of the
|
||
--hostonly option is only for experts and you will have to keep the broken
|
||
pieces. At least keep a copy of a general purpose image (and corresponding
|
||
kernel) as a fallback to rescue your system.
|
||
|
||
|
||
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
|
||
|
||
**--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
|
||
|
||
**--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.
|
||
|
||
**-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
|
||
|
||
**--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>_"::
|
||
Mount _<device>_ on _<mountpoint>_ with _<filesystem type>_ and _<filesystem
|
||
options>_ in the initramfs
|
||
|
||
**--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" ...
|
||
----
|
||
===============================
|
||
|
||
**--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"
|
||
====
|
||
|
||
**--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)
|