]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
docs(dracut.conf): format and add missing options
authorAntonio Alvarez Feijoo <antonio.feijoo@suse.com>
Mon, 9 May 2022 10:30:55 +0000 (12:30 +0200)
committerJóhann B. Guðmundsson <johannbg@gmail.com>
Wed, 11 May 2022 04:43:10 +0000 (04:43 +0000)
Set common format to each option, add/correct default values and add missing
options:
    force_add_dracutmodules
    libdirs
    squash_compress
    aggresive_strip
    do_hardlink
    prefix
    hostonly_mode
    hostonly_nics
    sshkey
    regenerate_all
    noimageifnotneeded
    uefi
    machine_id
    enhanced_cpio

man/dracut.conf.5.asc

index 96d892c84f8a04ebf889b8e8a38d9adc70a9509e..f7e1c043c9053085b6f59f6fb4bae455eb416cfd 100644 (file)
@@ -36,20 +36,20 @@ Configuration files must have the extension .conf; other extensions are ignored.
     Add a space-separated list of dracut modules to call when building the
     initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
 
-*dracutmodules+=*" __<dracut modules>__ "::
-    Specify a space-separated list of dracut modules to call when building the
-    initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
-    This option forces dracut to only include the specified dracut modules.
-    In most cases the "add_dracutmodules" option is what you want to use.
+*force_add_dracutmodules+=*" __<dracut modules>__ "::
+    Force to add a space-separated list of dracut modules to the default set of
+    modules, when host-only mode is specified. This parameter can be specified
+    multiple times.
 
 *omit_dracutmodules+=*" __<dracut modules>__ "::
     Omit a space-separated list of dracut modules to call when building the
     initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
 
-*drivers+=*" __<kernel modules>__ "::
-    Specify a space-separated list of kernel modules to exclusively include in
-    the initramfs. The kernel modules have to be specified without the ".ko"
-    suffix.
+*dracutmodules+=*" __<dracut modules>__ "::
+    Specify a space-separated list of dracut modules to call when building the
+    initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
+    This option forces dracut to only include the specified dracut modules.
+    In most cases the "add_dracutmodules" option is what you want to use.
 
 *add_drivers+=*" __<kernel modules>__ "::
     Specify a space-separated list of kernel modules to add to the initramfs.
@@ -63,15 +63,24 @@ Configuration files must have the extension .conf; other extensions are ignored.
     Specify a space-separated list of kernel modules not to add to the
     initramfs. The kernel modules have to be specified without the ".ko" suffix.
 
+*drivers+=*" __<kernel modules>__ "::
+    Specify a space-separated list of kernel modules to exclusively include in
+    the initramfs. The kernel modules have to be specified without the ".ko"
+    suffix.
+
 *filesystems+=*" __<filesystem names>__ "::
     Specify a space-separated list of kernel filesystem modules to exclusively
     include in the generic initramfs.
 
 *drivers_dir=*"__<kernel modules directory>__"::
-    Specify the directory, where to look for kernel modules
+    Specify the directory where to look for kernel modules.
 
 *fw_dir+=*" :__<dir>__[:__<dir>__ ...] "::
-    Specify additional directories, where to look for firmwares, separated by :
+    Specify additional colon-separated list of directories where to look for
+    firmware files.
+
+*libdirs+=*" __<dir>__[ __<dir>__ ...] "::
+    Specify a space-separated list of directories where to look for libraries.
 
 *install_items+=*" __<file>__[ __<file>__ ...] "::
     Specify additional files to include in the initramfs, separated by spaces.
@@ -83,20 +92,53 @@ Configuration files must have the extension .conf; other extensions are ignored.
 *compress=*"__{cat|bzip2|lzma|xz|gzip|lzo|lz4|zstd|<compressor [args ...]>}__"::
     Compress the generated initramfs using the passed compression program. If
     you pass it just the name of a compression program, it will call that
-    program with known-working arguments. If you pass arguments, it will be called
-    with exactly those arguments. Depending on what you pass, this may result in
-    an initramfs that the kernel cannot decompress.
+    program with known-working arguments. If you pass arguments, it will be
+    called with exactly those arguments. Depending on what you pass, this may
+    result in an initramfs that the kernel cannot decompress.
     To disable compression, use "cat".
 
+*squash_compress=*"__{<compressor [args ...]>}__"::
+    Compress the squashfs image using the passed compressor and compressor
+    specific options for mksquashfs. You can refer to mksquashfs manual for
+    supported compressors and compressor specific options. If squash module is
+    not called when building the initramfs, this option will not take effect.
+
 *do_strip=*"__{yes|no}__"::
-    Strip binaries in the initramfs (default=yes)
+    Strip binaries in the initramfs (default=yes).
+
+*aggresive_strip=*"__{yes|no}__"::
+    Strip more than just debug symbol and sections, for a smaller initramfs
+    build. The "do_strip=yes" option must also be specified (default=no).
+
+*do_hardlink=*"__{yes|no}__"::
+    Hardlink files in the initramfs (default=yes).
+
+*prefix=*" __<directory>__ "::
+    Prefix initramfs files with __<directory>__.
 
 *hostonly=*"__{yes|no}__"::
-    Host-Only mode: Install only what is needed for booting the local host
-    instead of a generic host and generate host-specific configuration.
+    Host-only mode: Install only what is needed for booting the local host
+    instead of a generic host and generate host-specific configuration
+    (default=no).
+
+*hostonly_mode=*"__{sloppy|strict}__"::
+    Specify the host-only mode to use (default=sloppy).
+    In "sloppy" host-only mode, extra drivers and modules will be installed, so
+    minor hardware change won't make the image unbootable (e.g. changed
+    keyboard), and the image is still portable among similar hosts.
+    With "strict" mode enabled, anything not necessary for booting the local
+    host in its current state will not be included, and modules may do some
+    extra job to save more space. Minor change of hardware or environment could
+    make the image unbootable.
 
 *hostonly_cmdline=*"__{yes|no}__"::
-    If set to "yes", store the kernel command line arguments needed in the initramfs
+    If set to "yes", store the kernel command line arguments needed in the
+    initramfs. If **hostonly="yes"** and this option is not configured, it's
+    automatically set to "yes".
+
+*hostonly_nics+=*" [__<nic>__[ __<nic>__ ...]] "::
+    Only enable listed NICs in the initramfs. The list can be empty, so other
+    modules can install only the necessary network drivers.
 
 *persistent_policy=*"__<policy>__"::
     Use _<policy>_ to address disks and partitions.
@@ -113,21 +155,21 @@ provide a valid _/etc/fstab_.
 ====
 
 *use_fstab=*"__{yes|no}__"::
-    Use _/etc/fstab_ instead of _/proc/self/mountinfo_.
+    Use _/etc/fstab_ instead of _/proc/self/mountinfo_ (default=no).
 
 *add_fstab+=*" __<filename>__ "::
     Add entries of __<filename>__ to the initramfs /etc/fstab.
 
 *add_device+=*" __<device>__ "::
     Bring up _<device>_ in initramfs, _<device>_ should be the device name.
-    This can be useful in hostonly mode for resume support when your swap is on
+    This can be useful in host-only mode for resume support when your swap is on
     LVM an encrypted partition.
 
 *mdadmconf=*"__{yes|no}__"::
-    Include local _/etc/mdadm.conf_ (default=yes)
+    Include local _/etc/mdadm.conf_ (default=no).
 
 *lvmconf=*"__{yes|no}__"::
-    Include local _/etc/lvm/lvm.conf_ (default=yes)
+    Include local _/etc/lvm/lvm.conf_ (default=no).
 
 *fscks=*" __<fsck tools>__ "::
     Add a space-separated list of fsck tools. If nothing is specified, the
@@ -136,19 +178,19 @@ provide a valid _/etc/fstab_.
     (non-existing tools are ignored).
 
 *nofscks=*"__{yes|no}__"::
-    If specified, inhibit installation of any fsck tools.
+    If specified, inhibit installation of any fsck tools (default=no).
 
 *ro_mnt=*"__{yes|no}__"::
-    Mount _/_ and _/usr_ read-only by default.
+    Mount _/_ and _/usr_ read-only by default (default=no).
 
 *kernel_cmdline=*"__parameters__"::
-    Specify default kernel command line parameters
+    Specify default kernel command line parameters.
 
 *kernel_only=*"__{yes|no}__"::
-    Only install kernel drivers and firmware files. (default=no)
+    Only install kernel drivers and firmware files (default=no).
 
 *no_kernel=*"__{yes|no}__"::
-    Do not install kernel drivers and firmware files (default=no)
+    Do not install kernel drivers and firmware files (default=no).
 
 *acpi_override=*"__{yes|no}__"::
     [WARNING] ONLY USE THIS IF YOU KNOW WHAT YOU ARE DOING! +
@@ -166,22 +208,40 @@ provide a valid _/etc/fstab_.
     Directory to search for ACPI tables if acpi_override= is set to yes.
 
 *early_microcode=*"{yes|no}"::
-    Combine early microcode with ramdisk (default=yes)
+    Combine early microcode with ramdisk (default=yes).
 
 *stdloglvl*="__\{0-6\}__"::
-    Set logging to standard error level.
+    Specify logging level for standard error (default=4).
+
+[NOTE]
+===============================
+Logging levels:
+----
+    0 - suppress any messages
+    1 - only fatal errors
+    2 - all errors
+    3 - warnings
+    4 - info
+    5 - debug info (here starts lots of output)
+    6 - trace info (and even more)
+----
+===============================
 
 *sysloglvl*="__\{0-6\}__"::
-    Set logging to syslog level.
+    Specify logging level for syslog (default=0).
 
 *fileloglvl=*"__\{0-6\}__"::
-    Set logging to file level.
+    Specify logging level for logfile (default=4).
 
 *logfile=*"__<file>__"::
-    Path to log file.
+    Path to logfile.
+
+*sshkey=*"__<file>__"::
+    SSH key file used with ssh-client module.
 
 *show_modules=*"__{yes|no}__"::
-    Print the name of the included modules to standard output during build.
+    Print the name of the included modules to standard output during build
+    (default=no).
 
 *i18n_vars=*"__<variable mapping>__"::
     Distribution specific variable mapping.
@@ -192,29 +252,66 @@ provide a valid _/etc/fstab_.
     Default is "eurlatgr".
 
 *i18n_install_all=*"__{yes|no}__"::
-    Install everything regardless of generic or hostonly mode.
+    Install everything regardless of generic or host-only mode (default=no).
 
 *reproducible=*"__{yes|no}__"::
-    Create reproducible images.
-
-*loginstall=*"__<DIR>__"::
-    Log all files installed from the host to _<DIR>_.
-
-*uefi_stub=*"_<FILE>_"::
-    Specifies the UEFI stub loader, which will load the attached kernel, initramfs and
-    kernel command line and boots the kernel. The default is
-    _/lib/systemd/boot/efi/linux<EFI-MACHINE-TYPE-NAME>.efi.stub_
-
-*uefi_splash_image=*"_<FILE>_"::
-    Specifies the UEFI stub loader's splash image. Requires bitmap (**.bmp**) image format.
-
-*uefi_secureboot_cert=*"_<FILE>_", *uefi_secureboot_key=*"_<FILE>_"::
-    Specifies a certificate and corresponding key, which are used to sign the created UEFI executable.
-    Requires both certificate and key need to be specified and _sbsign_ to be installed.
-
-*kernel_image=*"_<FILE>_"::
-    Specifies the kernel image, which to include in the UEFI executable. The default is
-    _/lib/modules/<KERNEL-VERSION>/vmlinuz_ or _/boot/vmlinuz-<KERNEL-VERSION>_
+    Create reproducible images (default=no).
+
+*regenerate_all=*"__{yes|no}__"::
+    Regenerate all initramfs images at the default location with the kernel
+    versions found on the system. Additional parameters are passed through
+    (default=no).
+
+*noimageifnotneeded=*"__{yes|no}__"::
+    Do not create an image in host-only mode, if no kernel driver is needed
+    and no /etc/cmdline/*.conf will be generated into the initramfs
+    (default=no).
+
+*loginstall=*"__<directory>__"::
+    Log all files installed from the host to _<directory>_.
+
+*uefi=*"__{yes|no}__"::
+    Instead of creating an initramfs image, dracut will create an UEFI
+    executable, which can be executed by an UEFI BIOS (default=no).
+    The default output filename is
+    _<EFI>/EFI/Linux/linux-$kernel$-<MACHINE_ID>-<BUILD_ID>.efi_.
+    <EFI> might be _/efi_, _/boot_ or _/boot/efi_ depending on where the ESP
+    partition is mounted. The <BUILD_ID> is taken from BUILD_ID in
+    _/usr/lib/os-release_ or if it exists _/etc/os-release_ and is left out,
+    if BUILD_ID is non-existant or empty.
+
+*machine_id=*"__{yes|no}__"::
+    Affects the default output filename of the UEFI executable, including the
+    <MACHINE_ID> part (default=yes).
+
+*uefi_stub=*"_<file>_"::
+    Specifies the UEFI stub loader, which will load the attached kernel,
+    initramfs and kernel command line and boots the kernel. The default is
+    _/lib/systemd/boot/efi/linux<EFI-MACHINE-TYPE-NAME>.efi.stub_.
+
+*uefi_splash_image=*"_<file>_"::
+    Specifies the UEFI stub loader's splash image. Requires bitmap (**.bmp**)
+    image format.
+
+*uefi_secureboot_cert=*"_<file>_", *uefi_secureboot_key=*"_<file>_"::
+    Specifies a certificate and corresponding key, which are used to sign the
+    created UEFI executable.
+    Requires both certificate and key need to be specified and _sbsign_ to be
+    installed.
+
+*kernel_image=*"_<file>_"::
+    Specifies the kernel image, which to include in the UEFI executable. The
+    default is _/lib/modules/<KERNEL-VERSION>/vmlinuz_ or
+    _/boot/vmlinuz-<KERNEL-VERSION>_.
+
+*enhanced_cpio=*"__{yes|no}__"::
+    Attempt to use the dracut-cpio binary, which optimizes archive creation for
+    copy-on-write filesystems (default=no).
+    When specified, initramfs archives are also padded to ensure optimal data
+    alignment for extent sharing. To retain reflink data deduplication benefits,
+    this should be used alongside the **compress="cat"** and **do_strip="no"**
+    parameters, with initramfs source files, **tmpdir** staging area and
+    destination all on the same copy-on-write capable filesystem.
 
 Files
 -----