|
Harald Hoyer |
e7efcf |
From b6c8976811caec5cc352bb8f27cc6f53202ee9be Mon Sep 17 00:00:00 2001
|
|
Harald Hoyer |
e7efcf |
From: Harald Hoyer <harald@redhat.com>
|
|
Harald Hoyer |
e7efcf |
Date: Tue, 8 Oct 2013 14:59:47 +0200
|
|
Harald Hoyer |
e7efcf |
Subject: [PATCH] Doc: cleanup, extend and split and reuse
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
---
|
|
Harald Hoyer |
e7efcf |
Makefile | 8 +-
|
|
Harald Hoyer |
e7efcf |
dracut.8.asc | 61 +---
|
|
Harald Hoyer |
e7efcf |
dracut.asc | 888 +--------------------------------------------------
|
|
Harald Hoyer |
e7efcf |
dracut.cmdline.7.asc | 414 ++++++++++++++----------
|
|
Harald Hoyer |
e7efcf |
dracut.css | 434 +------------------------
|
|
Harald Hoyer |
e7efcf |
dracut.modules.7.asc | 293 +++++++++++++++++
|
|
Harald Hoyer |
e7efcf |
dracut.spec | 1 +
|
|
Harald Hoyer |
e7efcf |
dracut.usage.asc | 526 ++++++++++++++++++++++++++++++
|
|
Harald Hoyer |
e7efcf |
8 files changed, 1084 insertions(+), 1541 deletions(-)
|
|
Harald Hoyer |
e7efcf |
create mode 100644 dracut.modules.7.asc
|
|
Harald Hoyer |
e7efcf |
create mode 100644 dracut.usage.asc
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
diff --git a/Makefile b/Makefile
|
|
Harald Hoyer |
e7efcf |
index 124a41b..e7da948 100644
|
|
Harald Hoyer |
e7efcf |
--- a/Makefile
|
|
Harald Hoyer |
e7efcf |
+++ b/Makefile
|
|
Harald Hoyer |
e7efcf |
@@ -21,7 +21,8 @@ man1pages = lsinitrd.1
|
|
Harald Hoyer |
e7efcf |
man5pages = dracut.conf.5
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
man7pages = dracut.cmdline.7 \
|
|
Harald Hoyer |
e7efcf |
- dracut.bootup.7
|
|
Harald Hoyer |
e7efcf |
+ dracut.bootup.7 \
|
|
Harald Hoyer |
e7efcf |
+ dracut.modules.7
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
man8pages = dracut.8 \
|
|
Harald Hoyer |
e7efcf |
dracut-catimages.8 \
|
|
Harald Hoyer |
e7efcf |
@@ -37,7 +38,6 @@ man8pages = dracut.8 \
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
manpages = $(man1pages) $(man5pages) $(man7pages) $(man8pages)
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
.PHONY: install clean archive rpm testimage test all check AUTHORS doc dracut-version.sh
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
all: dracut-version.sh dracut-install
|
|
Harald Hoyer |
e7efcf |
@@ -76,7 +76,9 @@ endif
|
|
Harald Hoyer |
e7efcf |
%.xml: %.asc
|
|
Harald Hoyer |
e7efcf |
asciidoc -d manpage -b docbook -o $@ $<
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-dracut.html: dracut.asc $(manpages) dracut.css
|
|
Harald Hoyer |
e7efcf |
+dracut.8: dracut.usage.asc dracut.8.asc
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+dracut.html: dracut.asc $(manpages) dracut.css dracut.usage.asc
|
|
Harald Hoyer |
e7efcf |
asciidoc -a numbered -d book -b docbook -o dracut.xml dracut.asc
|
|
Harald Hoyer |
e7efcf |
xsltproc -o dracut.html --xinclude -nonet \
|
|
Harald Hoyer |
e7efcf |
--stringparam custom.css.source dracut.css \
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.8.asc b/dracut.8.asc
|
|
Harald Hoyer |
e7efcf |
index 76fc75c..584514c 100644
|
|
Harald Hoyer |
e7efcf |
--- a/dracut.8.asc
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.8.asc
|
|
Harald Hoyer |
e7efcf |
@@ -10,7 +10,7 @@ dracut - low-level tool for generating an initramfs image
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
SYNOPSIS
|
|
Harald Hoyer |
e7efcf |
--------
|
|
Harald Hoyer |
e7efcf |
-*dracut* ['OPTION...'] [<image> [_<kernel version>_]]
|
|
Harald Hoyer |
e7efcf |
+*dracut* [__OPTION...__] [__<image>__ [__<kernel version>__]]
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
DESCRIPTION
|
|
Harald Hoyer |
e7efcf |
-----------
|
|
Harald Hoyer |
e7efcf |
@@ -37,53 +37,10 @@ Additional debugging info can be produced by adding **rd.debug** to the kernel c
|
|
Harald Hoyer |
e7efcf |
_/run/initramfs/rdsosreport.txt_ contains all logs and the output of some tools.
|
|
Harald Hoyer |
e7efcf |
It should be attached to any report about dracut problems.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-EXAMPLE
|
|
Harald Hoyer |
e7efcf |
--------
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To create a initramfs image, the most simple command is:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This will generate a general purpose initramfs image, with all possible
|
|
Harald Hoyer |
e7efcf |
-functionality resulting of the combination of the installed dracut modules and
|
|
Harald Hoyer |
e7efcf |
-system tools. The image is /boot/initramfs-_++<kernel version>++_.img and
|
|
Harald Hoyer |
e7efcf |
-contains the kernel modules of the currently active kernel with version
|
|
Harald Hoyer |
e7efcf |
-_++<kernel version>++_.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If the initramfs image already exists, dracut will display an error message, and
|
|
Harald Hoyer |
e7efcf |
-to overwrite the existing image, you have to use the --force option.
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --force
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If you want to specify another filename for the resulting image you would issue
|
|
Harald Hoyer |
e7efcf |
-a command like:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut foobar.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To generate an image for a specific kernel version, the command would be:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut foobar.img 2.6.40-1.rc5.f20
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-A shortcut to generate the image at the default location for a specific kernel
|
|
Harald Hoyer |
e7efcf |
-version is:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --kver 2.6.40-1.rc5.f20
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If you want to create lighter, smaller initramfs images, you may want to specify
|
|
Harald Hoyer |
e7efcf |
-the --hostonly or -H option. Using this option, the resulting image will
|
|
Harald Hoyer |
e7efcf |
-contain only those dracut modules, kernel modules and filesystems, which are
|
|
Harald Hoyer |
e7efcf |
-needed to boot this specific machine. This has the drawback, that you can't put
|
|
Harald Hoyer |
e7efcf |
-the disk on another controller or machine, and that you can't switch to another
|
|
Harald Hoyer |
e7efcf |
-root filesystem, without recreating the initramfs image. The usage of the
|
|
Harald Hoyer |
e7efcf |
---hostonly option is only for experts and you will have to keep the broken
|
|
Harald Hoyer |
e7efcf |
-pieces. At least keep a copy of a general purpose image (and corresponding
|
|
Harald Hoyer |
e7efcf |
-kernel) as a fallback to rescue your system.
|
|
Harald Hoyer |
e7efcf |
+USAGE
|
|
Harald Hoyer |
e7efcf |
+-----
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
+include::dracut.usage.asc[]
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
OPTIONS
|
|
Harald Hoyer |
e7efcf |
-------
|
|
Harald Hoyer |
e7efcf |
@@ -337,7 +294,7 @@ provide a valid _/etc/fstab_.
|
|
Harald Hoyer |
e7efcf |
**-N, --no-hostonly**::
|
|
Harald Hoyer |
e7efcf |
Disable Host-Only mode
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**--persistent-policy** _<policy>_::
|
|
Harald Hoyer |
e7efcf |
+**--persistent-policy** _<policy>_::
|
|
Harald Hoyer |
e7efcf |
Use _<policy>_ to address disks and partitions.
|
|
Harald Hoyer |
e7efcf |
_<policy>_ can be any directory name found in /dev/disk.
|
|
Harald Hoyer |
e7efcf |
E.g. "by-uuid", "by-label"
|
|
Harald Hoyer |
e7efcf |
@@ -345,7 +302,7 @@ provide a valid _/etc/fstab_.
|
|
Harald Hoyer |
e7efcf |
**--fstab**::
|
|
Harald Hoyer |
e7efcf |
Use _/etc/fstab_ instead of _/proc/self/mountinfo_.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**--add-fstab** _<filename>_ ::
|
|
Harald Hoyer |
e7efcf |
+**--add-fstab** _<filename>_::
|
|
Harald Hoyer |
e7efcf |
Add entries of _<filename>_ to the initramfs /etc/fstab.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**--mount** "_<device>_ _<mountpoint>_ _<filesystem type>_ _<filesystem options>_"::
|
|
Harald Hoyer |
e7efcf |
@@ -358,13 +315,13 @@ provide a valid _/etc/fstab_.
|
|
Harald Hoyer |
e7efcf |
LVM or an encrypted partition.
|
|
Harald Hoyer |
e7efcf |
[NB --device can be used for compatibility with earlier releases]
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**-i, --include** _<SOURCE>_ _<TARGET>_::
|
|
Harald Hoyer |
e7efcf |
+**-i, --include** _<SOURCE>_ _<TARGET>_::
|
|
Harald Hoyer |
e7efcf |
include the files in the SOURCE directory into the
|
|
Harald Hoyer |
e7efcf |
TARGET directory in the final initramfs. If SOURCE is a file, it will be
|
|
Harald Hoyer |
e7efcf |
installed to TARGET in the final initramfs. This parameter can be specified
|
|
Harald Hoyer |
e7efcf |
multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**-I, --install** _<file list>_::
|
|
Harald Hoyer |
e7efcf |
+**-I, --install** _<file list>_::
|
|
Harald Hoyer |
e7efcf |
install the space separated list of files into the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
[NOTE]
|
|
Harald Hoyer |
e7efcf |
@@ -481,7 +438,7 @@ _/etc/conf.d/_::
|
|
Harald Hoyer |
e7efcf |
_/etc/cmdline_::
|
|
Harald Hoyer |
e7efcf |
Can contain additional command line options. Deprecated, better use /etc/cmdline.d/*.conf.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-_/etc/cmdline.d/*.conf::
|
|
Harald Hoyer |
e7efcf |
+_/etc/cmdline.d/*.conf_::
|
|
Harald Hoyer |
e7efcf |
Can contain additional command line options.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
AVAILABILITY
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.asc b/dracut.asc
|
|
Harald Hoyer |
e7efcf |
index c011658..031b201 100644
|
|
Harald Hoyer |
e7efcf |
--- a/dracut.asc
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.asc
|
|
Harald Hoyer |
e7efcf |
@@ -1,7 +1,7 @@
|
|
Harald Hoyer |
e7efcf |
dracut
|
|
Harald Hoyer |
e7efcf |
======
|
|
Harald Hoyer |
e7efcf |
Harald Hoyer <harald@redhat.com>
|
|
Harald Hoyer |
e7efcf |
-v2.0, March 2011
|
|
Harald Hoyer |
e7efcf |
+v3.0, October 2013
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
:language: bash
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -145,885 +145,10 @@ This ensures, that all devices are disassembled and unmounted cleanly.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
= User Manual
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-== Creating an initramfs Image
|
|
Harald Hoyer |
e7efcf |
-To create a initramfs image, the most simple command is:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This will generate a general purpose initramfs image, with all possible
|
|
Harald Hoyer |
e7efcf |
-functionality resulting of the combination of the installed dracut modules and
|
|
Harald Hoyer |
e7efcf |
-system tools. The image is /boot/initramfs-_++<kernel version>++_.img and
|
|
Harald Hoyer |
e7efcf |
-contains the kernel modules of the currently active kernel with version
|
|
Harald Hoyer |
e7efcf |
-_++<kernel version>++_.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If the initramfs image already exists, dracut will display an error message, and
|
|
Harald Hoyer |
e7efcf |
-to overwrite the existing image, you have to use the --force option.
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --force
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If you want to specify another filename for the resulting image you would issue
|
|
Harald Hoyer |
e7efcf |
-a command like:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut foobar.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To generate an image for a specific kernel version, the command would be:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut foobar.img 2.6.40-1.rc5.f20
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-A shortcut to generate the image at the default location for a specific kernel
|
|
Harald Hoyer |
e7efcf |
-version is:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --kver 2.6.40-1.rc5.f20
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If you want to create lighter, smaller initramfs images, you may want to specify
|
|
Harald Hoyer |
e7efcf |
-the --host-only or -H option. Using this option, the resulting image will
|
|
Harald Hoyer |
e7efcf |
-contain only those dracut modules, kernel modules and filesystems, which are
|
|
Harald Hoyer |
e7efcf |
-needed to boot this specific machine. This has the drawback, that you can't put
|
|
Harald Hoyer |
e7efcf |
-the disk on another controller or machine, and that you can't switch to another
|
|
Harald Hoyer |
e7efcf |
-root filesystem, without recreating the initramfs image. The usage of the
|
|
Harald Hoyer |
e7efcf |
---host-only option is only for experts and you will have to keep the broken
|
|
Harald Hoyer |
e7efcf |
-pieces. At least keep a copy of a general purpose image (and corresponding
|
|
Harald Hoyer |
e7efcf |
-kernel) as a fallback to rescue your system.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Inspecting the Contents
|
|
Harald Hoyer |
e7efcf |
-To see the contents of the image created by dracut, you can use the lsinitrd tool.
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# lsinitrd /boot/initramfs-$(uname -r).img | less
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To display the contents of a file in the initramfs also use the lsinitrd tool:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# lsinitrd /boot/initramfs-$(uname -r).img /etc/ld.so.conf
|
|
Harald Hoyer |
e7efcf |
-include ld.so.conf.d/*.conf
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Adding dracut Modules
|
|
Harald Hoyer |
e7efcf |
-Some dracut modules are turned off by default and have to be activated manually.
|
|
Harald Hoyer |
e7efcf |
-You can do this by adding the dracut modules to the configuration file
|
|
Harald Hoyer |
e7efcf |
-_/etc/dracut.conf_ or _/etc/dracut.conf.d/myconf.conf_. See <<dracutconf5>>.
|
|
Harald Hoyer |
e7efcf |
-You can also add dracut modules on the command line
|
|
Harald Hoyer |
e7efcf |
-by using the -a or --add option:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --add bootchart initramfs-bootchart.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To see a list of available dracut modules, use the --list-modules option:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --list-modules
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-or, if you have a dracut version earlier than +008+, issue the command:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# for mod in /usr/lib/dracut/modules.d/*; do echo ${mod##*/??}; done
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Omitting dracut Modules
|
|
Harald Hoyer |
e7efcf |
-Sometimes you don't want a dracut module to be included for reasons of speed,
|
|
Harald Hoyer |
e7efcf |
-size or functionality. To do this, either specify the omit_dracutmodules
|
|
Harald Hoyer |
e7efcf |
-variable in the _dracut.conf_ or _/etc/dracut.conf.d/myconf.conf_ configuration
|
|
Harald Hoyer |
e7efcf |
-file (see <<dracutconf5>>), or use the -o or --omit option
|
|
Harald Hoyer |
e7efcf |
-on the command line:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut -o "multipath lvm" no-multipath-lvm.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Adding Kernel Modules
|
|
Harald Hoyer |
e7efcf |
-If you need a special kernel module in the initramfs, which is not
|
|
Harald Hoyer |
e7efcf |
-automatically picked up by dracut, you have the use the --add-drivers option
|
|
Harald Hoyer |
e7efcf |
-on the command line or the drivers vaiable in the _/etc/dracut.conf_
|
|
Harald Hoyer |
e7efcf |
-or _/etc/dracut.conf.d/myconf.conf_ configuration file (see <<dracutconf5>>):
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --add-drivers mymod initramfs-with-mymod.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-== Boot parameters
|
|
Harald Hoyer |
e7efcf |
-The generated initramfs.img file normally does not contain any system
|
|
Harald Hoyer |
e7efcf |
-configuration files (except for some special exceptions), so the configuration
|
|
Harald Hoyer |
e7efcf |
-has to be done on the kernel command line. With this flexibility, you can easily
|
|
Harald Hoyer |
e7efcf |
-boot from a changed root partition, without the need to recompile the initramfs
|
|
Harald Hoyer |
e7efcf |
-image. So, you could completly change your root partition (move it inside a md
|
|
Harald Hoyer |
e7efcf |
-raid with encryption and LVM on top), as long as you specify the correct
|
|
Harald Hoyer |
e7efcf |
-filesystem LABEL or UUID on the kernel command line for your root device, dracut
|
|
Harald Hoyer |
e7efcf |
-will find it and boot from it.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The kernel command line usually can be configured in _/boot/grub/grub.conf_, if
|
|
Harald Hoyer |
e7efcf |
-grub is your bootloader and it also can be edited in the real boot process in
|
|
Harald Hoyer |
e7efcf |
-the grub menu.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The kernel command line can also be provided by the dhcp server with the
|
|
Harald Hoyer |
e7efcf |
-root-path option. See <<NetworkBoot>>.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-For a full reference of all kernel command line parameters, see <<dracut8>>.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Specifying the root Device
|
|
Harald Hoyer |
e7efcf |
-This is the only option dracut really needs to boot from your root partition.
|
|
Harald Hoyer |
e7efcf |
-Because your root partition can live in various environments, there are a lot of
|
|
Harald Hoyer |
e7efcf |
-formats for the root= option. The most basic one is root=_++
|
|
Harald Hoyer |
e7efcf |
-node>++_:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-root=/dev/sda2
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Because device node names can change, dependent on the drive ordering, you are
|
|
Harald Hoyer |
e7efcf |
-encouraged to use the filesystem identifier (UUID) or filesystem label (LABEL)
|
|
Harald Hoyer |
e7efcf |
-to specify your root partition:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-root=UUID=19e9dda3-5a38-484d-a9b0-fa6b067d0331
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-or
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-root=LABEL=myrootpartitionlabel
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To see all UUIDs or LABELs on your system, do:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# ls -l /dev/disk/by-uuid
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-or
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# ls -l /dev/disk/by-label
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If your root partition is on the network see <<NetworkBoot>>.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Keyboard Settings
|
|
Harald Hoyer |
e7efcf |
-If you have to input passwords for encrypted disk volumes, you might want to set
|
|
Harald Hoyer |
e7efcf |
-the keyboard layout and specify a display font.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-A typical german kernel command would contain:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-vconsole.font=latarcyrheb-sun16 vconsole.keymap=de-latin1-nodeadkeys locale.LANG=de_DE.UTF-8
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Setting these options can override the setting stored on your system, if you use
|
|
Harald Hoyer |
e7efcf |
-a modern init system, like systemd.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-For dracut versions prior to version +008+ the line would look like:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-LANG=de_DE.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=de-latin1-nodeadkeys
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Blacklisting Kernel Modules
|
|
Harald Hoyer |
e7efcf |
-Sometimes it is required to prevent the automatic kernel module loading of a
|
|
Harald Hoyer |
e7efcf |
-specific kernel module. To do this, just add rd.blacklist=_++
|
|
Harald Hoyer |
e7efcf |
-name>++_, with _++<kernel module name>++_ not containing the _.ko_
|
|
Harald Hoyer |
e7efcf |
-suffix, to the kernel command line. For example:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-rd.driver.blacklist=mptsas rd.driver.blacklist=nouveau
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The option can be specified multiple times on the kernel command line.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Speeding up the Boot Process
|
|
Harald Hoyer |
e7efcf |
-If you want to speed up the boot process, you can specify as much information
|
|
Harald Hoyer |
e7efcf |
-for dracut on the kernel command as possible. For example, you can tell dracut,
|
|
Harald Hoyer |
e7efcf |
-that you root partition is not on a LVM volume or not on a raid partition, or
|
|
Harald Hoyer |
e7efcf |
-that it lives inside a specific crypto LUKS encrypted volume. By default, dracut
|
|
Harald Hoyer |
e7efcf |
-searches everywhere. A typical dracut kernel command line for a plain primary or
|
|
Harald Hoyer |
e7efcf |
-logical partition would contain:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-On systems with dracut version prior to +008+ the line would look like:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This turns off every automatic assembly of LVM, MD raids, DM raids and crypto LUKS.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Of course, you could also omit the dracut modules in the initramfs creation
|
|
Harald Hoyer |
e7efcf |
-process, but then you would lose the posibility to turn it on on demand.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[Injecting]]
|
|
Harald Hoyer |
e7efcf |
-=== Injecting custom Files
|
|
Harald Hoyer |
e7efcf |
-To add your own files to the initramfs image, you have several possibilities.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The --include option let you specify a source path and a target path. For example
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --include cmdline-preset /etc/cmdline.d/mycmdline.conf initramfs-cmdline-pre.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-will create an initramfs image, where the file cmdline-preset will be copied
|
|
Harald Hoyer |
e7efcf |
-inside the initramfs to _/etc/cmdline.d/mycmdline.conf_. --include can only be specified once.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# mkdir rd.live.overlay
|
|
Harald Hoyer |
e7efcf |
-# mkdir rd.live.overlay/etc
|
|
Harald Hoyer |
e7efcf |
-# mkdir rd.live.overlay/etc/conf.d
|
|
Harald Hoyer |
e7efcf |
-# mkdir rd.live.overlay/etc/cmdline.d
|
|
Harald Hoyer |
e7efcf |
-# echo "ip=auto" >> rd.live.overlay/etc/cmdline.d/mycmdline.conf
|
|
Harald Hoyer |
e7efcf |
-# echo export FOO=testtest >> rd.live.overlay/etc/conf.d/testvar.conf
|
|
Harald Hoyer |
e7efcf |
-# echo export BAR=testtest >> rd.live.overlay/etc/conf.d/testvar.conf
|
|
Harald Hoyer |
e7efcf |
-# tree rd.live.overlay/
|
|
Harald Hoyer |
e7efcf |
-rd.live.overlay/
|
|
Harald Hoyer |
e7efcf |
-└── etc
|
|
Harald Hoyer |
e7efcf |
- ├── cmdline.d
|
|
Harald Hoyer |
e7efcf |
- │ └── mycmdline.conf
|
|
Harald Hoyer |
e7efcf |
- └── conf.d
|
|
Harald Hoyer |
e7efcf |
- └── testvar.conf
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-# dracut --include rd.live.overlay / initramfs-rd.live.overlay.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This will put the contents of the rd.live.overlay directory into the root of the
|
|
Harald Hoyer |
e7efcf |
-initramfs image.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The --install option let you specify several files, which will get installed in
|
|
Harald Hoyer |
e7efcf |
-the initramfs image at the same location, as they are present on initramfs
|
|
Harald Hoyer |
e7efcf |
-creation time.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut --install 'strace fsck.ext3 ssh' initramfs-dbg.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This will create an initramfs with the strace, fsck.ext3 and ssh executables,
|
|
Harald Hoyer |
e7efcf |
-together with the libraries needed to start those. The --install option can be
|
|
Harald Hoyer |
e7efcf |
-specified multiple times.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[NetworkBoot]]
|
|
Harald Hoyer |
e7efcf |
-== Network Boot
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If your root partition is on a network drive, you have to have the network
|
|
Harald Hoyer |
e7efcf |
-dracut modules installed to create a network aware initramfs image.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-On a Red Hat Enterprise Linux or Fedora system, this means, you have to install
|
|
Harald Hoyer |
e7efcf |
-the _dracut-network_ rpm package:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# yum install dracut-network
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The resulting initramfs image can be served by a boot manager residing on your
|
|
Harald Hoyer |
e7efcf |
-local hard drive or it can be served by a PXE/TFTP server.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-How to setup your PXE/TFTP server can be found in the
|
|
Harald Hoyer |
e7efcf |
-http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/[Red
|
|
Harald Hoyer |
e7efcf |
-Hat Enterprise Linux Storage Administration Guide].
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If you specify ip=auto on the kernel command line, then dracut asks a dhcp
|
|
Harald Hoyer |
e7efcf |
-server about the ip adress for the machine. The dhcp server can also serve an
|
|
Harald Hoyer |
e7efcf |
-additional root-path, which will set the root device for dracut. With this
|
|
Harald Hoyer |
e7efcf |
-mechanism, you have static configuration on your client machine and a
|
|
Harald Hoyer |
e7efcf |
-centralized boot configuration on your TFTP/DHCP server. If you can't pass a
|
|
Harald Hoyer |
e7efcf |
-kernel command line, then you can inject _/etc/cmdline.d/mycmdline.conf_, with a method described
|
|
Harald Hoyer |
e7efcf |
-in <<Injecting>>.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Reducing the Image Size
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To reduce the size of the initramfs, you should create it with by ommitting all
|
|
Harald Hoyer |
e7efcf |
-dracut modules, which you know, you don't need to boot the machine.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-You can also specify the exact dracut and kernel modules to produce a very tiny
|
|
Harald Hoyer |
e7efcf |
-initramfs image.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-For example for a NFS image, you would do:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut -m "nfs network base" initramfs-nfs-only.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Then you would boot from this image with your target machine and reduce the size
|
|
Harald Hoyer |
e7efcf |
-once more by creating it on the target machine with the --host-only option:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dracut -m "nfs network base" --host-only initramfs-nfs-host-only.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This will reduce the size of the initramfs image significantly.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== NFS Root Device
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== iSCSI Root Device
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== FCoE Root Device
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-== Troubleshooting
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If the boot process does not succeed, you have several options to debug the
|
|
Harald Hoyer |
e7efcf |
-situation. Some of the basic operations are covered here. For more information
|
|
Harald Hoyer |
e7efcf |
-you should also visit:
|
|
Harald Hoyer |
e7efcf |
-http://fedoraproject.org/wiki/How_to_debug_Dracut_problems
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[identifying-your-problem-area]]
|
|
Harald Hoyer |
e7efcf |
-=== Identifying your problem area
|
|
Harald Hoyer |
e7efcf |
-. Remove ''rhgb'' and ''quiet'' from the kernel command line
|
|
Harald Hoyer |
e7efcf |
-. Add ''rd.shell'' to the kernel command line. This will present a shell should
|
|
Harald Hoyer |
e7efcf |
-dracut be unable to locate your root device
|
|
Harald Hoyer |
e7efcf |
-. Add ''rd.shell rd.debug log_buf_len=1M'' to the kernel command line so that
|
|
Harald Hoyer |
e7efcf |
-dracut shell commands are printed as they are executed
|
|
Harald Hoyer |
e7efcf |
-. With dracut >= 002-11, you can inspect the rd.debug output with:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# less /run/initramfs/init.log
|
|
Harald Hoyer |
e7efcf |
-# dmesg | less
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-. With dracut >= 022 and systemd, you can inspect the rd.debug output with:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# journalctl -ab
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-. With dracut >= 025 the file /run/initramfs/rdsosreport.txt is generated, which contains all the logs and the output of all significant tools, which are mentioned later.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-If you want to save that output, simply mount /boot by hand or insert an USB stick and mount that.
|
|
Harald Hoyer |
e7efcf |
-Then you can store the output for later inspection.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[information-to-include-in-your-report]]
|
|
Harald Hoyer |
e7efcf |
-=== Information to include in your report
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[all-bug-reports]]
|
|
Harald Hoyer |
e7efcf |
-==== All bug reports
|
|
Harald Hoyer |
e7efcf |
-In all cases, the following should be mentioned and attached to your bug report:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-* The exact kernel command-line used. Typically from the bootloader
|
|
Harald Hoyer |
e7efcf |
-configuration file (e.g. _/etc/grub.conf_) or from _/proc/cmdline_.
|
|
Harald Hoyer |
e7efcf |
-* A copy of your disk partition information from _/etc/fstab_, which might be
|
|
Harald Hoyer |
e7efcf |
-obtained booting an old working initramfs or a rescue medium.
|
|
Harald Hoyer |
e7efcf |
-* A device listing from device-mapper. This can be obtained by running the
|
|
Harald Hoyer |
e7efcf |
-command
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dmsetup ls --tree
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-* A list of block device attributes. This can be obtained by running the commands:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# blkid -p
|
|
Harald Hoyer |
e7efcf |
-# blkid -p -o udev
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-* Turn on dracut debugging (see _the 'debugging dracut' section_), and attach
|
|
Harald Hoyer |
e7efcf |
-all relevant information from the boot log. This can be obtained by running the
|
|
Harald Hoyer |
e7efcf |
-command
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# dmesg|grep dracut
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-* If you use a dracut configuration file, please include _/etc/dracut.conf_ and
|
|
Harald Hoyer |
e7efcf |
-all files in _/etc/dracut.conf.d/*.conf_
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[logical-volume-management-related-problems]]
|
|
Harald Hoyer |
e7efcf |
-==== Logical Volume Management related problems
|
|
Harald Hoyer |
e7efcf |
-As well as the information from <<all-bug-reports>> include the following
|
|
Harald Hoyer |
e7efcf |
-information:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-* Include physical volume information by running the command:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# lvm pvdisplay
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-* Include volume group information by running the command:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# lvm vgdisplay
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-* Include logical volume information by running the command:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# lvm lvdisplay
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[software-raid-related-problems]]
|
|
Harald Hoyer |
e7efcf |
-==== Software RAID related problems
|
|
Harald Hoyer |
e7efcf |
-As well as the information from <<all-bug-reports>>, include the following
|
|
Harald Hoyer |
e7efcf |
-information:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-* If using software RAID disk partitions, please include the output of
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# cat /proc/mdstat
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[network-root-device-related-problems]]
|
|
Harald Hoyer |
e7efcf |
-==== Network root device related problems
|
|
Harald Hoyer |
e7efcf |
-This section details information to include when experiencing problems on a
|
|
Harald Hoyer |
e7efcf |
-system whose root device is located on a network attached volume (e.g. iSCSI,
|
|
Harald Hoyer |
e7efcf |
-NFS or NBD). As well as the information from <<all-bug-reports>>, include the
|
|
Harald Hoyer |
e7efcf |
-following information:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-* Please include the output of
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# /sbin/ifup <interfacename>
|
|
Harald Hoyer |
e7efcf |
-# ip addr show
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[debugging-dracut]]
|
|
Harald Hoyer |
e7efcf |
-=== Debugging dracut
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[configure-a-serial-console]]
|
|
Harald Hoyer |
e7efcf |
-==== Configure a serial console
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Successfully debugging dracut will require some form of console
|
|
Harald Hoyer |
e7efcf |
-logging during the system boot. This section documents configuring a
|
|
Harald Hoyer |
e7efcf |
-serial console connection to record boot messages.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-. First, enable serial console output for both the kernel and the bootloader.
|
|
Harald Hoyer |
e7efcf |
-. Open the file _/etc/grub.conf_ for editing. Below the line ''timeout=5'', add
|
|
Harald Hoyer |
e7efcf |
-the following:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-serial --unit=0 --speed=9600
|
|
Harald Hoyer |
e7efcf |
-terminal --timeout=5 serial console
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. Also in _/etc/grub.conf_, add the following boot arguemnts to the ''kernel''
|
|
Harald Hoyer |
e7efcf |
-line:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-console=tty0 console=ttyS0,9600
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. When finished, the _/etc/grub.conf_ file should look similar to the example
|
|
Harald Hoyer |
e7efcf |
-below.
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-default=0
|
|
Harald Hoyer |
e7efcf |
-timeout=5
|
|
Harald Hoyer |
e7efcf |
-serial --unit=0 --speed=9600
|
|
Harald Hoyer |
e7efcf |
-terminal --timeout=5 serial console
|
|
Harald Hoyer |
e7efcf |
-title Fedora (2.6.29.5-191.fc11.x86_64)
|
|
Harald Hoyer |
e7efcf |
- root (hd0,0)
|
|
Harald Hoyer |
e7efcf |
- kernel /vmlinuz-2.6.29.5-191.fc11.x86_64 ro root=/dev/mapper/vg_uc1-lv_root console=tty0 console=ttyS0,9600
|
|
Harald Hoyer |
e7efcf |
- initrd /dracut-2.6.29.5-191.fc11.x86_64.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. More detailed information on how to configure the kernel for console output
|
|
Harald Hoyer |
e7efcf |
-can be found at
|
|
Harald Hoyer |
e7efcf |
-http://www.faqs.org/docs/Linux-HOWTO/Remote-Serial-Console-HOWTO.html#CONFIGURE-KERNEL.
|
|
Harald Hoyer |
e7efcf |
-. Redirecting non-interactive output
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
---
|
|
Harald Hoyer |
e7efcf |
-NOTE: You can redirect all non-interactive output to _/dev/kmsg_ and the kernel
|
|
Harald Hoyer |
e7efcf |
-will put it out on the console when it reaches the kernel buffer by doing
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# exec >/dev/kmsg 2>&1
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
---
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[using-the-dracut-shell]]
|
|
Harald Hoyer |
e7efcf |
-==== Using the dracut shell
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-dracut offers a shell for interactive debugging in the event dracut fails to
|
|
Harald Hoyer |
e7efcf |
-locate your root filesystem. To enable the shell:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-. Add the boot parameter ''rd.shell'' to your bootloader configuration file
|
|
Harald Hoyer |
e7efcf |
-(e.g. _/etc/grub.conf_)
|
|
Harald Hoyer |
e7efcf |
-. Remove the boot arguments ''rhgb'' and ''quiet''
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-A sample _/etc/grub.conf_ bootloader configuration file is listed below.
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-default=0
|
|
Harald Hoyer |
e7efcf |
-timeout=5
|
|
Harald Hoyer |
e7efcf |
-serial --unit=0 --speed=9600
|
|
Harald Hoyer |
e7efcf |
-terminal --timeout=5 serial console
|
|
Harald Hoyer |
e7efcf |
-title Fedora (2.6.29.5-191.fc11.x86_64)
|
|
Harald Hoyer |
e7efcf |
- root (hd0,0)
|
|
Harald Hoyer |
e7efcf |
- kernel /vmlinuz-2.6.29.5-191.fc11.x86_64 ro root=/dev/mapper/vg_uc1-lv_root console=tty0 rd.shell
|
|
Harald Hoyer |
e7efcf |
- initrd /dracut-2.6.29.5-191.fc11.x86_64.img
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. If system boot fails, you will be dropped into a shell as seen in the example below.
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-No root device found
|
|
Harald Hoyer |
e7efcf |
-Dropping to debug shell.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-#
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. Use this shell prompt to gather the information requested above (see <<all-bug-reports>>).
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[accessing-the-root-volume-from-the-dracut-shell]]
|
|
Harald Hoyer |
e7efcf |
-==== Accessing the root volume from the dracut shell
|
|
Harald Hoyer |
e7efcf |
-From the dracut debug shell, you can manually perform the task of locating and
|
|
Harald Hoyer |
e7efcf |
-preparing your root volume for boot. The required steps will depend on how your
|
|
Harald Hoyer |
e7efcf |
-root volume is configured. Common scenarios include:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-* A block device (e.g. _/dev/sda7_)
|
|
Harald Hoyer |
e7efcf |
-* A LVM logical volume (e.g. _/dev/VolGroup00/LogVol00_)
|
|
Harald Hoyer |
e7efcf |
-* An encrypted device (e.g. _/dev/mapper/luks-4d5972ea-901c-4584-bd75-1da802417d83_)
|
|
Harald Hoyer |
e7efcf |
-* A network attached device (e.g. netroot=iscsi:@192.168.0.4::3260::iqn.2009-02.org.fedoraproject:for.all)
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The exact method for locating and preparing will vary. However, to continue with
|
|
Harald Hoyer |
e7efcf |
-a successful boot, the objective is to locate your root volume and create a
|
|
Harald Hoyer |
e7efcf |
-symlink _/dev/root_ which points to the file system. For example, the following
|
|
Harald Hoyer |
e7efcf |
-example demonstrates accessing and booting a root volume that is an encrypted
|
|
Harald Hoyer |
e7efcf |
-LVM Logical volume.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-. Inspect your partitions using parted
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# parted /dev/sda -s p
|
|
Harald Hoyer |
e7efcf |
-Model: ATA HTS541060G9AT00 (scsi)
|
|
Harald Hoyer |
e7efcf |
-Disk /dev/sda: 60.0GB
|
|
Harald Hoyer |
e7efcf |
-Sector size (logical/physical): 512B/512B
|
|
Harald Hoyer |
e7efcf |
-Partition Table: msdos
|
|
Harald Hoyer |
e7efcf |
-Number Start End Size Type File system Flags
|
|
Harald Hoyer |
e7efcf |
-1 32.3kB 10.8GB 107MB primary ext4 boot
|
|
Harald Hoyer |
e7efcf |
-2 10.8GB 55.6GB 44.7GB logical lvm
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. You recall that your root volume was a LVM logical volume. Scan and activate
|
|
Harald Hoyer |
e7efcf |
-any logical volumes.
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# lvm vgscan
|
|
Harald Hoyer |
e7efcf |
-# lvm vgchange -ay
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. You should see any logical volumes now using the command blkid:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# blkid
|
|
Harald Hoyer |
e7efcf |
-/dev/sda1: UUID="3de247f3-5de4-4a44-afc5-1fe179750cf7" TYPE="ext4"
|
|
Harald Hoyer |
e7efcf |
-/dev/sda2: UUID="Ek4dQw-cOtq-5MJu-OGRF-xz5k-O2l8-wdDj0I" TYPE="LVM2_member"
|
|
Harald Hoyer |
e7efcf |
-/dev/mapper/linux-root: UUID="def0269e-424b-4752-acf3-1077bf96ad2c" TYPE="crypto_LUKS"
|
|
Harald Hoyer |
e7efcf |
-/dev/mapper/linux-home: UUID="c69127c1-f153-4ea2-b58e-4cbfa9257c5e" TYPE="ext3"
|
|
Harald Hoyer |
e7efcf |
-/dev/mapper/linux-swap: UUID="47b4d329-975c-4c08-b218-f9c9bf3635f1" TYPE="swap"
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. From the output above, you recall that your root volume exists on an encrypted
|
|
Harald Hoyer |
e7efcf |
-block device. Following the guidance disk encryption guidance from the
|
|
Harald Hoyer |
e7efcf |
-Installation Guide, you unlock your encrypted root volume.
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# UUID=$(cryptsetup luksUUID /dev/mapper/linux-root)
|
|
Harald Hoyer |
e7efcf |
-# cryptsetup luksOpen /dev/mapper/linux-root luks-$UUID
|
|
Harald Hoyer |
e7efcf |
-Enter passphrase for /dev/mapper/linux-root:
|
|
Harald Hoyer |
e7efcf |
-Key slot 0 unlocked.
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. Next, make a symbolic link to the unlocked root volume
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# ln -s /dev/mapper/luks-$UUID /dev/root
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-. With the root volume available, you may continue booting the system by exiting
|
|
Harald Hoyer |
e7efcf |
-the dracut shell
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# exit
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[additional-dracut-boot-parameters]]
|
|
Harald Hoyer |
e7efcf |
-==== Additional dracut boot parameters
|
|
Harald Hoyer |
e7efcf |
-For more debugging options, see <<dracutkerneldebug>> in <<dracutcmdline7>>.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[debugging-dracut-on-shutdown]]
|
|
Harald Hoyer |
e7efcf |
-==== Debugging dracut on shutdown
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To debug the shutdown sequence on systemd systems, you can _rd.break_
|
|
Harald Hoyer |
e7efcf |
-on _pre-shutdown_ or _shutdown_.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To do this from an already booted system:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-# mkdir -p /run/initramfs/etc/cmdline.d
|
|
Harald Hoyer |
e7efcf |
-# echo "rd.break=pre-shutdown" > /run/initramfs/etc/cmdline.d/debug.conf
|
|
Harald Hoyer |
e7efcf |
-# touch /run/initramfs/.need_shutdown
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This will give you a dracut shell after the system pivot'ed back in the initramfs.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-= Developer Manual
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-== dracut Components
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-dracut uses a modular system to build and extend the initramfs image. All
|
|
Harald Hoyer |
e7efcf |
-modules are located in _/usr/lib/dracut/modules.d_ or in _<git-src>/modules.d_.
|
|
Harald Hoyer |
e7efcf |
-The most basic dracut module is _99base_. In _99base_ the initial shell script
|
|
Harald Hoyer |
e7efcf |
-init is defined, which gets run by the kernel after initramfs loading. Although
|
|
Harald Hoyer |
e7efcf |
-you can replace init with your own version of _99base_, this is not encouraged.
|
|
Harald Hoyer |
e7efcf |
-Instead you should use, if possible, the hooks of dracut. All hooks, and the
|
|
Harald Hoyer |
e7efcf |
-point of time in which they are executed, are described in <<stages>>.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The main script, which creates the initramfs is dracut itsself. It parses all
|
|
Harald Hoyer |
e7efcf |
-arguments and sets up the directory, in which everything is installed. It then
|
|
Harald Hoyer |
e7efcf |
-executes all check, install, installkernel scripts found in the modules, which
|
|
Harald Hoyer |
e7efcf |
-are to be processed. After everything is installed, the install directory is
|
|
Harald Hoyer |
e7efcf |
-archived and compressed to the final initramfs image. All helper functions used
|
|
Harald Hoyer |
e7efcf |
-by check, install and installkernel are found in in the file _dracut-functions_.
|
|
Harald Hoyer |
e7efcf |
-These shell functions are available to all module installer (install,
|
|
Harald Hoyer |
e7efcf |
-installkernel) scripts, without the need to source _dracut-functions_.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-A module can check the preconditions for install and installkernel with the
|
|
Harald Hoyer |
e7efcf |
-check script. Also dependencies can be expressed with check. If a module passed
|
|
Harald Hoyer |
e7efcf |
-check, install and installkernel will be called to install all of the necessary
|
|
Harald Hoyer |
e7efcf |
-files for the module. To split between kernel and non-kernel parts of the
|
|
Harald Hoyer |
e7efcf |
-installation, all kernel module related parts have to be in installkernel. All
|
|
Harald Hoyer |
e7efcf |
-other files found in a module directory are module specific and mostly are hook
|
|
Harald Hoyer |
e7efcf |
-scripts and udev rules.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[[stages]]
|
|
Harald Hoyer |
e7efcf |
-== Boot Process Stages
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-dracut modules can insert custom script at various points, to control the boot
|
|
Harald Hoyer |
e7efcf |
-process.
|
|
Harald Hoyer |
e7efcf |
-These hooks are plain directories containing shell scripts ending with ".sh",
|
|
Harald Hoyer |
e7efcf |
-which are sourced by init.
|
|
Harald Hoyer |
e7efcf |
-Common used functions are in _dracut-lib.sh_, which can be sourced by any script.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: cmdline
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The _cmdline_ hook is a place to insert scripts to parse the kernel command line
|
|
Harald Hoyer |
e7efcf |
-and prepare the later actions, like setting up udev rules and configuration
|
|
Harald Hoyer |
e7efcf |
-files.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-In this hook the most important environment variable is defined: root. The
|
|
Harald Hoyer |
e7efcf |
-second one is rootok, which indicates, that a module claimed to be able to parse
|
|
Harald Hoyer |
e7efcf |
-the root defined. So for example, **root=**__iscsi:....__ will be claimed by the
|
|
Harald Hoyer |
e7efcf |
-iscsi dracut module, which then sets rootok.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: pre-udev
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hook is executed right after the cmdline hook and a check if root and
|
|
Harald Hoyer |
e7efcf |
-rootok were set. Here modules can take action with the final root, and before
|
|
Harald Hoyer |
e7efcf |
-udev has been run.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Start Udev
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Now udev is started and the logging for udev is setup.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: pre-trigger
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-In this hook, you can set udev environment variables with **udevadm control
|
|
Harald Hoyer |
e7efcf |
---property=KEY=_value_** or control the further execution of udev with
|
|
Harald Hoyer |
e7efcf |
-udevadm.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Trigger Udev
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-udev is triggered by calling udevadm trigger, which sends add events for all
|
|
Harald Hoyer |
e7efcf |
-devices and subsystems.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Main Loop
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-In the main loop of dracut loops until udev has settled and
|
|
Harald Hoyer |
e7efcf |
-all scripts in _initqueue/finished_ returned true.
|
|
Harald Hoyer |
e7efcf |
-In this loop there are three hooks, where scripts can be inserted
|
|
Harald Hoyer |
e7efcf |
-by calling /sbin/initqueue.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-==== Initqueue
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hook gets executed every time a script is inserted here, regardless of the
|
|
Harald Hoyer |
e7efcf |
-udev state.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-==== Initqueue settled
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hooks (initqueue/settled) gets executed every time udev has settled.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-==== Initqueue timeout
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hooks (initqueue/timeout) gets executed, when the main loop counter becomes half of the
|
|
Harald Hoyer |
e7efcf |
-rd.retry counter.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-==== Initqueue finished
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hook (initqueue/finished) is called after udev has settled and
|
|
Harald Hoyer |
e7efcf |
-if all scripts herein return 0 the main loop will be ended.
|
|
Harald Hoyer |
e7efcf |
-Abritary scripts can be added here, to loop in the
|
|
Harald Hoyer |
e7efcf |
-initqueue until something happens, which a dracut module wants to wait for.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: pre-mount
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Before the root device is mounted all scripts in the hook pre-mount are
|
|
Harald Hoyer |
e7efcf |
-executed. In some cases (e.g. NFS) the real root device is already mounted,
|
|
Harald Hoyer |
e7efcf |
-though.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: mount
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hook is mainly to mount the real root device.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: pre-pivot
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hook is called before cleanup hook, This is a good place for
|
|
Harald Hoyer |
e7efcf |
-actions other than cleanups which need to be called before pivot.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Hook: cleanup
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-This hook is the last hook and is called before init finally switches root to
|
|
Harald Hoyer |
e7efcf |
-the real root device. This is a good place to clean up and kill processes not
|
|
Harald Hoyer |
e7efcf |
-needed anymore.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Cleanup and switch_root
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Init (or systemd) kills all udev processes, cleans up the environment,
|
|
Harald Hoyer |
e7efcf |
-sets up the arguments for the real init process and finally calls switch_root.
|
|
Harald Hoyer |
e7efcf |
-switch_root removes the whole filesystem hierarchy of the initramfs,
|
|
Harald Hoyer |
e7efcf |
-chroot()s to the real root device and calls /sbin/init with the specified arguments.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-To ensure all files in the initramfs hierarchy can be removed, all processes
|
|
Harald Hoyer |
e7efcf |
-still running from the initramfs should not have any open file descriptors left.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-== Network Infrastructure
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-== Writing a Module
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-A simple example module is _96insmodpost_, which modprobes a kernel module after
|
|
Harald Hoyer |
e7efcf |
-udev has settled and the basic device drivers have been loaded.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-All module installation information is in the file module-setup.sh.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-First we create a check() function, which just exits with 0 indicating that this
|
|
Harald Hoyer |
e7efcf |
-module should be included by default.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-check():
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-return 0
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The we create the install() function, which installs a cmdline hook with
|
|
Harald Hoyer |
e7efcf |
-priority number 20 called _parse-insmodpost.sh_. It also installs the
|
|
Harald Hoyer |
e7efcf |
-_insmodpost.sh_ script in _/sbin_.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-install():
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-inst_hook cmdline 20 "$moddir/parse-insmodpost.sh"
|
|
Harald Hoyer |
e7efcf |
-inst_simple "$moddir/insmodpost.sh" /sbin/insmodpost.sh
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The _pase-instmodpost.sh_ parses the kernel command line for a argument
|
|
Harald Hoyer |
e7efcf |
-rd.driver.post, blacklists the module from being autoloaded and installs the
|
|
Harald Hoyer |
e7efcf |
-hook _insmodpost.sh_ in the _initqueue/settled_.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-_parse-insmodpost.sh_:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-for p in $(getargs rd.driver.post=); do
|
|
Harald Hoyer |
e7efcf |
- echo "blacklist $p" >> /etc/modprobe.d/initramfsblacklist.conf
|
|
Harald Hoyer |
e7efcf |
- _do_insmodpost=1
|
|
Harald Hoyer |
e7efcf |
-done
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-[ -n "$_do_insmodpost" ] && /sbin/initqueue --settled --unique --onetime /sbin/insmodpost.sh
|
|
Harald Hoyer |
e7efcf |
-unset _do_insmodpost
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-_insmodpost.sh_, which is called in the _initqueue/settled_ hook will just
|
|
Harald Hoyer |
e7efcf |
-modprobe the kernel modules specified in all rd.driver.post kernel command line
|
|
Harald Hoyer |
e7efcf |
-parameters. It runs after udev has settled and is only called once (--onetime).
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-_insmodpost.sh_:
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-. /lib/dracut-lib.sh
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-for p in $(getargs rd.driver.post=); do
|
|
Harald Hoyer |
e7efcf |
- modprobe $p
|
|
Harald Hoyer |
e7efcf |
-done
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== check()
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-_check()_ is called by dracut to evaluate the inclusion of a dracut module in
|
|
Harald Hoyer |
e7efcf |
-the initramfs.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-$hostonly:: If the $hostonly variable is set, then the module check() function
|
|
Harald Hoyer |
e7efcf |
-should be in "hostonly" mode, which means, that the check() should only return
|
|
Harald Hoyer |
e7efcf |
-0, if the module is really needed to boot this specific host.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-check() should return with:
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-0:: Include the dracut module in the initramfs.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-1:: Do not include the dracut module. The requirements are not fullfilled
|
|
Harald Hoyer |
e7efcf |
-(missing tools, etc.)
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-255:: Only include the dracut module, if another module requires it or if
|
|
Harald Hoyer |
e7efcf |
-explicitly specified in the config file or on the argument list.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== depends()
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-The function depends() should echo all other dracut module names the module
|
|
Harald Hoyer |
e7efcf |
-depends on.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== install()
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-inst_multiple
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-inst
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-inst_hook
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-inst_rules
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== installkernel()
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-instmods
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Creation Functions
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Initramfs Functions
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-=== Network Modules
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-FIXME
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
:leveloffset: 1
|
|
Harald Hoyer |
e7efcf |
-[[dracutbootup7]]
|
|
Harald Hoyer |
e7efcf |
-include::dracut.bootup.7.asc[]
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-:leveloffset: 1
|
|
Harald Hoyer |
e7efcf |
-[[dracut8]]
|
|
Harald Hoyer |
e7efcf |
include::dracut.8.asc[]
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
+:leveloffset: 1
|
|
Harald Hoyer |
e7efcf |
[[dracutconf5]]
|
|
Harald Hoyer |
e7efcf |
include::dracut.conf.5.asc[]
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -1036,6 +161,15 @@ include::lsinitrd.1.asc[]
|
|
Harald Hoyer |
e7efcf |
[[mkinitrd8]]
|
|
Harald Hoyer |
e7efcf |
include::mkinitrd.8.asc[]
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
+= Developer Manual
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+:leveloffset: 1
|
|
Harald Hoyer |
e7efcf |
+[[dracutmodules7]]
|
|
Harald Hoyer |
e7efcf |
+include::dracut.modules.7.asc[]
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[dracutbootup7]]
|
|
Harald Hoyer |
e7efcf |
+include::dracut.bootup.7.asc[]
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
:leveloffset: 0
|
|
Harald Hoyer |
e7efcf |
[appendix]
|
|
Harald Hoyer |
e7efcf |
License
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
|
|
Harald Hoyer |
e7efcf |
index 4b2ab03..19bfb93 100644
|
|
Harald Hoyer |
e7efcf |
--- a/dracut.cmdline.7.asc
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.cmdline.7.asc
|
|
Harald Hoyer |
e7efcf |
@@ -31,16 +31,16 @@ line is the value, which is honored.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Standard
|
|
Harald Hoyer |
e7efcf |
~~~~~~~~
|
|
Harald Hoyer |
e7efcf |
-**init=**_<path to real init>_::
|
|
Harald Hoyer |
e7efcf |
+**init=**__<path to real init>__::
|
|
Harald Hoyer |
e7efcf |
specify the path to the init programm to be started after the initramfs has
|
|
Harald Hoyer |
e7efcf |
finished
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**root=**_<path to blockdevice>_::
|
|
Harald Hoyer |
e7efcf |
+**root=**__<path to blockdevice>__::
|
|
Harald Hoyer |
e7efcf |
specify the block device to use as the root filesystem.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-E.g.:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
root=/dev/sda1
|
|
Harald Hoyer |
e7efcf |
root=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
|
|
Harald Hoyer |
e7efcf |
root=/dev/disk/by-label/Root
|
|
Harald Hoyer |
e7efcf |
@@ -48,15 +48,17 @@ root=LABEL=Root
|
|
Harald Hoyer |
e7efcf |
root=/dev/disk/by-uuid/3f5ad593-4546-4a94-a374-bcfb68aa11f7
|
|
Harald Hoyer |
e7efcf |
root=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
|
|
Harald Hoyer |
e7efcf |
root=PARTUUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rootfstype=**_<filesystem type>_:: "auto" if not specified, e.g.:
|
|
Harald Hoyer |
e7efcf |
+**rootfstype=**__<filesystem type>__:: "auto" if not specified.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
rootfstype=ext3
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rootflags=**_<mount options>_::
|
|
Harald Hoyer |
e7efcf |
+**rootflags=**__<mount options>__::
|
|
Harald Hoyer |
e7efcf |
specify additional mount options for the root filesystem. If not set,
|
|
Harald Hoyer |
e7efcf |
_/etc/fstab_ of the real root will be parsed for special mount options and
|
|
Harald Hoyer |
e7efcf |
mounted accordingly.
|
|
Harald Hoyer |
e7efcf |
@@ -69,7 +71,7 @@ rootfstype=ext3
|
|
Harald Hoyer |
e7efcf |
force mounting _/_ and _/usr_ (if it is a separate device) read-write.
|
|
Harald Hoyer |
e7efcf |
See also ro option.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rootfallback=**_<path to blockdevice>_::
|
|
Harald Hoyer |
e7efcf |
+**rootfallback=**__<path to blockdevice>__::
|
|
Harald Hoyer |
e7efcf |
specify the block device to use as the root filesystem, if the normal root cannot be found.
|
|
Harald Hoyer |
e7efcf |
This can only be a simple block device with a simple file system, for which the filesystem
|
|
Harald Hoyer |
e7efcf |
driver is either compiled in, or added manually to the initramfs.
|
|
Harald Hoyer |
e7efcf |
@@ -83,16 +85,16 @@ rootfstype=ext3
|
|
Harald Hoyer |
e7efcf |
do not honor special mount options for the root filesystem found in
|
|
Harald Hoyer |
e7efcf |
_/etc/fstab_ of the real root.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**resume=**_<path to resume partition>_::
|
|
Harald Hoyer |
e7efcf |
+**resume=**__<path to resume partition>__::
|
|
Harald Hoyer |
e7efcf |
resume from a swap partition
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-E.g.:
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
resume=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
|
|
Harald Hoyer |
e7efcf |
resume=/dev/disk/by-uuid/3f5ad593-4546-4a94-a374-bcfb68aa11f7
|
|
Harald Hoyer |
e7efcf |
resume=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**rd.skipfsck**::
|
|
Harald Hoyer |
e7efcf |
skip fsck for rootfs and _/usr_. If you're mounting _/usr_ read-only and
|
|
Harald Hoyer |
e7efcf |
@@ -102,19 +104,19 @@ resume=UUID=3f5ad593-4546-4a94-a374-bcfb68aa11f7
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Misc
|
|
Harald Hoyer |
e7efcf |
~~~~
|
|
Harald Hoyer |
e7efcf |
-**rd.driver.blacklist=**_<drivername>[,<drivername>,...]_::
|
|
Harald Hoyer |
e7efcf |
+**rd.driver.blacklist=**__<drivername>__[,__<drivername>__,...]::
|
|
Harald Hoyer |
e7efcf |
do not load kernel module <drivername>. This parameter can be specified
|
|
Harald Hoyer |
e7efcf |
multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.driver.pre=**_<drivername>[,<drivername>,...]_::
|
|
Harald Hoyer |
e7efcf |
+**rd.driver.pre=**__<drivername>__[,__<drivername>__,...]::
|
|
Harald Hoyer |
e7efcf |
force loading kernel module <drivername>. This parameter can be specified
|
|
Harald Hoyer |
e7efcf |
multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.driver.post=**_<drivername>[,<drivername>,...]_::
|
|
Harald Hoyer |
e7efcf |
+**rd.driver.post=**__<drivername>__[,__<drivername>__,...]::
|
|
Harald Hoyer |
e7efcf |
force loading kernel module <drivername> after all automatic loading modules
|
|
Harald Hoyer |
e7efcf |
have been loaded. This parameter can be specified multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.retry=**_<seconds>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.retry=**__<seconds>__::
|
|
Harald Hoyer |
e7efcf |
specify how long dracut should wait for devices to appear.
|
|
Harald Hoyer |
e7efcf |
The default is 30 seconds. After 2/3 of the time, degraded raids are force
|
|
Harald Hoyer |
e7efcf |
started. If you have hardware, which takes a very long time to announce its
|
|
Harald Hoyer |
e7efcf |
@@ -123,7 +125,7 @@ Misc
|
|
Harald Hoyer |
e7efcf |
**rd.noverifyssl**::
|
|
Harald Hoyer |
e7efcf |
accept self-signed certificates for ssl downloads.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.ctty=**_<terminal device>_**::
|
|
Harald Hoyer |
e7efcf |
+**rd.ctty=**__<terminal device>__::
|
|
Harald Hoyer |
e7efcf |
specify the controlling terminal for the console.
|
|
Harald Hoyer |
e7efcf |
This is useful, if you have multiple "console=" arguments.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -150,17 +152,20 @@ It should be attached to any report about dracut problems.
|
|
Harald Hoyer |
e7efcf |
If "quiet" is set, it also logs to the console.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**rd.memdebug=[0-3]**::
|
|
Harald Hoyer |
e7efcf |
- Print memory usage info at various points, set the verbose level from 0 to 3
|
|
Harald Hoyer |
e7efcf |
+ Print memory usage info at various points, set the verbose level from 0 to 3. +
|
|
Harald Hoyer |
e7efcf |
Higher level means more debugging output:
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
0 - no output
|
|
Harald Hoyer |
e7efcf |
1 - partial /proc/meminfo
|
|
Harald Hoyer |
e7efcf |
2 - /proc/meminfo
|
|
Harald Hoyer |
e7efcf |
3 - /proc/meminfo + /proc/slabinfo
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**rd.break**::
|
|
Harald Hoyer |
e7efcf |
drop to a shell at the end
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.break=**_{cmdline|pre-udev|pre-trigger|initqueue|pre-mount|mount|pre-pivot|cleanup}_::
|
|
Harald Hoyer |
e7efcf |
+**rd.break=**__{cmdline|pre-udev|pre-trigger|initqueue|pre-mount|mount|pre-pivot|cleanup}__::
|
|
Harald Hoyer |
e7efcf |
drop to a shell on defined breakpoint
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**rd.udev.info**::
|
|
Harald Hoyer |
e7efcf |
@@ -171,50 +176,56 @@ It should be attached to any report about dracut problems.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
I18N
|
|
Harald Hoyer |
e7efcf |
~~~~
|
|
Harald Hoyer |
e7efcf |
-**vconsole.keymap=**_<keymap base file name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.vconsole.keymap=**__<keymap base file name>__::
|
|
Harald Hoyer |
e7efcf |
keyboard translation table loaded by loadkeys; taken from keymaps directory;
|
|
Harald Hoyer |
e7efcf |
- will be written as KEYMAP to _/etc/vconsole.conf_ in the initramfs, e.g.:
|
|
Harald Hoyer |
e7efcf |
+ will be written as KEYMAP to _/etc/vconsole.conf_ in the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-vconsole.keymap=de-latin1-nodeadkeys
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+rd.vconsole.keymap=de-latin1-nodeadkeys
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**vconsole.keymap.ext=**_<list of keymap base file names>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.vconsole.keymap.ext=**__<list of keymap base file names>__::
|
|
Harald Hoyer |
e7efcf |
list of extra keymaps to bo loaded (sep. by space); will be written as
|
|
Harald Hoyer |
e7efcf |
EXT_KEYMAP to _/etc/vconsole.conf_ in the initramfs
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**vconsole.unicode**[=_{0|1}_]::
|
|
Harald Hoyer |
e7efcf |
+**rd.vconsole.unicode**::
|
|
Harald Hoyer |
e7efcf |
boolean, indicating UTF-8 mode; will be written as UNICODE to
|
|
Harald Hoyer |
e7efcf |
_/etc/vconsole.conf_ in the initramfs
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**vconsole.font=**_<font base file name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.vconsole.font=**__<font base file name>__::
|
|
Harald Hoyer |
e7efcf |
console font; taken from consolefonts directory; will be written as FONT to
|
|
Harald Hoyer |
e7efcf |
- _/etc/vconsole.conf_ in the initramfs; e.g.:
|
|
Harald Hoyer |
e7efcf |
+ _/etc/vconsole.conf_ in the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-vconsole.font=LatArCyrHeb-16
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+rd.vconsole.font=LatArCyrHeb-16
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**vconsole.font.map=**_<console map base file name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.vconsole.font.map=**__<console map base file name>__::
|
|
Harald Hoyer |
e7efcf |
see description of '-m' parameter in setfont manual; taken from consoletrans
|
|
Harald Hoyer |
e7efcf |
directory; will be written as FONT_MAP to _/etc/vconsole.conf_ in the
|
|
Harald Hoyer |
e7efcf |
initramfs
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**vconsole.font.unimap=**_<unicode table base file name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.vconsole.font.unimap=**__<unicode table base file name>__::
|
|
Harald Hoyer |
e7efcf |
see description of '-u' parameter in setfont manual; taken from unimaps
|
|
Harald Hoyer |
e7efcf |
directory; will be written as FONT_UNIMAP to _/etc/vconsole.conf_ in the
|
|
Harald Hoyer |
e7efcf |
initramfs
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**locale.LANG=**_<locale>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.locale.LANG=**__<locale>__::
|
|
Harald Hoyer |
e7efcf |
taken from the environment; if no UNICODE is defined we set its value in
|
|
Harald Hoyer |
e7efcf |
basis of LANG value (whether it ends with ".utf8" (or similar) or not); will
|
|
Harald Hoyer |
e7efcf |
- be written as LANG to _/etc/locale.conf_ in the initramfs; e.g.:
|
|
Harald Hoyer |
e7efcf |
+ be written as LANG to _/etc/locale.conf_ in the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-locale.LANG=pl_PL.utf8
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+rd.locale.LANG=pl_PL.utf8
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**locale.LC_ALL=**_<locale>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.locale.LC_ALL=**__<locale>__::
|
|
Harald Hoyer |
e7efcf |
taken from the environment; will be written as LC_ALL to _/etc/locale.conf_
|
|
Harald Hoyer |
e7efcf |
in the initramfs
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -223,11 +234,11 @@ LVM
|
|
Harald Hoyer |
e7efcf |
**rd.lvm=0**::
|
|
Harald Hoyer |
e7efcf |
disable LVM detection
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.lvm.vg=**_<volume group name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.lvm.vg=**__<volume group name>__::
|
|
Harald Hoyer |
e7efcf |
only activate the volume groups with the given name. rd.lvm.vg can be
|
|
Harald Hoyer |
e7efcf |
specified multiple times on the kernel command line.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.lvm.lv=**_<logical volume name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.lvm.lv=**__<logical volume name>__::
|
|
Harald Hoyer |
e7efcf |
only activate the logical volumes with the given name. rd.lvm.lv can be
|
|
Harald Hoyer |
e7efcf |
specified multiple times on the kernel command line.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -239,14 +250,14 @@ crypto LUKS
|
|
Harald Hoyer |
e7efcf |
**rd.luks=0**::
|
|
Harald Hoyer |
e7efcf |
disable crypto LUKS detection
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.luks.uuid=**_<luks uuid>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.luks.uuid=**__<luks uuid>__::
|
|
Harald Hoyer |
e7efcf |
only activate the LUKS partitions with the given UUID. Any "luks-" of the
|
|
Harald Hoyer |
e7efcf |
LUKS UUID is removed before comparing to _<luks uuid>_.
|
|
Harald Hoyer |
e7efcf |
The comparisons also matches, if _<luks uuid>_ is only the beginning of the
|
|
Harald Hoyer |
e7efcf |
LUKS UUID, so you don't have to specify the full UUID.
|
|
Harald Hoyer |
e7efcf |
This parameter can be specified multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.luks.allow-discards=**_<luks uuid>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.luks.allow-discards=**__<luks uuid>__::
|
|
Harald Hoyer |
e7efcf |
Allow using of discards (TRIM) requests for LUKS partitions with the given UUID.
|
|
Harald Hoyer |
e7efcf |
Any "luks-" of the LUKS UUID is removed before comparing to _<luks uuid>_.
|
|
Harald Hoyer |
e7efcf |
The comparisons also matches, if _<luks uuid>_ is only the beginning of the
|
|
Harald Hoyer |
e7efcf |
@@ -261,16 +272,18 @@ crypto LUKS
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
crypto LUKS - key on removable device support
|
|
Harald Hoyer |
e7efcf |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Harald Hoyer |
e7efcf |
-**rd.luks.key=**_<keypath>:<keydev>:<luksdev>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.luks.key=**__<keypath>__:__<keydev>__:__<luksdev>__::
|
|
Harald Hoyer |
e7efcf |
_keypath_ is a path to key file to look for. It's REQUIRED. When _keypath_ ends with '.gpg' it's considered to be key encrypted symmetrically with GPG. You will be prompted for password on boot. GPG support comes with 'crypt-gpg' module which needs to be added explicitly.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
_keydev_ is a device on which key file resides. It might be kernel name of devices (should start with "/dev/"), UUID (prefixed with "UUID=") or label (prefix with "LABEL="). You don't have to specify full UUID. Just its beginning will suffice, even if its ambiguous. All matching devices will be probed. This parameter is recommended, but not required. If not present, all block devices will be probed, which may significantly increase boot time.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
If _luksdev_ is given, the specified key will only be applied for that LUKS device. Possible values are the same as for _keydev_. Unless you have several LUKS devices, you don't have to specify this parameter. The simplest usage is:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
rd.luks.key=/foo/bar.key
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
As you see, you can skip colons in such a case.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
@@ -281,20 +294,20 @@ to crypsetup luksFormat with _-d -_, too!
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Here follows example for key encrypted with GPG:
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-gpg --quiet --decrypt rootkey.gpg \
|
|
Harald Hoyer |
e7efcf |
-| cryptsetup -d - -v \
|
|
Harald Hoyer |
e7efcf |
---cipher serpent-cbc-essiv:sha256 \
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+gpg --quiet --decrypt rootkey.gpg | \
|
|
Harald Hoyer |
e7efcf |
+cryptsetup -d - -v --cipher serpent-cbc-essiv:sha256 \
|
|
Harald Hoyer |
e7efcf |
--key-size 256 luksFormat /dev/sda3
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
If you use plain keys, just add path to _-d_ option:
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-cryptsetup -d rootkey.key -v \
|
|
Harald Hoyer |
e7efcf |
---cipher serpent-cbc-essiv:sha256 \
|
|
Harald Hoyer |
e7efcf |
---key-size 256 luksFormat /dev/sda3
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+cryptsetup -d rootkey.key -v --cipher serpent-cbc-essiv:sha256 \
|
|
Harald Hoyer |
e7efcf |
+ --key-size 256 luksFormat /dev/sda3
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
===============================
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
MD RAID
|
|
Harald Hoyer |
e7efcf |
@@ -314,7 +327,7 @@ MD RAID
|
|
Harald Hoyer |
e7efcf |
**rd.md.waitclean=1**::
|
|
Harald Hoyer |
e7efcf |
wait for any resync, recovery, or reshape activity to finish before continuing
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.md.uuid=**_<md raid uuid>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.md.uuid=**__<md raid uuid>__::
|
|
Harald Hoyer |
e7efcf |
only activate the raid sets with the given UUID. This parameter can be
|
|
Harald Hoyer |
e7efcf |
specified multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -323,7 +336,7 @@ DM RAID
|
|
Harald Hoyer |
e7efcf |
**rd.dm=0**::
|
|
Harald Hoyer |
e7efcf |
disable DM RAID detection
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.dm.uuid=**_<dm raid uuid>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.dm.uuid=**__<dm raid uuid>__::
|
|
Harald Hoyer |
e7efcf |
only activate the raid sets with the given UUID. This parameter can be
|
|
Harald Hoyer |
e7efcf |
specified multiple times.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -332,15 +345,17 @@ FIPS
|
|
Harald Hoyer |
e7efcf |
**rd.fips**::
|
|
Harald Hoyer |
e7efcf |
enable FIPS
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**boot=**_<boot device>_::
|
|
Harald Hoyer |
e7efcf |
- specify the device, where /boot is located. e.g.
|
|
Harald Hoyer |
e7efcf |
+**boot=**__<boot device>__::
|
|
Harald Hoyer |
e7efcf |
+ specify the device, where /boot is located.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
boot=/dev/sda1
|
|
Harald Hoyer |
e7efcf |
boot=/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:1:0-part1
|
|
Harald Hoyer |
e7efcf |
boot=UUID=<uuid>
|
|
Harald Hoyer |
e7efcf |
boot=LABEL=<label>
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**rd.fips.skipkernel**::
|
|
Harald Hoyer |
e7efcf |
skip checksum check of the kernel image. Useful, if the kernel image is not
|
|
Harald Hoyer |
e7efcf |
@@ -348,7 +363,66 @@ boot=LABEL=<label>
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Network
|
|
Harald Hoyer |
e7efcf |
~~~~~~~
|
|
Harald Hoyer |
e7efcf |
-**ip=**_{dhcp|on|any|dhcp6|auto6|ibft}_::
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[IMPORTANT]
|
|
Harald Hoyer |
e7efcf |
+=====================
|
|
Harald Hoyer |
e7efcf |
+It is recommended to either bind an interface to a MAC with the **ifname** argument,
|
|
Harald Hoyer |
e7efcf |
+or to use the systemd-udevd predictable network interface names.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Predictable network interface device names based on:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+- firmware/bios-provided index numbers for on-board devices
|
|
Harald Hoyer |
e7efcf |
+- firmware-provided pci-express hotplug slot index number
|
|
Harald Hoyer |
e7efcf |
+- physical/geographical location of the hardware
|
|
Harald Hoyer |
e7efcf |
+- the interface's MAC address
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+See: http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Two character prefixes based on the type of interface:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+en:: ethernet
|
|
Harald Hoyer |
e7efcf |
+wl:: wlan
|
|
Harald Hoyer |
e7efcf |
+ww:: wwan
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Type of names:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+o<index>:: on-board device index number
|
|
Harald Hoyer |
e7efcf |
+s<slot>[f<function>][d<dev_id>]:: hotplug slot index number
|
|
Harald Hoyer |
e7efcf |
+x<MAC>:: MAC address
|
|
Harald Hoyer |
e7efcf |
+[P<domain>]p<bus>s<slot>[f<function>][d<dev_id>]:: PCI geographical location
|
|
Harald Hoyer |
e7efcf |
+[P<domain>]p<bus>s<slot>[f<function>][u<port>][..][c<config>][i<interface>]:: USB port number chain
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+All multi-function PCI devices will carry the [f<function>] number in the
|
|
Harald Hoyer |
e7efcf |
+device name, including the function 0 device.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+When using PCI geography, The PCI domain is only prepended when it is not 0.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+For USB devices the full chain of port numbers of hubs is composed. If the
|
|
Harald Hoyer |
e7efcf |
+name gets longer than the maximum number of 15 characters, the name is not
|
|
Harald Hoyer |
e7efcf |
+exported.
|
|
Harald Hoyer |
e7efcf |
+The usual USB configuration == 1 and interface == 0 values are suppressed.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+PCI ethernet card with firmware index "1"::
|
|
Harald Hoyer |
e7efcf |
+* eno1
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+PCI ethernet card in hotplug slot with firmware index number::
|
|
Harald Hoyer |
e7efcf |
+* ens1
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+PCI ethernet multi-function card with 2 ports::
|
|
Harald Hoyer |
e7efcf |
+* enp2s0f0
|
|
Harald Hoyer |
e7efcf |
+* enp2s0f1
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+PCI wlan card::
|
|
Harald Hoyer |
e7efcf |
+* wlp3s0
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+USB built-in 3G modem::
|
|
Harald Hoyer |
e7efcf |
+* wwp0s29u1u4i6
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+USB Android phone::
|
|
Harald Hoyer |
e7efcf |
+* enp0s29u1u2
|
|
Harald Hoyer |
e7efcf |
+=====================
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+**ip=**__{dhcp|on|any|dhcp6|auto6|ibft}__::
|
|
Harald Hoyer |
e7efcf |
dhcp|on|any::: get ip from dhcp server from all interfaces. If root=dhcp, loop
|
|
Harald Hoyer |
e7efcf |
sequentially through all interfaces (eth0, eth1, ...) and use the first with
|
|
Harald Hoyer |
e7efcf |
a valid DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
@@ -359,7 +433,7 @@ Network
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
ibft::: iBFT autoconfiguration
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**ip=**_<interface>_:_{dhcp|on|any|dhcp6|auto6}_[:[_<mtu>_][:_<macaddr>_]]::
|
|
Harald Hoyer |
e7efcf |
+**ip=**__<interface>__:__{dhcp|on|any|dhcp6|auto6}__[:[__<mtu>__][:__<macaddr>__]]::
|
|
Harald Hoyer |
e7efcf |
This parameter can be specified multiple times.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
=====================
|
|
Harald Hoyer |
e7efcf |
@@ -370,16 +444,7 @@ cannot be used in conjunction with the **ifname** argument for the
|
|
Harald Hoyer |
e7efcf |
same <interface>.
|
|
Harald Hoyer |
e7efcf |
=====================
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-[IMPORTANT]
|
|
Harald Hoyer |
e7efcf |
-=====================
|
|
Harald Hoyer |
e7efcf |
-It is recommended to either bind <interface> to a MAC with the **ifname**
|
|
Harald Hoyer |
e7efcf |
-argument. Or use biosdevname to name your interfaces, which will then have names according to their hardware location.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-em<port>::: for embedded NICs
|
|
Harald Hoyer |
e7efcf |
-p<slot>#<port>_<virtual instance>::: for cards in PCI slots
|
|
Harald Hoyer |
e7efcf |
-=====================
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-**ip=**_<client-IP>_:_<server-IP>_:_<gateway-IP>_:_<netmask>_:_<client_hostname>_:_<interface>_:_{none|off|dhcp|on|any|dhcp6|auto6|ibft}_[:[_<mtu>_][:_<macaddr>_]]::
|
|
Harald Hoyer |
e7efcf |
+**ip=**__<client-IP>__:__<server-IP>__:__<gateway-IP>__:__<netmask>__:__<client_hostname>__:__<interface>__:__{none|off|dhcp|on|any|dhcp6|auto6|ibft}__:[:[__<mtu>__][:__<macaddr>__]]::
|
|
Harald Hoyer |
e7efcf |
explicit network configuration. If you want do define a IPv6 address, put it
|
|
Harald Hoyer |
e7efcf |
in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
|
|
Harald Hoyer |
e7efcf |
times.
|
|
Harald Hoyer |
e7efcf |
@@ -390,25 +455,14 @@ cannot be used in conjunction with the **ifname** argument for the
|
|
Harald Hoyer |
e7efcf |
same <interface>.
|
|
Harald Hoyer |
e7efcf |
=====================
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-[IMPORTANT]
|
|
Harald Hoyer |
e7efcf |
-=====================
|
|
Harald Hoyer |
e7efcf |
-It is recommended to either bind <interface> to a MAC with the **ifname**
|
|
Harald Hoyer |
e7efcf |
-argument. Or use biosdevname to name your interfaces, which will then have names according to their hardware location.
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-em<port>::: for embedded NICs
|
|
Harald Hoyer |
e7efcf |
-p<slot>#<port>_<virtual instance>::: for cards in PCI slots
|
|
Harald Hoyer |
e7efcf |
-=====================
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-**ifname=**_<interface>_:_<MAC>_::
|
|
Harald Hoyer |
e7efcf |
+**ifname=**__<interface>__:__<MAC>__::
|
|
Harald Hoyer |
e7efcf |
Assign network device name <interface> (ie "bootnet") to the NIC with MAC <MAC>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-[IMPORTANT]
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-Do **not** use the default kernel naming scheme for the interface name,
|
|
Harald Hoyer |
e7efcf |
+WARNING: Do **not** use the default kernel naming scheme for the interface name,
|
|
Harald Hoyer |
e7efcf |
as it can conflict with the kernel names. So, don't use "eth[0-9]+" for the
|
|
Harald Hoyer |
e7efcf |
interface name. Better name it "bootnet" or "bluesocket".
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**bootdev=**_<interface>_::
|
|
Harald Hoyer |
e7efcf |
+**bootdev=**__<interface>__::
|
|
Harald Hoyer |
e7efcf |
specify network interface to use routing and netroot information from.
|
|
Harald Hoyer |
e7efcf |
Required if multiple ip= lines are used.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -421,12 +475,12 @@ interface name. Better name it "bootnet" or "bluesocket".
|
|
Harald Hoyer |
e7efcf |
**rd.neednet=1**::
|
|
Harald Hoyer |
e7efcf |
boolean, bring up network even without netroot set
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**vlan=_<vlanname>_:_<phydevice>_**::
|
|
Harald Hoyer |
e7efcf |
+**vlan=**__<vlanname>__:__<phydevice>__::
|
|
Harald Hoyer |
e7efcf |
Setup vlan device named <vlanname> on <phydeivce>.
|
|
Harald Hoyer |
e7efcf |
We support the four styles of vlan names: VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5),
|
|
Harald Hoyer |
e7efcf |
DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5)
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**bond=_<bondname>_[:_<bondslaves>_:[:_<options>_]]**::
|
|
Harald Hoyer |
e7efcf |
+**bond=**__<bondname>__[:__<bondslaves>__:[:__<options>__]]::
|
|
Harald Hoyer |
e7efcf |
Setup bonding device <bondname> on top of <bondslaves>.
|
|
Harald Hoyer |
e7efcf |
<bondslaves> is a comma-separated list of physical (ethernet) interfaces.
|
|
Harald Hoyer |
e7efcf |
<options> is a comma-separated list on bonding options (modinfo bonding for details)
|
|
Harald Hoyer |
e7efcf |
@@ -434,68 +488,63 @@ interface name. Better name it "bootnet" or "bluesocket".
|
|
Harald Hoyer |
e7efcf |
then its values should be separated by semicolon.
|
|
Harald Hoyer |
e7efcf |
Bond without parameters assumes bond=bond0:eth0,eth1:mode=balance-rr
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**team =_<teammaster>_:_<teamslaves>_**::
|
|
Harald Hoyer |
e7efcf |
+**team=**__<teammaster>__:__<teamslaves>__::
|
|
Harald Hoyer |
e7efcf |
Setup team device <teammaster> on top of <teamslaves>.
|
|
Harald Hoyer |
e7efcf |
<teamslaves> is a comma-separated list of physical (ethernet) interfaces.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**bridge=_<bridgename>_:_<ethnames>_**::
|
|
Harald Hoyer |
e7efcf |
+**bridge=**__<bridgename>__:__<ethnames>__::
|
|
Harald Hoyer |
e7efcf |
Setup bridge <bridgename> with <ethnames>. <ethnames> is a comma-separated
|
|
Harald Hoyer |
e7efcf |
list of physical (ethernet) interfaces. Bridge without parameters assumes bridge=br0:eth0
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
NFS
|
|
Harald Hoyer |
e7efcf |
~~~
|
|
Harald Hoyer |
e7efcf |
-**root=**[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_]::
|
|
Harald Hoyer |
e7efcf |
+**root=**\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__]::
|
|
Harald Hoyer |
e7efcf |
mount nfs share from <server-ip>:/<root-dir>, if no server-ip is given, use
|
|
Harald Hoyer |
e7efcf |
dhcp next_server. if server-ip is an IPv6 address it has to be put in
|
|
Harald Hoyer |
e7efcf |
brackets, e.g. [2001:DB8::1]. NFS options can be appended with the prefix
|
|
Harald Hoyer |
e7efcf |
":" or "," and are seperated by ",".
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**root=**nfs:[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_], **root=**nfs4:[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_], **root=**_{dhcp|dhcp6}_::
|
|
Harald Hoyer |
e7efcf |
+**root=**nfs:\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__], **root=**nfs4:\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__], **root=**__{dhcp|dhcp6}__::
|
|
Harald Hoyer |
e7efcf |
root=dhcp alone directs initrd to look at the DHCP root-path where NFS
|
|
Harald Hoyer |
e7efcf |
options can be specified.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
root-path=<server-ip>:<root-dir>[,<nfs-options>]
|
|
Harald Hoyer |
e7efcf |
root-path=nfs:<server-ip>:<root-dir>[,<nfs-options>]
|
|
Harald Hoyer |
e7efcf |
root-path=nfs4:<server-ip>:<root-dir>[,<nfs-options>]
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**root=**_/dev/nfs_ nfsroot=[_<server-ip>_:]_<root-dir>_[:_<nfs-options>_]::
|
|
Harald Hoyer |
e7efcf |
+**root=**_/dev/nfs_ nfsroot=\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__]::
|
|
Harald Hoyer |
e7efcf |
_Deprecated!_ kernel Documentation_/filesystems/nfsroot.txt_ defines this
|
|
Harald Hoyer |
e7efcf |
method. This is supported by dracut, but not recommended.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.nfs.domain=**_<NFSv4 domain name>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.nfs.domain=**__<NFSv4 domain name>__::
|
|
Harald Hoyer |
e7efcf |
Set the NFSv4 domain name. Will overwrite the settings in _/etc/idmap.conf_.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
CIFS
|
|
Harald Hoyer |
e7efcf |
~~~
|
|
Harald Hoyer |
e7efcf |
-**root=**cifs://[_<username>_[:_<password>_]@]_<server-ip>_:_<root-dir>_::
|
|
Harald Hoyer |
e7efcf |
+**root=**cifs://[__<username>__[:__<password>__]@]__<server-ip>__:__<root-dir>__::
|
|
Harald Hoyer |
e7efcf |
mount cifs share from <server-ip>:/<root-dir>, if no server-ip is given, use
|
|
Harald Hoyer |
e7efcf |
dhcp next_server. if server-ip is an IPv6 address it has to be put in
|
|
Harald Hoyer |
e7efcf |
brackets, e.g. [2001:DB8::1]. If a username or password are not specified
|
|
Harald Hoyer |
e7efcf |
as part of the root, then they must be passed on the command line through
|
|
Harald Hoyer |
e7efcf |
cifsuser/cifspass.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-[WARNING]
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
-Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
+WARNING: Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**cifsuser=_<username>_::
|
|
Harald Hoyer |
e7efcf |
+**cifsuser**=__<username>__::
|
|
Harald Hoyer |
e7efcf |
Set the cifs username, if not specified as part of the root.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**cifspass=_<password>_::
|
|
Harald Hoyer |
e7efcf |
+**cifspass**=__<password>__::
|
|
Harald Hoyer |
e7efcf |
Set the cifs password, if not specified as part of the root.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-[WARNING]
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
-Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
+WARNING: Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
iSCSI
|
|
Harald Hoyer |
e7efcf |
~~~~~
|
|
Harald Hoyer |
e7efcf |
-**root=**iscsi:[_<username>_:_<password>_[:_<reverse>_:_<password>_]@][_<servername>_]:[_<protocol>_]:[_<port>_][:[_<iscsi_iface_name>_]:[_<netdev_name>_]]:[_<LUN>_]:_<targetname>_::
|
|
Harald Hoyer |
e7efcf |
+**root=**iscsi:[__<username>__:__<password>__[:__<reverse>__:__<password>__]@][__<servername>__]:[__<protocol>__]:[__<port>__][:[__<iscsi_iface_name>__]:[__<netdev_name>__]]:[__<LUN>__]:__<targetname>__::
|
|
Harald Hoyer |
e7efcf |
protocol defaults to "6", LUN defaults to "0". If the "servername" field is
|
|
Harald Hoyer |
e7efcf |
provided by BOOTP or DHCP, then that field is used in conjunction with other
|
|
Harald Hoyer |
e7efcf |
associated fields to contact the boot server in the Boot stage. However, if
|
|
Harald Hoyer |
e7efcf |
@@ -503,85 +552,84 @@ iSCSI
|
|
Harald Hoyer |
e7efcf |
used in the Discovery Service stage in conjunction with other associated
|
|
Harald Hoyer |
e7efcf |
fields. See
|
|
Harald Hoyer |
e7efcf |
link:$$http://tools.ietf.org/html/rfc4173#section-5$$[rfc4173].
|
|
Harald Hoyer |
e7efcf |
- e.g.:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+WARNING: Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
root=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-If servername is an IPv6 address, it has to be put in brackets. e.g.:
|
|
Harald Hoyer |
e7efcf |
+If servername is an IPv6 address, it has to be put in brackets:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
root=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
-+
|
|
Harald Hoyer |
e7efcf |
-[WARNING]
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
-Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path.
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**root=**_???_ **netroot=**iscsi:[_<username>_:_<password>_[:_<reverse>_:_<password>_]@][_<servername>_]:[_<protocol>_]:[_<port>_][:[_<iscsi_iface_name>_]:[_<netdev_name>_]]:[_<LUN>_]:_<targetname>_ ...::
|
|
Harald Hoyer |
e7efcf |
- multiple netroot options allow setting up multiple iscsi disks. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**root=**__???__ **netroot=**iscsi:[__<username>__:__<password>__[:__<reverse>__:__<password>__]@][__<servername>__]:[__<protocol>__]:[__<port>__][:[__<iscsi_iface_name>__]:[__<netdev_name>__]]:[__<LUN>__]:__<targetname>__ ...::
|
|
Harald Hoyer |
e7efcf |
+ multiple netroot options allow setting up multiple iscsi disks:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
root=UUID=12424547
|
|
Harald Hoyer |
e7efcf |
netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0
|
|
Harald Hoyer |
e7efcf |
netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-If servername is an IPv6 address, it has to be put in brackets. e.g.:
|
|
Harald Hoyer |
e7efcf |
+If servername is an IPv6 address, it has to be put in brackets:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
netroot=iscsi:[2001:DB8::1]::::iqn.2009-06.dracut:target0
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-[WARNING]
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
-Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path. You may want to use rd.iscsi.firmware.
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
+WARNING: Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path. You may want to use rd.iscsi.firmware.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**root=**_???_ **rd.iscsi.initiator=**_<initiator>_ **rd.iscsi.target.name=**_<target name>_ **rd.iscsi.target.ip=**_<target ip>_ **rd.iscsi.target.port=**_<target port>_ **rd.iscsi.target.group=**_<target group>_ **rd.iscsi.username=**_<username>_ **rd.iscsi.password=**_<password>_ **rd.iscsi.in.username=**_<in username>_ **rd.iscsi.in.password=**_<in password>_::
|
|
Harald Hoyer |
e7efcf |
+**root=**__???__ **rd.iscsi.initiator=**__<initiator>__ **rd.iscsi.target.name=**__<target name>__ **rd.iscsi.target.ip=**__<target ip>__ **rd.iscsi.target.port=**__<target port>__ **rd.iscsi.target.group=**__<target group>__ **rd.iscsi.username=**__<username>__ **rd.iscsi.password=**__<password>__ **rd.iscsi.in.username=**__<in username>__ **rd.iscsi.in.password=**__<in password>__::
|
|
Harald Hoyer |
e7efcf |
manually specify all iscsistart parameter (see **+iscsistart --help+**)
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-[WARNING]
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
-Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path. You may want to use rd.iscsi.firmware.
|
|
Harald Hoyer |
e7efcf |
-====
|
|
Harald Hoyer |
e7efcf |
+WARNING: Passwords specified on the kernel command line are visible for all users via the file _/proc/cmdline_ and via dmesg or can be sniffed on the network, when using DHCP with DHCP root-path. You may want to use rd.iscsi.firmware.
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**root=**_???_ **netroot=**iscsi **rd.iscsi.firmware=1**::
|
|
Harald Hoyer |
e7efcf |
will read the iscsi parameter from the BIOS firmware
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**rd.iscsi.param=**_<param>_::
|
|
Harald Hoyer |
e7efcf |
+**rd.iscsi.param=**__<param>__::
|
|
Harald Hoyer |
e7efcf |
<param> will be passed as "--param <param>" to iscsistart.
|
|
Harald Hoyer |
e7efcf |
This parameter can be specified multiple times.
|
|
Harald Hoyer |
e7efcf |
- e.g.:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
"netroot=iscsi rd.iscsi.firmware=1 rd.iscsi.param=node.session.timeo.replacement_timeout=30"
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
will result in
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
iscsistart -b --param node.session.timeo.replacement_timeout=30
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
FCoE
|
|
Harald Hoyer |
e7efcf |
~~~~
|
|
Harald Hoyer |
e7efcf |
-**fcoe=**_<edd|interface|MAC>_:_{dcb|nodcb}_::
|
|
Harald Hoyer |
e7efcf |
+**fcoe=**__<edd|interface|MAC>__:__{dcb|nodcb}__::
|
|
Harald Hoyer |
e7efcf |
Try to connect to a FCoE SAN through the NIC specified by _<interface>_ or
|
|
Harald Hoyer |
e7efcf |
_<MAC>_ or EDD settings. For the second argument, currently only nodcb is
|
|
Harald Hoyer |
e7efcf |
supported. This parameter can be specified multiple times.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-[NOTE]
|
|
Harald Hoyer |
e7efcf |
-letters in the MAC-address must be lowercase!
|
|
Harald Hoyer |
e7efcf |
+NOTE: letters in the MAC-address must be lowercase!
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
NBD
|
|
Harald Hoyer |
e7efcf |
~~~
|
|
Harald Hoyer |
e7efcf |
-**root=**??? **netroot=**nbd:_<server>_:_<port>_[:_<fstype>_[:_<mountopts>_[:_<nbdopts>_]]]::
|
|
Harald Hoyer |
e7efcf |
+**root=**??? **netroot=**nbd:__<server>__:__<port>__[:__<fstype>__[:__<mountopts>__[:__<nbdopts>__]]]::
|
|
Harald Hoyer |
e7efcf |
mount nbd share from <server>
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**root=dhcp** with **dhcp** **root-path=**nbd:_<server>_:_<port>_[:_<fstype>_[:_<mountopts>_[:_<nbdopts>_]]]::
|
|
Harald Hoyer |
e7efcf |
+**root=dhcp** with **dhcp** **root-path=**nbd:__<server>__:__<port>__[:__<fstype>__[:__<mountopts>__[:__<nbdopts>__]]]::
|
|
Harald Hoyer |
e7efcf |
root=dhcp alone directs initrd to look at the DHCP root-path where NBD
|
|
Harald Hoyer |
e7efcf |
options can be specified. This syntax is only usable in cases where you are
|
|
Harald Hoyer |
e7efcf |
directly mounting the volume as the rootfs.
|
|
Harald Hoyer |
e7efcf |
@@ -593,25 +641,29 @@ DASD
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
ZFCP
|
|
Harald Hoyer |
e7efcf |
~~~~
|
|
Harald Hoyer |
e7efcf |
-**rd.zfcp=**_<zfcp adaptor device bus ID>_,_<WWPN>_,_<FCPLUN>_::
|
|
Harald Hoyer |
e7efcf |
- rd.zfcp can be specified multiple times on the kernel command line. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**rd.zfcp=**__<zfcp adaptor device bus ID>__,__<WWPN>__,__<FCPLUN>__::
|
|
Harald Hoyer |
e7efcf |
+ rd.zfcp can be specified multiple times on the kernel command line.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
rd.zfcp=0.0.4000,0x5005076300C213e9,0x5022000000000000
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
**rd.zfcp.conf=0**::
|
|
Harald Hoyer |
e7efcf |
ignore zfcp.conf included in the initramfs
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
ZNET
|
|
Harald Hoyer |
e7efcf |
~~~~
|
|
Harald Hoyer |
e7efcf |
-**rd.znet=**_<nettype>_,_<subchannels>_,_<options>_::
|
|
Harald Hoyer |
e7efcf |
- rd.znet can be specified multiple times on the kernel command line. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**rd.znet=**__<nettype>__,__<subchannels>__,__<options>__::
|
|
Harald Hoyer |
e7efcf |
+ rd.znet can be specified multiple times on the kernel command line.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
rd.znet=qeth,0.0.0600,0.0.0601,0.0.0602,layer2=1,portname=foo
|
|
Harald Hoyer |
e7efcf |
rd.znet=ctc,0.0.0600,0.0.0601,protocol=bar
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Plymouth Boot Splash
|
|
Harald Hoyer |
e7efcf |
~~~~~~~~~~~~~~~~~~~~
|
|
Harald Hoyer |
e7efcf |
@@ -623,33 +675,41 @@ Plymouth Boot Splash
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Kernel keys
|
|
Harald Hoyer |
e7efcf |
~~~~~~~~~~~
|
|
Harald Hoyer |
e7efcf |
-**masterkey=**_<kernel master key path name>_::
|
|
Harald Hoyer |
e7efcf |
- Set the path name of the kernel master key. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**masterkey=**__<kernel master key path name>__::
|
|
Harald Hoyer |
e7efcf |
+ Set the path name of the kernel master key.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
masterkey=/etc/keys/kmk-trusted.blob
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**masterkeytype=**_<kernel master key type>_::
|
|
Harald Hoyer |
e7efcf |
- Set the type of the kernel master key. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**masterkeytype=**__<kernel master key type>__::
|
|
Harald Hoyer |
e7efcf |
+ Set the type of the kernel master key.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
masterkeytype=trusted
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**evmkey=**_<EVM key path name>_::
|
|
Harald Hoyer |
e7efcf |
- Set the path name of the EVM key. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**evmkey=**__<EVM key path name>__::
|
|
Harald Hoyer |
e7efcf |
+ Set the path name of the EVM key.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
evmkey=/etc/keys/evm-trusted.blob
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-**ecryptfskey=**_<eCryptfs key path name>_::
|
|
Harald Hoyer |
e7efcf |
- Set the path name of the eCryptfs key. e.g.:
|
|
Harald Hoyer |
e7efcf |
+**ecryptfskey=**__<eCryptfs key path name>__::
|
|
Harald Hoyer |
e7efcf |
+ Set the path name of the eCryptfs key.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+[listing]
|
|
Harald Hoyer |
e7efcf |
+.Example
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
ecryptfskey=/etc/keys/ecryptfs-trusted.blob
|
|
Harald Hoyer |
e7efcf |
-----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
Deprecated, renamed Options
|
|
Harald Hoyer |
e7efcf |
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.css b/dracut.css
|
|
Harald Hoyer |
e7efcf |
index e419a06..357ede1 100644
|
|
Harald Hoyer |
e7efcf |
--- a/dracut.css
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.css
|
|
Harald Hoyer |
e7efcf |
@@ -14,45 +14,6 @@ body {
|
|
Harald Hoyer |
e7efcf |
color:black;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-body.toc_embeded {
|
|
Harald Hoyer |
e7efcf |
- /*for web hosting system only*/
|
|
Harald Hoyer |
e7efcf |
- margin-left: 300px;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-object.toc, iframe.toc {
|
|
Harald Hoyer |
e7efcf |
- /*for web hosting system only*/
|
|
Harald Hoyer |
e7efcf |
- border-style:none;
|
|
Harald Hoyer |
e7efcf |
- position:fixed;
|
|
Harald Hoyer |
e7efcf |
- width:290px;
|
|
Harald Hoyer |
e7efcf |
- height:99.99%;
|
|
Harald Hoyer |
e7efcf |
- top:0;
|
|
Harald Hoyer |
e7efcf |
- left:0;
|
|
Harald Hoyer |
e7efcf |
- z-index: 100;
|
|
Harald Hoyer |
e7efcf |
- border-style:none;
|
|
Harald Hoyer |
e7efcf |
- border-right:1px solid #999;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-/* Hide web menu */
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-body.notoc {
|
|
Harald Hoyer |
e7efcf |
- margin-left: 3em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-iframe.notoc {
|
|
Harald Hoyer |
e7efcf |
- border-style:none;
|
|
Harald Hoyer |
e7efcf |
- border: none;
|
|
Harald Hoyer |
e7efcf |
- padding: 0em;
|
|
Harald Hoyer |
e7efcf |
- position:fixed;
|
|
Harald Hoyer |
e7efcf |
- width: 21px;
|
|
Harald Hoyer |
e7efcf |
- height: 29px;
|
|
Harald Hoyer |
e7efcf |
- top: 0px;
|
|
Harald Hoyer |
e7efcf |
- left:0;
|
|
Harald Hoyer |
e7efcf |
- overflow: hidden;
|
|
Harald Hoyer |
e7efcf |
- margin: 0em;
|
|
Harald Hoyer |
e7efcf |
- margin-left: -3px;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-/* End hide web menu */
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
/* desktop styles */
|
|
Harald Hoyer |
e7efcf |
body.desktop {
|
|
Harald Hoyer |
e7efcf |
margin-left: 26em;
|
|
Harald Hoyer |
e7efcf |
@@ -166,7 +127,6 @@ h1 {
|
|
Harald Hoyer |
e7efcf |
margin-bottom: 0em;
|
|
Harald Hoyer |
e7efcf |
font-size: 3.0em;
|
|
Harald Hoyer |
e7efcf |
font-weight: bold;
|
|
Harald Hoyer |
e7efcf |
- background: #003d6e url(../images/h1-bg.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
color: white;
|
|
Harald Hoyer |
e7efcf |
text-align: center;
|
|
Harald Hoyer |
e7efcf |
padding: 0.7em;
|
|
Harald Hoyer |
e7efcf |
@@ -480,106 +440,14 @@ h3.author {
|
|
Harald Hoyer |
e7efcf |
font-weight:bold;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-/* inline syntax highlighting */
|
|
Harald Hoyer |
e7efcf |
-.perl_Alert {
|
|
Harald Hoyer |
e7efcf |
- color: #0000ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_BaseN {
|
|
Harald Hoyer |
e7efcf |
- color: #007f00;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_BString {
|
|
Harald Hoyer |
e7efcf |
- color: #5C3566;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Char {
|
|
Harald Hoyer |
e7efcf |
- color: #ff00ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Comment {
|
|
Harald Hoyer |
e7efcf |
- color: #FF00FF;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_DataType {
|
|
Harald Hoyer |
e7efcf |
- color: #0000ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_DecVal {
|
|
Harald Hoyer |
e7efcf |
- color: #00007f;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Error {
|
|
Harald Hoyer |
e7efcf |
- color: #ff0000;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Float {
|
|
Harald Hoyer |
e7efcf |
- color: #00007f;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Function {
|
|
Harald Hoyer |
e7efcf |
- color: #007f00;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_IString {
|
|
Harald Hoyer |
e7efcf |
- color: #5C3566;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Keyword {
|
|
Harald Hoyer |
e7efcf |
- color: #002F5D;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Operator {
|
|
Harald Hoyer |
e7efcf |
- color: #ffa500;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Others {
|
|
Harald Hoyer |
e7efcf |
- color: #b03060;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_RegionMarker {
|
|
Harald Hoyer |
e7efcf |
- color: #96b9ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Reserved {
|
|
Harald Hoyer |
e7efcf |
- color: #9b30ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_String {
|
|
Harald Hoyer |
e7efcf |
- color: #5C3566;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Variable {
|
|
Harald Hoyer |
e7efcf |
- color: #0000ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.perl_Warning {
|
|
Harald Hoyer |
e7efcf |
- color: #0000ff;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
/*Lists*/
|
|
Harald Hoyer |
e7efcf |
ul {
|
|
Harald Hoyer |
e7efcf |
padding-left:1.6em;
|
|
Harald Hoyer |
e7efcf |
- list-style-image:url(../images/dot.png);
|
|
Harald Hoyer |
e7efcf |
list-style-type: circle;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
ul ul {
|
|
Harald Hoyer |
e7efcf |
- list-style-image:url(../images/dot2.png);
|
|
Harald Hoyer |
e7efcf |
list-style-type: circle;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
@@ -769,21 +637,6 @@ code {
|
|
Harald Hoyer |
e7efcf |
word-wrap: break-word; /* Internet Explorer 5.5+ */
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-/*Notifications*/
|
|
Harald Hoyer |
e7efcf |
-div.warning:before {
|
|
Harald Hoyer |
e7efcf |
- content:url(../images/warning.png);
|
|
Harald Hoyer |
e7efcf |
- padding-left: 5px;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.note:before {
|
|
Harald Hoyer |
e7efcf |
- content:url(../images/note.png);
|
|
Harald Hoyer |
e7efcf |
- padding-left: 5px;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.important:before {
|
|
Harald Hoyer |
e7efcf |
- content:url(../images/important.png);
|
|
Harald Hoyer |
e7efcf |
- padding-left: 5px;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
div.warning, div.note, div.important {
|
|
Harald Hoyer |
e7efcf |
color: black;
|
|
Harald Hoyer |
e7efcf |
@@ -792,7 +645,8 @@ div.warning, div.note, div.important {
|
|
Harald Hoyer |
e7efcf |
background: none;
|
|
Harald Hoyer |
e7efcf |
background-color: white;
|
|
Harald Hoyer |
e7efcf |
margin-bottom: 1em;
|
|
Harald Hoyer |
e7efcf |
- border-bottom: 1px solid #aaaaaa;
|
|
Harald Hoyer |
e7efcf |
+ padding-left: 1em;
|
|
Harald Hoyer |
e7efcf |
+ border-left: 2px solid #aaaaaa;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
div.warning h2, div.note h2,div.important h2 {
|
|
Harald Hoyer |
e7efcf |
@@ -817,20 +671,6 @@ div.admonition_header {
|
|
Harald Hoyer |
e7efcf |
font-size: 1.0em;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-div.warning div.admonition_header {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/red.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
- background-color: #590000;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.note div.admonition_header {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/green.png) top right repeat-x;
|
|
Harald Hoyer |
e7efcf |
- background-color: #597800;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.important div.admonition_header {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/yellow.png) top right repeat-x;
|
|
Harald Hoyer |
e7efcf |
- background-color: #a6710f;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
div.warning p, div.warning div.para,
|
|
Harald Hoyer |
e7efcf |
div.note p, div.note div.para,
|
|
Harald Hoyer |
e7efcf |
@@ -1131,266 +971,6 @@ ul li p:last-child, ul li div.para:last-child {
|
|
Harald Hoyer |
e7efcf |
padding-bottom:0em;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-/*document navigation*/
|
|
Harald Hoyer |
e7efcf |
-.docnav a, .docnav strong {
|
|
Harald Hoyer |
e7efcf |
- border:none;
|
|
Harald Hoyer |
e7efcf |
- text-decoration:none;
|
|
Harald Hoyer |
e7efcf |
- font-weight:normal;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav {
|
|
Harald Hoyer |
e7efcf |
- list-style:none;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- position:relative;
|
|
Harald Hoyer |
e7efcf |
- width:100%;
|
|
Harald Hoyer |
e7efcf |
- padding-bottom:2em;
|
|
Harald Hoyer |
e7efcf |
- padding-top:1em;
|
|
Harald Hoyer |
e7efcf |
- border-top:1px dotted #ccc;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li {
|
|
Harald Hoyer |
e7efcf |
- list-style:none;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- font-size:.8em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li:before {
|
|
Harald Hoyer |
e7efcf |
- content:" ";
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.previous, .docnav li.next {
|
|
Harald Hoyer |
e7efcf |
- position:absolute;
|
|
Harald Hoyer |
e7efcf |
- top:1em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.up, .docnav li.home {
|
|
Harald Hoyer |
e7efcf |
- margin:0em 1.5em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.previous {
|
|
Harald Hoyer |
e7efcf |
- left:0px;
|
|
Harald Hoyer |
e7efcf |
- text-align:left;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.next {
|
|
Harald Hoyer |
e7efcf |
- right:0px;
|
|
Harald Hoyer |
e7efcf |
- text-align:right;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.previous strong, .docnav li.next strong {
|
|
Harald Hoyer |
e7efcf |
- height:22px;
|
|
Harald Hoyer |
e7efcf |
- display:block;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav {
|
|
Harald Hoyer |
e7efcf |
- margin:0 auto;
|
|
Harald Hoyer |
e7efcf |
- text-align:center;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.next a strong {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/stock-go-forward.png) top right no-repeat;
|
|
Harald Hoyer |
e7efcf |
- padding-top:3px;
|
|
Harald Hoyer |
e7efcf |
- padding-bottom:4px;
|
|
Harald Hoyer |
e7efcf |
- padding-right:28px;
|
|
Harald Hoyer |
e7efcf |
- font-size:1.2em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.previous a strong {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/stock-go-back.png) top left no-repeat;
|
|
Harald Hoyer |
e7efcf |
- padding-top:3px;
|
|
Harald Hoyer |
e7efcf |
- padding-bottom:4px;
|
|
Harald Hoyer |
e7efcf |
- padding-left:28px;
|
|
Harald Hoyer |
e7efcf |
- padding-right:0.5em;
|
|
Harald Hoyer |
e7efcf |
- font-size:1.2em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.home a strong {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/stock-home.png) top left no-repeat;
|
|
Harald Hoyer |
e7efcf |
- padding:5px;
|
|
Harald Hoyer |
e7efcf |
- padding-left:28px;
|
|
Harald Hoyer |
e7efcf |
- font-size:1.2em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav li.up a strong {
|
|
Harald Hoyer |
e7efcf |
- background: url(../images/stock-go-up.png) top left no-repeat;
|
|
Harald Hoyer |
e7efcf |
- padding:5px;
|
|
Harald Hoyer |
e7efcf |
- padding-left:28px;
|
|
Harald Hoyer |
e7efcf |
- font-size:1.2em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav a:link, .docnav a:visited {
|
|
Harald Hoyer |
e7efcf |
- color:#666;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav a:hover, .docnav a:focus, .docnav a:active {
|
|
Harald Hoyer |
e7efcf |
- color:black;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav a {
|
|
Harald Hoyer |
e7efcf |
- max-width: 10em;
|
|
Harald Hoyer |
e7efcf |
- overflow:hidden;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav a:link strong {
|
|
Harald Hoyer |
e7efcf |
- text-decoration:none;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.docnav {
|
|
Harald Hoyer |
e7efcf |
- margin:0 auto;
|
|
Harald Hoyer |
e7efcf |
- text-align:center;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-ul.docnav {
|
|
Harald Hoyer |
e7efcf |
- margin-bottom: 1em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-/* Reports */
|
|
Harald Hoyer |
e7efcf |
-.reports ul {
|
|
Harald Hoyer |
e7efcf |
- list-style:none;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports li{
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports li.odd {
|
|
Harald Hoyer |
e7efcf |
- background-color: #eeeeee;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports dl {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- float:right;
|
|
Harald Hoyer |
e7efcf |
- margin-right: 17em;
|
|
Harald Hoyer |
e7efcf |
- margin-top:-1.3em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports dt {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports dd {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- padding-right:.5em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports h2, .reports h3{
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- padding-right:.5em;
|
|
Harald Hoyer |
e7efcf |
- font-size:10pt;
|
|
Harald Hoyer |
e7efcf |
- font-weight:normal;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.reports div.progress {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- float:right;
|
|
Harald Hoyer |
e7efcf |
- width:16em;
|
|
Harald Hoyer |
e7efcf |
- background:#c00 url(../images/shine.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- margin-top:-1.3em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- border:none;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-/*uniform*/
|
|
Harald Hoyer |
e7efcf |
-body.results, body.reports {
|
|
Harald Hoyer |
e7efcf |
- max-width:57em ;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-/*Progress Bar*/
|
|
Harald Hoyer |
e7efcf |
-div.progress {
|
|
Harald Hoyer |
e7efcf |
- display:block;
|
|
Harald Hoyer |
e7efcf |
- float:left;
|
|
Harald Hoyer |
e7efcf |
- width:16em;
|
|
Harald Hoyer |
e7efcf |
- background:#c00 url(../images/shine.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
- height:1em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.progress span {
|
|
Harald Hoyer |
e7efcf |
- height:1em;
|
|
Harald Hoyer |
e7efcf |
- float:left;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.progress span.translated {
|
|
Harald Hoyer |
e7efcf |
- background:#6c3 url(../images/shine.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-div.progress span.fuzzy {
|
|
Harald Hoyer |
e7efcf |
- background:#ff9f00 url(../images/shine.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-/*Results*/
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results ul {
|
|
Harald Hoyer |
e7efcf |
- list-style:none;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results li{
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results li.odd {
|
|
Harald Hoyer |
e7efcf |
- background-color: #eeeeee;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results dl {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- float:right;
|
|
Harald Hoyer |
e7efcf |
- margin-right: 17em;
|
|
Harald Hoyer |
e7efcf |
- margin-top:-1.3em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results dt {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results dd {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- padding-right:.5em;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results h2, .results h3 {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- padding-right:.5em;
|
|
Harald Hoyer |
e7efcf |
- font-size:10pt;
|
|
Harald Hoyer |
e7efcf |
- font-weight:normal;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
-.results div.progress {
|
|
Harald Hoyer |
e7efcf |
- display:inline;
|
|
Harald Hoyer |
e7efcf |
- float:right;
|
|
Harald Hoyer |
e7efcf |
- width:16em;
|
|
Harald Hoyer |
e7efcf |
- background:#c00 url(../images/shine.png) top left repeat-x;
|
|
Harald Hoyer |
e7efcf |
- margin:0em;
|
|
Harald Hoyer |
e7efcf |
- margin-top:-1.3em;
|
|
Harald Hoyer |
e7efcf |
- padding:0em;
|
|
Harald Hoyer |
e7efcf |
- border:none;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
/* Dirty EVIL Mozilla hack for round corners */
|
|
Harald Hoyer |
e7efcf |
pre {
|
|
Harald Hoyer |
e7efcf |
@@ -1423,12 +1003,6 @@ span.remark {
|
|
Harald Hoyer |
e7efcf |
background-color: #ff00ff;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-.draft {
|
|
Harald Hoyer |
e7efcf |
- background-image: url(../images/watermark-draft.png);
|
|
Harald Hoyer |
e7efcf |
- background-repeat: repeat-y;
|
|
Harald Hoyer |
e7efcf |
- background-position: center;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
.foreignphrase {
|
|
Harald Hoyer |
e7efcf |
font-style: inherit;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
@@ -1513,10 +1087,6 @@ h1 {
|
|
Harald Hoyer |
e7efcf |
color:#3c6eb4
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
|
|
Harald Hoyer |
e7efcf |
-.producttitle {
|
|
Harald Hoyer |
e7efcf |
- background: #3c6eb4 url(../images/h1-bg.png) top left repeat;
|
|
Harald Hoyer |
e7efcf |
-}
|
|
Harald Hoyer |
e7efcf |
-
|
|
Harald Hoyer |
e7efcf |
.section h1.title {
|
|
Harald Hoyer |
e7efcf |
color:#3c6eb4;
|
|
Harald Hoyer |
e7efcf |
}
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.modules.7.asc b/dracut.modules.7.asc
|
|
Harald Hoyer |
e7efcf |
new file mode 100644
|
|
Harald Hoyer |
e7efcf |
index 0000000..4cb2aa1
|
|
Harald Hoyer |
e7efcf |
--- /dev/null
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.modules.7.asc
|
|
Harald Hoyer |
e7efcf |
@@ -0,0 +1,293 @@
|
|
Harald Hoyer |
e7efcf |
+DRACUT.MODULES(7)
|
|
Harald Hoyer |
e7efcf |
+=================
|
|
Harald Hoyer |
e7efcf |
+:doctype: manpage
|
|
Harald Hoyer |
e7efcf |
+:man source: dracut
|
|
Harald Hoyer |
e7efcf |
+:man manual: dracut
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+NAME
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+dracut.modules - dracut modules
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+DESCRIPTION
|
|
Harald Hoyer |
e7efcf |
+-----------
|
|
Harald Hoyer |
e7efcf |
+== dracut Components
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+dracut uses a modular system to build and extend the initramfs image. All
|
|
Harald Hoyer |
e7efcf |
+modules are located in _/usr/lib/dracut/modules.d_ or in _<git-src>/modules.d_.
|
|
Harald Hoyer |
e7efcf |
+The most basic dracut module is _99base_. In _99base_ the initial shell script
|
|
Harald Hoyer |
e7efcf |
+init is defined, which gets run by the kernel after initramfs loading. Although
|
|
Harald Hoyer |
e7efcf |
+you can replace init with your own version of _99base_, this is not encouraged.
|
|
Harald Hoyer |
e7efcf |
+Instead you should use, if possible, the hooks of dracut. All hooks, and the
|
|
Harald Hoyer |
e7efcf |
+point of time in which they are executed, are described in <<stages>>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The main script, which creates the initramfs is dracut itsself. It parses all
|
|
Harald Hoyer |
e7efcf |
+arguments and sets up the directory, in which everything is installed. It then
|
|
Harald Hoyer |
e7efcf |
+executes all check, install, installkernel scripts found in the modules, which
|
|
Harald Hoyer |
e7efcf |
+are to be processed. After everything is installed, the install directory is
|
|
Harald Hoyer |
e7efcf |
+archived and compressed to the final initramfs image. All helper functions used
|
|
Harald Hoyer |
e7efcf |
+by check, install and installkernel are found in in the file _dracut-functions_.
|
|
Harald Hoyer |
e7efcf |
+These shell functions are available to all module installer (install,
|
|
Harald Hoyer |
e7efcf |
+installkernel) scripts, without the need to source _dracut-functions_.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+A module can check the preconditions for install and installkernel with the
|
|
Harald Hoyer |
e7efcf |
+check script. Also dependencies can be expressed with check. If a module passed
|
|
Harald Hoyer |
e7efcf |
+check, install and installkernel will be called to install all of the necessary
|
|
Harald Hoyer |
e7efcf |
+files for the module. To split between kernel and non-kernel parts of the
|
|
Harald Hoyer |
e7efcf |
+installation, all kernel module related parts have to be in installkernel. All
|
|
Harald Hoyer |
e7efcf |
+other files found in a module directory are module specific and mostly are hook
|
|
Harald Hoyer |
e7efcf |
+scripts and udev rules.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[stages]]
|
|
Harald Hoyer |
e7efcf |
+== Boot Process Stages
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+dracut modules can insert custom script at various points, to control the boot
|
|
Harald Hoyer |
e7efcf |
+process.
|
|
Harald Hoyer |
e7efcf |
+These hooks are plain directories containing shell scripts ending with ".sh",
|
|
Harald Hoyer |
e7efcf |
+which are sourced by init.
|
|
Harald Hoyer |
e7efcf |
+Common used functions are in _dracut-lib.sh_, which can be sourced by any script.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: cmdline
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The _cmdline_ hook is a place to insert scripts to parse the kernel command line
|
|
Harald Hoyer |
e7efcf |
+and prepare the later actions, like setting up udev rules and configuration
|
|
Harald Hoyer |
e7efcf |
+files.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+In this hook the most important environment variable is defined: root. The
|
|
Harald Hoyer |
e7efcf |
+second one is rootok, which indicates, that a module claimed to be able to parse
|
|
Harald Hoyer |
e7efcf |
+the root defined. So for example, **root=**__iscsi:....__ will be claimed by the
|
|
Harald Hoyer |
e7efcf |
+iscsi dracut module, which then sets rootok.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: pre-udev
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hook is executed right after the cmdline hook and a check if root and
|
|
Harald Hoyer |
e7efcf |
+rootok were set. Here modules can take action with the final root, and before
|
|
Harald Hoyer |
e7efcf |
+udev has been run.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Start Udev
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Now udev is started and the logging for udev is setup.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: pre-trigger
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+In this hook, you can set udev environment variables with **udevadm control
|
|
Harald Hoyer |
e7efcf |
+--property=KEY=_value_** or control the further execution of udev with
|
|
Harald Hoyer |
e7efcf |
+udevadm.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Trigger Udev
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+udev is triggered by calling udevadm trigger, which sends add events for all
|
|
Harald Hoyer |
e7efcf |
+devices and subsystems.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Main Loop
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+In the main loop of dracut loops until udev has settled and
|
|
Harald Hoyer |
e7efcf |
+all scripts in _initqueue/finished_ returned true.
|
|
Harald Hoyer |
e7efcf |
+In this loop there are three hooks, where scripts can be inserted
|
|
Harald Hoyer |
e7efcf |
+by calling /sbin/initqueue.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Initqueue
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hook gets executed every time a script is inserted here, regardless of the
|
|
Harald Hoyer |
e7efcf |
+udev state.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Initqueue settled
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hooks (initqueue/settled) gets executed every time udev has settled.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Initqueue timeout
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hooks (initqueue/timeout) gets executed, when the main loop counter becomes half of the
|
|
Harald Hoyer |
e7efcf |
+rd.retry counter.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Initqueue finished
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hook (initqueue/finished) is called after udev has settled and
|
|
Harald Hoyer |
e7efcf |
+if all scripts herein return 0 the main loop will be ended.
|
|
Harald Hoyer |
e7efcf |
+Abritary scripts can be added here, to loop in the
|
|
Harald Hoyer |
e7efcf |
+initqueue until something happens, which a dracut module wants to wait for.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: pre-mount
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Before the root device is mounted all scripts in the hook pre-mount are
|
|
Harald Hoyer |
e7efcf |
+executed. In some cases (e.g. NFS) the real root device is already mounted,
|
|
Harald Hoyer |
e7efcf |
+though.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: mount
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hook is mainly to mount the real root device.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: pre-pivot
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hook is called before cleanup hook, This is a good place for
|
|
Harald Hoyer |
e7efcf |
+actions other than cleanups which need to be called before pivot.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Hook: cleanup
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This hook is the last hook and is called before init finally switches root to
|
|
Harald Hoyer |
e7efcf |
+the real root device. This is a good place to clean up and kill processes not
|
|
Harald Hoyer |
e7efcf |
+needed anymore.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Cleanup and switch_root
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Init (or systemd) kills all udev processes, cleans up the environment,
|
|
Harald Hoyer |
e7efcf |
+sets up the arguments for the real init process and finally calls switch_root.
|
|
Harald Hoyer |
e7efcf |
+switch_root removes the whole filesystem hierarchy of the initramfs,
|
|
Harald Hoyer |
e7efcf |
+chroot()s to the real root device and calls /sbin/init with the specified arguments.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To ensure all files in the initramfs hierarchy can be removed, all processes
|
|
Harald Hoyer |
e7efcf |
+still running from the initramfs should not have any open file descriptors left.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+== Network Infrastructure
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+FIXME
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+== Writing a Module
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+A simple example module is _96insmodpost_, which modprobes a kernel module after
|
|
Harald Hoyer |
e7efcf |
+udev has settled and the basic device drivers have been loaded.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+All module installation information is in the file module-setup.sh.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+First we create a check() function, which just exits with 0 indicating that this
|
|
Harald Hoyer |
e7efcf |
+module should be included by default.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+check():
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+return 0
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The we create the install() function, which installs a cmdline hook with
|
|
Harald Hoyer |
e7efcf |
+priority number 20 called _parse-insmodpost.sh_. It also installs the
|
|
Harald Hoyer |
e7efcf |
+_insmodpost.sh_ script in _/sbin_.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+install():
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+inst_hook cmdline 20 "$moddir/parse-insmodpost.sh"
|
|
Harald Hoyer |
e7efcf |
+inst_simple "$moddir/insmodpost.sh" /sbin/insmodpost.sh
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The _pase-instmodpost.sh_ parses the kernel command line for a argument
|
|
Harald Hoyer |
e7efcf |
+rd.driver.post, blacklists the module from being autoloaded and installs the
|
|
Harald Hoyer |
e7efcf |
+hook _insmodpost.sh_ in the _initqueue/settled_.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+_parse-insmodpost.sh_:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+for p in $(getargs rd.driver.post=); do
|
|
Harald Hoyer |
e7efcf |
+ echo "blacklist $p" >> /etc/modprobe.d/initramfsblacklist.conf
|
|
Harald Hoyer |
e7efcf |
+ _do_insmodpost=1
|
|
Harald Hoyer |
e7efcf |
+done
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[ -n "$_do_insmodpost" ] && /sbin/initqueue --settled --unique --onetime /sbin/insmodpost.sh
|
|
Harald Hoyer |
e7efcf |
+unset _do_insmodpost
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+_insmodpost.sh_, which is called in the _initqueue/settled_ hook will just
|
|
Harald Hoyer |
e7efcf |
+modprobe the kernel modules specified in all rd.driver.post kernel command line
|
|
Harald Hoyer |
e7efcf |
+parameters. It runs after udev has settled and is only called once (--onetime).
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+_insmodpost.sh_:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+. /lib/dracut-lib.sh
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+for p in $(getargs rd.driver.post=); do
|
|
Harald Hoyer |
e7efcf |
+ modprobe $p
|
|
Harald Hoyer |
e7efcf |
+done
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== module-setup.sh: check()
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+_check()_ is called by dracut to evaluate the inclusion of a dracut module in
|
|
Harald Hoyer |
e7efcf |
+the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+$hostonly:: If the $hostonly variable is set, then the module check() function
|
|
Harald Hoyer |
e7efcf |
+should be in "hostonly" mode, which means, that the check() should only return
|
|
Harald Hoyer |
e7efcf |
+0, if the module is really needed to boot this specific host.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+check() should return with:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+0:: Include the dracut module in the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+1:: Do not include the dracut module. The requirements are not fullfilled
|
|
Harald Hoyer |
e7efcf |
+(missing tools, etc.)
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+255:: Only include the dracut module, if another module requires it or if
|
|
Harald Hoyer |
e7efcf |
+explicitly specified in the config file or on the argument list.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== module-setup.sh: depends()
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The function depends() should echo all other dracut module names the module
|
|
Harald Hoyer |
e7efcf |
+depends on.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== module-setup.sh: cmdline()
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This function should print the kernel command line options needed to boot the current
|
|
Harald Hoyer |
e7efcf |
+machine setup. It should start with a space and should not print a newline.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== module-setup.sh: install()
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The install() function is called to install everything non-kernel related. To install
|
|
Harald Hoyer |
e7efcf |
+binaries, scripts, and other files, you can use the functions mentioned in <<creation>>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To address a file in the current module directory, use the variable "$moddir".
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== module-setup.sh: installkernel()
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+In installkernel() all kernel related files should be installed. You can use all of the functions
|
|
Harald Hoyer |
e7efcf |
+mentioned in <<creation>> to install files.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== [[creation]]Creation Functions
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== inst_multiple [-o] <file> [ <file> ...]
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+installs multiple binaries and files. If executables are specified without a path, dracut
|
|
Harald Hoyer |
e7efcf |
+will search the path PATH=/usr/sbin:/sbin:/usr/bin:/bin for the binary. If the option "-o"
|
|
Harald Hoyer |
e7efcf |
+is given as the first parameter, a missing file does not lead to an error.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== inst <src> [<dst>]
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+installs _one_ file <src> either to the same place in the initramfs or to an optional <dst>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== inst_hook <hookdir> <prio> <src>
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+installs an executable/script <src> in the dracut hook <hookdir> with priority <prio>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== inst_rules <udevrule> [ <udevrule> ...]
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+installs one ore more udev rules. Non-existant udev rules are reported, but do not let dracut fail.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== instmods <kernelmodule> [ <kernelmodule> ... ]
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+instmods should be used only in the installkernel() function.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+instmods installs one or more kernel modules in the initramfs. <kernelmodule> can also be a whole
|
|
Harald Hoyer |
e7efcf |
+subsystem, if prefixed with a "=", like "=drivers/net/team".
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+instmods will not install the kernel module, if $hostonly is set and the kernel module is not currently
|
|
Harald Hoyer |
e7efcf |
+needed by any /sys/*...*/uevent MODALIAS.
|
|
Harald Hoyer |
e7efcf |
+To install a kernel module regardless of the hostonly mode use the form:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+hostonly='' instmods <kernelmodule>
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Initramfs Functions
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+FIXME
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Network Modules
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+FIXME
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+AUTHOR
|
|
Harald Hoyer |
e7efcf |
+------
|
|
Harald Hoyer |
e7efcf |
+Harald Hoyer
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+SEE ALSO
|
|
Harald Hoyer |
e7efcf |
+--------
|
|
Harald Hoyer |
e7efcf |
+*dracut*(8)
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.spec b/dracut.spec
|
|
Harald Hoyer |
e7efcf |
index 44fff00..3ec0ec0 100644
|
|
Harald Hoyer |
e7efcf |
--- a/dracut.spec
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.spec
|
|
Harald Hoyer |
e7efcf |
@@ -314,6 +314,7 @@ rm -rf -- $RPM_BUILD_ROOT
|
|
Harald Hoyer |
e7efcf |
%endif
|
|
Harald Hoyer |
e7efcf |
%{_mandir}/man7/dracut.kernel.7*
|
|
Harald Hoyer |
e7efcf |
%{_mandir}/man7/dracut.cmdline.7*
|
|
Harald Hoyer |
e7efcf |
+%{_mandir}/man7/dracut.modules.7*
|
|
Harald Hoyer |
e7efcf |
%{_mandir}/man7/dracut.bootup.7*
|
|
Harald Hoyer |
e7efcf |
%{_mandir}/man5/dracut.conf.5*
|
|
Harald Hoyer |
e7efcf |
%if %{defined _unitdir}
|
|
Harald Hoyer |
e7efcf |
diff --git a/dracut.usage.asc b/dracut.usage.asc
|
|
Harald Hoyer |
e7efcf |
new file mode 100644
|
|
Harald Hoyer |
e7efcf |
index 0000000..6d37920
|
|
Harald Hoyer |
e7efcf |
--- /dev/null
|
|
Harald Hoyer |
e7efcf |
+++ b/dracut.usage.asc
|
|
Harald Hoyer |
e7efcf |
@@ -0,0 +1,526 @@
|
|
Harald Hoyer |
e7efcf |
+To create a initramfs image, the most simple command is:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This will generate a general purpose initramfs image, with all possible
|
|
Harald Hoyer |
e7efcf |
+functionality resulting of the combination of the installed dracut modules and
|
|
Harald Hoyer |
e7efcf |
+system tools. The image is /boot/initramfs-_++<kernel version>++_.img and
|
|
Harald Hoyer |
e7efcf |
+contains the kernel modules of the currently active kernel with version
|
|
Harald Hoyer |
e7efcf |
+_++<kernel version>++_.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If the initramfs image already exists, dracut will display an error message, and
|
|
Harald Hoyer |
e7efcf |
+to overwrite the existing image, you have to use the --force option.
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --force
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If you want to specify another filename for the resulting image you would issue
|
|
Harald Hoyer |
e7efcf |
+a command like:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut foobar.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To generate an image for a specific kernel version, the command would be:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut foobar.img 2.6.40-1.rc5.f20
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+A shortcut to generate the image at the default location for a specific kernel
|
|
Harald Hoyer |
e7efcf |
+version is:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --kver 2.6.40-1.rc5.f20
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If you want to create lighter, smaller initramfs images, you may want to specify
|
|
Harald Hoyer |
e7efcf |
+the --hostonly or -H option. Using this option, the resulting image will
|
|
Harald Hoyer |
e7efcf |
+contain only those dracut modules, kernel modules and filesystems, which are
|
|
Harald Hoyer |
e7efcf |
+needed to boot this specific machine. This has the drawback, that you can't put
|
|
Harald Hoyer |
e7efcf |
+the disk on another controller or machine, and that you can't switch to another
|
|
Harald Hoyer |
e7efcf |
+root filesystem, without recreating the initramfs image. The usage of the
|
|
Harald Hoyer |
e7efcf |
+--hostonly option is only for experts and you will have to keep the broken
|
|
Harald Hoyer |
e7efcf |
+pieces. At least keep a copy of a general purpose image (and corresponding
|
|
Harald Hoyer |
e7efcf |
+kernel) as a fallback to rescue your system.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Inspecting the Contents
|
|
Harald Hoyer |
e7efcf |
+To see the contents of the image created by dracut, you can use the lsinitrd tool.
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# lsinitrd | less
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To display the contents of a file in the initramfs also use the lsinitrd tool:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# lsinitrd -f /etc/ld.so.conf
|
|
Harald Hoyer |
e7efcf |
+include ld.so.conf.d/*.conf
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Adding dracut Modules
|
|
Harald Hoyer |
e7efcf |
+Some dracut modules are turned off by default and have to be activated manually.
|
|
Harald Hoyer |
e7efcf |
+You can do this by adding the dracut modules to the configuration file
|
|
Harald Hoyer |
e7efcf |
+_/etc/dracut.conf_ or _/etc/dracut.conf.d/myconf.conf_. See *dracut.conf*(5).
|
|
Harald Hoyer |
e7efcf |
+You can also add dracut modules on the command line
|
|
Harald Hoyer |
e7efcf |
+by using the -a or --add option:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --add bootchart initramfs-bootchart.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To see a list of available dracut modules, use the --list-modules option:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --list-modules
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Omitting dracut Modules
|
|
Harald Hoyer |
e7efcf |
+Sometimes you don't want a dracut module to be included for reasons of speed,
|
|
Harald Hoyer |
e7efcf |
+size or functionality. To do this, either specify the omit_dracutmodules
|
|
Harald Hoyer |
e7efcf |
+variable in the _dracut.conf_ or _/etc/dracut.conf.d/myconf.conf_ configuration
|
|
Harald Hoyer |
e7efcf |
+file (see *dracut.conf*(5)), or use the -o or --omit option
|
|
Harald Hoyer |
e7efcf |
+on the command line:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut -o "multipath lvm" no-multipath-lvm.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Adding Kernel Modules
|
|
Harald Hoyer |
e7efcf |
+If you need a special kernel module in the initramfs, which is not
|
|
Harald Hoyer |
e7efcf |
+automatically picked up by dracut, you have the use the --add-drivers option
|
|
Harald Hoyer |
e7efcf |
+on the command line or the drivers vaiable in the _/etc/dracut.conf_
|
|
Harald Hoyer |
e7efcf |
+or _/etc/dracut.conf.d/myconf.conf_ configuration file (see *dracut.conf*(5)):
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --add-drivers mymod initramfs-with-mymod.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+=== Boot parameters
|
|
Harald Hoyer |
e7efcf |
+An initramfs generated without the "hostonly" mode, does not contain any system
|
|
Harald Hoyer |
e7efcf |
+configuration files (except for some special exceptions), so the configuration
|
|
Harald Hoyer |
e7efcf |
+has to be done on the kernel command line. With this flexibility, you can easily
|
|
Harald Hoyer |
e7efcf |
+boot from a changed root partition, without the need to recompile the initramfs
|
|
Harald Hoyer |
e7efcf |
+image. So, you could completly change your root partition (move it inside a md
|
|
Harald Hoyer |
e7efcf |
+raid with encryption and LVM on top), as long as you specify the correct
|
|
Harald Hoyer |
e7efcf |
+filesystem LABEL or UUID on the kernel command line for your root device, dracut
|
|
Harald Hoyer |
e7efcf |
+will find it and boot from it.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The kernel command line usually can be configured in _/boot/grub/grub.conf_, if
|
|
Harald Hoyer |
e7efcf |
+grub is your bootloader and it also can be edited in the real boot process in
|
|
Harald Hoyer |
e7efcf |
+the grub menu.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The kernel command line can also be provided by the dhcp server with the
|
|
Harald Hoyer |
e7efcf |
+root-path option. See <<NetworkBoot>>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+For a full reference of all kernel command line parameters, see *dracut.cmdline*(5).
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To get a quick start for the suitable kernel command line on your system, use the
|
|
Harald Hoyer |
e7efcf |
+__--print-cmdline__ option:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --print-cmdline
|
|
Harald Hoyer |
e7efcf |
+ root=UUID=8b8b6f91-95c7-4da2-831b-171e12179081 rootflags=rw,relatime,discard,data=ordered rootfstype=ext4
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Specifying the root Device
|
|
Harald Hoyer |
e7efcf |
+This is the only option dracut really needs to boot from your root partition.
|
|
Harald Hoyer |
e7efcf |
+Because your root partition can live in various environments, there are a lot of
|
|
Harald Hoyer |
e7efcf |
+formats for the root= option. The most basic one is root=_++
|
|
Harald Hoyer |
e7efcf |
+node>++_:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+root=/dev/sda2
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Because device node names can change, dependent on the drive ordering, you are
|
|
Harald Hoyer |
e7efcf |
+encouraged to use the filesystem identifier (UUID) or filesystem label (LABEL)
|
|
Harald Hoyer |
e7efcf |
+to specify your root partition:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+root=UUID=19e9dda3-5a38-484d-a9b0-fa6b067d0331
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+or
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+root=LABEL=myrootpartitionlabel
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To see all UUIDs or LABELs on your system, do:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# ls -l /dev/disk/by-uuid
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+or
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# ls -l /dev/disk/by-label
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If your root partition is on the network see <<NetworkBoot>>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Keyboard Settings
|
|
Harald Hoyer |
e7efcf |
+If you have to input passwords for encrypted disk volumes, you might want to set
|
|
Harald Hoyer |
e7efcf |
+the keyboard layout and specify a display font.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+A typical german kernel command would contain:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+rd.vconsole.font=latarcyrheb-sun16 rd.vconsole.keymap=de-latin1-nodeadkeys rd.locale.LANG=de_DE.UTF-8
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Setting these options can override the setting stored on your system, if you use
|
|
Harald Hoyer |
e7efcf |
+a modern init system, like systemd.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Blacklisting Kernel Modules
|
|
Harald Hoyer |
e7efcf |
+Sometimes it is required to prevent the automatic kernel module loading of a
|
|
Harald Hoyer |
e7efcf |
+specific kernel module. To do this, just add rd.blacklist=_++
|
|
Harald Hoyer |
e7efcf |
+name>++_, with _++<kernel module name>++_ not containing the _.ko_
|
|
Harald Hoyer |
e7efcf |
+suffix, to the kernel command line. For example:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+rd.driver.blacklist=mptsas rd.driver.blacklist=nouveau
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The option can be specified multiple times on the kernel command line.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Speeding up the Boot Process
|
|
Harald Hoyer |
e7efcf |
+If you want to speed up the boot process, you can specify as much information
|
|
Harald Hoyer |
e7efcf |
+for dracut on the kernel command as possible. For example, you can tell dracut,
|
|
Harald Hoyer |
e7efcf |
+that you root partition is not on a LVM volume or not on a raid partition, or
|
|
Harald Hoyer |
e7efcf |
+that it lives inside a specific crypto LUKS encrypted volume. By default, dracut
|
|
Harald Hoyer |
e7efcf |
+searches everywhere. A typical dracut kernel command line for a plain primary or
|
|
Harald Hoyer |
e7efcf |
+logical partition would contain:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This turns off every automatic assembly of LVM, MD raids, DM raids and crypto LUKS.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Of course, you could also omit the dracut modules in the initramfs creation
|
|
Harald Hoyer |
e7efcf |
+process, but then you would lose the posibility to turn it on on demand.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[Injecting]]
|
|
Harald Hoyer |
e7efcf |
+=== Injecting custom Files
|
|
Harald Hoyer |
e7efcf |
+To add your own files to the initramfs image, you have several possibilities.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The --include option let you specify a source path and a target path. For example
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --include cmdline-preset /etc/cmdline.d/mycmdline.conf initramfs-cmdline-pre.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+will create an initramfs image, where the file cmdline-preset will be copied
|
|
Harald Hoyer |
e7efcf |
+inside the initramfs to _/etc/cmdline.d/mycmdline.conf_. --include can only be specified once.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# mkdir -p rd.live.overlay/etc/cmdline.d
|
|
Harald Hoyer |
e7efcf |
+# mkdir -p rd.live.overlay/etc/conf.d
|
|
Harald Hoyer |
e7efcf |
+# echo "ip=auto" >> rd.live.overlay/etc/cmdline.d/mycmdline.conf
|
|
Harald Hoyer |
e7efcf |
+# echo export FOO=testtest >> rd.live.overlay/etc/conf.d/testvar.conf
|
|
Harald Hoyer |
e7efcf |
+# echo export BAR=testtest >> rd.live.overlay/etc/conf.d/testvar.conf
|
|
Harald Hoyer |
e7efcf |
+# tree rd.live.overlay/
|
|
Harald Hoyer |
e7efcf |
+rd.live.overlay/
|
|
Harald Hoyer |
e7efcf |
+`-- etc
|
|
Harald Hoyer |
e7efcf |
+ |-- cmdline.d
|
|
Harald Hoyer |
e7efcf |
+ | `-- mycmdline.conf
|
|
Harald Hoyer |
e7efcf |
+ `-- conf.d
|
|
Harald Hoyer |
e7efcf |
+ `-- testvar.conf
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+# dracut --include rd.live.overlay / initramfs-rd.live.overlay.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This will put the contents of the rd.live.overlay directory into the root of the
|
|
Harald Hoyer |
e7efcf |
+initramfs image.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The --install option let you specify several files, which will get installed in
|
|
Harald Hoyer |
e7efcf |
+the initramfs image at the same location, as they are present on initramfs
|
|
Harald Hoyer |
e7efcf |
+creation time.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut --install 'strace fsck.ext3 ssh' initramfs-dbg.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This will create an initramfs with the strace, fsck.ext3 and ssh executables,
|
|
Harald Hoyer |
e7efcf |
+together with the libraries needed to start those. The --install option can be
|
|
Harald Hoyer |
e7efcf |
+specified multiple times.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[NetworkBoot]]
|
|
Harald Hoyer |
e7efcf |
+=== Network Boot
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If your root partition is on a network drive, you have to have the network
|
|
Harald Hoyer |
e7efcf |
+dracut modules installed to create a network aware initramfs image.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+On a Red Hat Enterprise Linux or Fedora system, this means, you have to install
|
|
Harald Hoyer |
e7efcf |
+the _dracut-network_ rpm package:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# yum install dracut-network
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The resulting initramfs image can be served by a boot manager residing on your
|
|
Harald Hoyer |
e7efcf |
+local hard drive or it can be served by a PXE/TFTP server.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+How to setup your PXE/TFTP server can be found in the
|
|
Harald Hoyer |
e7efcf |
+http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/[Red
|
|
Harald Hoyer |
e7efcf |
+Hat Enterprise Linux Storage Administration Guide].
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If you specify ip=auto on the kernel command line, then dracut asks a dhcp
|
|
Harald Hoyer |
e7efcf |
+server about the ip adress for the machine. The dhcp server can also serve an
|
|
Harald Hoyer |
e7efcf |
+additional root-path, which will set the root device for dracut. With this
|
|
Harald Hoyer |
e7efcf |
+mechanism, you have static configuration on your client machine and a
|
|
Harald Hoyer |
e7efcf |
+centralized boot configuration on your TFTP/DHCP server. If you can't pass a
|
|
Harald Hoyer |
e7efcf |
+kernel command line, then you can inject _/etc/cmdline.d/mycmdline.conf_, with a method described
|
|
Harald Hoyer |
e7efcf |
+in <<Injecting>>.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+==== Reducing the Image Size
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To reduce the size of the initramfs, you should create it with by ommitting all
|
|
Harald Hoyer |
e7efcf |
+dracut modules, which you know, you don't need to boot the machine.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+You can also specify the exact dracut and kernel modules to produce a very tiny
|
|
Harald Hoyer |
e7efcf |
+initramfs image.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+For example for a NFS image, you would do:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut -m "nfs network base" initramfs-nfs-only.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Then you would boot from this image with your target machine and reduce the size
|
|
Harald Hoyer |
e7efcf |
+once more by creating it on the target machine with the --host-only option:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# dracut -m "nfs network base" --host-only initramfs-nfs-host-only.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This will reduce the size of the initramfs image significantly.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+== Troubleshooting
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If the boot process does not succeed, you have several options to debug the
|
|
Harald Hoyer |
e7efcf |
+situation. Some of the basic operations are covered here. For more information
|
|
Harald Hoyer |
e7efcf |
+you should also visit:
|
|
Harald Hoyer |
e7efcf |
+http://fedoraproject.org/wiki/How_to_debug_Dracut_problems
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[identifying-your-problem-area]]
|
|
Harald Hoyer |
e7efcf |
+=== Identifying your problem area
|
|
Harald Hoyer |
e7efcf |
+. Remove ''rhgb'' and ''quiet'' from the kernel command line
|
|
Harald Hoyer |
e7efcf |
+. Add ''rd.shell'' to the kernel command line. This will present a shell should
|
|
Harald Hoyer |
e7efcf |
+dracut be unable to locate your root device
|
|
Harald Hoyer |
e7efcf |
+. Add ''rd.shell rd.debug log_buf_len=1M'' to the kernel command line so that
|
|
Harald Hoyer |
e7efcf |
+dracut shell commands are printed as they are executed
|
|
Harald Hoyer |
e7efcf |
+. The file /run/initramfs/rdsosreport.txt is generated,
|
|
Harald Hoyer |
e7efcf |
+which contains all the logs and the output of all significant tools, which are mentioned later.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+If you want to save that output, simply mount /boot by hand or insert an USB stick and mount that.
|
|
Harald Hoyer |
e7efcf |
+Then you can store the output for later inspection.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[information-to-include-in-your-report]]
|
|
Harald Hoyer |
e7efcf |
+=== Information to include in your report
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[all-bug-reports]]
|
|
Harald Hoyer |
e7efcf |
+==== All bug reports
|
|
Harald Hoyer |
e7efcf |
+In all cases, the following should be mentioned and attached to your bug report:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+* The exact kernel command-line used. Typically from the bootloader
|
|
Harald Hoyer |
e7efcf |
+configuration file (e.g. _/etc/grub.conf_) or from _/proc/cmdline_.
|
|
Harald Hoyer |
e7efcf |
+* A copy of your disk partition information from _/etc/fstab_, which might be
|
|
Harald Hoyer |
e7efcf |
+obtained booting an old working initramfs or a rescue medium.
|
|
Harald Hoyer |
e7efcf |
+* Turn on dracut debugging (see _the 'debugging dracut' section_), and attach
|
|
Harald Hoyer |
e7efcf |
+the file /run/initramfs/rdsosreport.txt.
|
|
Harald Hoyer |
e7efcf |
+* If you use a dracut configuration file, please include _/etc/dracut.conf_ and
|
|
Harald Hoyer |
e7efcf |
+all files in _/etc/dracut.conf.d/*.conf_
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[network-root-device-related-problems]]
|
|
Harald Hoyer |
e7efcf |
+==== Network root device related problems
|
|
Harald Hoyer |
e7efcf |
+This section details information to include when experiencing problems on a
|
|
Harald Hoyer |
e7efcf |
+system whose root device is located on a network attached volume (e.g. iSCSI,
|
|
Harald Hoyer |
e7efcf |
+NFS or NBD). As well as the information from <<all-bug-reports>>, include the
|
|
Harald Hoyer |
e7efcf |
+following information:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+* Please include the output of
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# /sbin/ifup <interfacename>
|
|
Harald Hoyer |
e7efcf |
+# ip addr show
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[debugging-dracut]]
|
|
Harald Hoyer |
e7efcf |
+=== Debugging dracut
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[configure-a-serial-console]]
|
|
Harald Hoyer |
e7efcf |
+==== Configure a serial console
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+Successfully debugging dracut will require some form of console
|
|
Harald Hoyer |
e7efcf |
+logging during the system boot. This section documents configuring a
|
|
Harald Hoyer |
e7efcf |
+serial console connection to record boot messages.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+. First, enable serial console output for both the kernel and the bootloader.
|
|
Harald Hoyer |
e7efcf |
+. Open the file _/etc/grub.conf_ for editing. Below the line ''timeout=5'', add
|
|
Harald Hoyer |
e7efcf |
+the following:
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+serial --unit=0 --speed=9600
|
|
Harald Hoyer |
e7efcf |
+terminal --timeout=5 serial console
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. Also in _/etc/grub.conf_, add the following boot arguemnts to the ''kernel''
|
|
Harald Hoyer |
e7efcf |
+line:
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+console=tty0 console=ttyS0,9600
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. When finished, the _/etc/grub.conf_ file should look similar to the example
|
|
Harald Hoyer |
e7efcf |
+below.
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+default=0
|
|
Harald Hoyer |
e7efcf |
+timeout=5
|
|
Harald Hoyer |
e7efcf |
+serial --unit=0 --speed=9600
|
|
Harald Hoyer |
e7efcf |
+terminal --timeout=5 serial console
|
|
Harald Hoyer |
e7efcf |
+title Fedora (2.6.29.5-191.fc11.x86_64)
|
|
Harald Hoyer |
e7efcf |
+ root (hd0,0)
|
|
Harald Hoyer |
e7efcf |
+ kernel /vmlinuz-2.6.29.5-191.fc11.x86_64 ro root=/dev/mapper/vg_uc1-lv_root console=tty0 console=ttyS0,9600
|
|
Harald Hoyer |
e7efcf |
+ initrd /dracut-2.6.29.5-191.fc11.x86_64.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. More detailed information on how to configure the kernel for console output
|
|
Harald Hoyer |
e7efcf |
+can be found at
|
|
Harald Hoyer |
e7efcf |
+http://www.faqs.org/docs/Linux-HOWTO/Remote-Serial-Console-HOWTO.html#CONFIGURE-KERNEL.
|
|
Harald Hoyer |
e7efcf |
+. Redirecting non-interactive output
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+NOTE: You can redirect all non-interactive output to _/dev/kmsg_ and the kernel
|
|
Harald Hoyer |
e7efcf |
+will put it out on the console when it reaches the kernel buffer by doing
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# exec >/dev/kmsg 2>&1
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+--
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[using-the-dracut-shell]]
|
|
Harald Hoyer |
e7efcf |
+==== Using the dracut shell
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+dracut offers a shell for interactive debugging in the event dracut fails to
|
|
Harald Hoyer |
e7efcf |
+locate your root filesystem. To enable the shell:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+. Add the boot parameter ''rd.shell'' to your bootloader configuration file
|
|
Harald Hoyer |
e7efcf |
+(e.g. _/etc/grub.conf_)
|
|
Harald Hoyer |
e7efcf |
+. Remove the boot arguments ''rhgb'' and ''quiet''
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+A sample _/etc/grub.conf_ bootloader configuration file is listed below.
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+default=0
|
|
Harald Hoyer |
e7efcf |
+timeout=5
|
|
Harald Hoyer |
e7efcf |
+serial --unit=0 --speed=9600
|
|
Harald Hoyer |
e7efcf |
+terminal --timeout=5 serial console
|
|
Harald Hoyer |
e7efcf |
+title Fedora (2.6.29.5-191.fc11.x86_64)
|
|
Harald Hoyer |
e7efcf |
+ root (hd0,0)
|
|
Harald Hoyer |
e7efcf |
+ kernel /vmlinuz-2.6.29.5-191.fc11.x86_64 ro root=/dev/mapper/vg_uc1-lv_root console=tty0 rd.shell
|
|
Harald Hoyer |
e7efcf |
+ initrd /dracut-2.6.29.5-191.fc11.x86_64.img
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. If system boot fails, you will be dropped into a shell as seen in the example below.
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+No root device found
|
|
Harald Hoyer |
e7efcf |
+Dropping to debug shell.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+#
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. Use this shell prompt to gather the information requested above (see <<all-bug-reports>>).
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[accessing-the-root-volume-from-the-dracut-shell]]
|
|
Harald Hoyer |
e7efcf |
+==== Accessing the root volume from the dracut shell
|
|
Harald Hoyer |
e7efcf |
+From the dracut debug shell, you can manually perform the task of locating and
|
|
Harald Hoyer |
e7efcf |
+preparing your root volume for boot. The required steps will depend on how your
|
|
Harald Hoyer |
e7efcf |
+root volume is configured. Common scenarios include:
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+* A block device (e.g. _/dev/sda7_)
|
|
Harald Hoyer |
e7efcf |
+* A LVM logical volume (e.g. _/dev/VolGroup00/LogVol00_)
|
|
Harald Hoyer |
e7efcf |
+* An encrypted device (e.g. _/dev/mapper/luks-4d5972ea-901c-4584-bd75-1da802417d83_)
|
|
Harald Hoyer |
e7efcf |
+* A network attached device (e.g. netroot=iscsi:@192.168.0.4::3260::iqn.2009-02.org.fedoraproject:for.all)
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+The exact method for locating and preparing will vary. However, to continue with
|
|
Harald Hoyer |
e7efcf |
+a successful boot, the objective is to locate your root volume and create a
|
|
Harald Hoyer |
e7efcf |
+symlink _/dev/root_ which points to the file system. For example, the following
|
|
Harald Hoyer |
e7efcf |
+example demonstrates accessing and booting a root volume that is an encrypted
|
|
Harald Hoyer |
e7efcf |
+LVM Logical volume.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+. Inspect your partitions using parted
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# parted /dev/sda -s p
|
|
Harald Hoyer |
e7efcf |
+Model: ATA HTS541060G9AT00 (scsi)
|
|
Harald Hoyer |
e7efcf |
+Disk /dev/sda: 60.0GB
|
|
Harald Hoyer |
e7efcf |
+Sector size (logical/physical): 512B/512B
|
|
Harald Hoyer |
e7efcf |
+Partition Table: msdos
|
|
Harald Hoyer |
e7efcf |
+Number Start End Size Type File system Flags
|
|
Harald Hoyer |
e7efcf |
+1 32.3kB 10.8GB 107MB primary ext4 boot
|
|
Harald Hoyer |
e7efcf |
+2 10.8GB 55.6GB 44.7GB logical lvm
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. You recall that your root volume was a LVM logical volume. Scan and activate
|
|
Harald Hoyer |
e7efcf |
+any logical volumes.
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# lvm vgscan
|
|
Harald Hoyer |
e7efcf |
+# lvm vgchange -ay
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. You should see any logical volumes now using the command blkid:
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# blkid
|
|
Harald Hoyer |
e7efcf |
+/dev/sda1: UUID="3de247f3-5de4-4a44-afc5-1fe179750cf7" TYPE="ext4"
|
|
Harald Hoyer |
e7efcf |
+/dev/sda2: UUID="Ek4dQw-cOtq-5MJu-OGRF-xz5k-O2l8-wdDj0I" TYPE="LVM2_member"
|
|
Harald Hoyer |
e7efcf |
+/dev/mapper/linux-root: UUID="def0269e-424b-4752-acf3-1077bf96ad2c" TYPE="crypto_LUKS"
|
|
Harald Hoyer |
e7efcf |
+/dev/mapper/linux-home: UUID="c69127c1-f153-4ea2-b58e-4cbfa9257c5e" TYPE="ext3"
|
|
Harald Hoyer |
e7efcf |
+/dev/mapper/linux-swap: UUID="47b4d329-975c-4c08-b218-f9c9bf3635f1" TYPE="swap"
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. From the output above, you recall that your root volume exists on an encrypted
|
|
Harald Hoyer |
e7efcf |
+block device. Following the guidance disk encryption guidance from the
|
|
Harald Hoyer |
e7efcf |
+Installation Guide, you unlock your encrypted root volume.
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# UUID=$(cryptsetup luksUUID /dev/mapper/linux-root)
|
|
Harald Hoyer |
e7efcf |
+# cryptsetup luksOpen /dev/mapper/linux-root luks-$UUID
|
|
Harald Hoyer |
e7efcf |
+Enter passphrase for /dev/mapper/linux-root:
|
|
Harald Hoyer |
e7efcf |
+Key slot 0 unlocked.
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. Next, make a symbolic link to the unlocked root volume
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# ln -s /dev/mapper/luks-$UUID /dev/root
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+. With the root volume available, you may continue booting the system by exiting
|
|
Harald Hoyer |
e7efcf |
+the dracut shell
|
|
Harald Hoyer |
e7efcf |
++
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# exit
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[additional-dracut-boot-parameters]]
|
|
Harald Hoyer |
e7efcf |
+==== Additional dracut boot parameters
|
|
Harald Hoyer |
e7efcf |
+For more debugging options, see *dracut.cmdline*(7).
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+[[debugging-dracut-on-shutdown]]
|
|
Harald Hoyer |
e7efcf |
+==== Debugging dracut on shutdown
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To debug the shutdown sequence on systemd systems, you can _rd.break_
|
|
Harald Hoyer |
e7efcf |
+on _pre-shutdown_ or _shutdown_.
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+To do this from an already booted system:
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+# mkdir -p /run/initramfs/etc/cmdline.d
|
|
Harald Hoyer |
e7efcf |
+# echo "rd.break=pre-shutdown" > /run/initramfs/etc/cmdline.d/debug.conf
|
|
Harald Hoyer |
e7efcf |
+# touch /run/initramfs/.need_shutdown
|
|
Harald Hoyer |
e7efcf |
+----
|
|
Harald Hoyer |
e7efcf |
+
|
|
Harald Hoyer |
e7efcf |
+This will give you a dracut shell after the system pivot'ed back in the initramfs.
|
|
Harald Hoyer |
e7efcf |
+
|