]> git.ipfire.org Git - thirdparty/dracut.git/blob - man/dracut.conf.5.asc
feat(dracut.sh): pass engine flag to sbsign allowing use with hardware devices
[thirdparty/dracut.git] / man / dracut.conf.5.asc
1 DRACUT.CONF(5)
2 ==============
3 :doctype: manpage
4 :man source: dracut
5 :man manual: dracut
6 :man version: {version}
7
8 NAME
9 ----
10 dracut.conf - configuration file(s) for dracut
11
12 SYNOPSIS
13 --------
14 _/etc/dracut.conf_
15 _/etc/dracut.conf.d/\*.conf_
16 _/usr/lib/dracut/dracut.conf.d/*.conf_
17
18 Description
19 -----------
20 _dracut.conf_ is loaded during the initialisation phase of dracut. Command line
21 parameter will override any values set here.
22
23 _*.conf_ files are read from /usr/lib/dracut/dracut.conf.d and
24 /etc/dracut.conf.d. Files with the same name in /etc/dracut.conf.d will replace
25 files in /usr/lib/dracut/dracut.conf.d.
26 The files are then read in alphanumerical order and will override parameters
27 set in _/etc/dracut.conf_. Each line specifies an attribute and a value. A '#'
28 indicates the beginning of a comment; following characters, up to the end of the
29 line are not interpreted.
30
31 dracut command line options will override any values set here.
32
33 Configuration files must have the extension .conf; other extensions are ignored.
34
35 *add_dracutmodules+=*" __<dracut modules>__ "::
36 Add a space-separated list of dracut modules to call when building the
37 initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
38
39 *force_add_dracutmodules+=*" __<dracut modules>__ "::
40 Force to add a space-separated list of dracut modules to the default set of
41 modules, when host-only mode is specified. This parameter can be specified
42 multiple times.
43
44 *omit_dracutmodules+=*" __<dracut modules>__ "::
45 Omit a space-separated list of dracut modules to call when building the
46 initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
47
48 *dracutmodules+=*" __<dracut modules>__ "::
49 Specify a space-separated list of dracut modules to call when building the
50 initramfs. Modules are located in _/usr/lib/dracut/modules.d_.
51 This option forces dracut to only include the specified dracut modules.
52 In most cases the "add_dracutmodules" option is what you want to use.
53
54 *add_drivers+=*" __<kernel modules>__ "::
55 Specify a space-separated list of kernel modules to add to the initramfs.
56 The kernel modules have to be specified without the ".ko" suffix.
57
58 *force_drivers+=*" __<list of kernel modules>__ "::
59 See add_drivers above. But in this case it is ensured that the drivers
60 are tried to be loaded early via modprobe.
61
62 *omit_drivers+=*" __<kernel modules>__ "::
63 Specify a space-separated list of kernel modules not to add to the
64 initramfs. The kernel modules have to be specified without the ".ko" suffix.
65
66 *drivers+=*" __<kernel modules>__ "::
67 Specify a space-separated list of kernel modules to exclusively include in
68 the initramfs. The kernel modules have to be specified without the ".ko"
69 suffix.
70
71 *filesystems+=*" __<filesystem names>__ "::
72 Specify a space-separated list of kernel filesystem modules to exclusively
73 include in the generic initramfs.
74
75 *drivers_dir=*"__<kernel modules directory>__"::
76 Specify the directory where to look for kernel modules.
77
78 *fw_dir+=*" :__<dir>__[:__<dir>__ ...] "::
79 Specify additional colon-separated list of directories where to look for
80 firmware files.
81
82 *libdirs+=*" __<dir>__[ __<dir>__ ...] "::
83 Specify a space-separated list of directories where to look for libraries.
84
85 *install_items+=*" __<file>__[ __<file>__ ...] "::
86 Specify additional files to include in the initramfs, separated by spaces.
87
88 *install_optional_items+=*" __<file>__[ __<file>__ ...] "::
89 Specify additional files to include in the initramfs, separated by spaces,
90 if they exist.
91
92 *compress=*"__{cat|bzip2|lzma|xz|gzip|lzo|lz4|zstd|<compressor [args ...]>}__"::
93 Compress the generated initramfs using the passed compression program. If
94 you pass it just the name of a compression program, it will call that
95 program with known-working arguments. If you pass arguments, it will be
96 called with exactly those arguments. Depending on what you pass, this may
97 result in an initramfs that the kernel cannot decompress.
98 To disable compression, use "cat".
99
100 *squash_compress=*"__{<compressor [args ...]>}__"::
101 Compress the squashfs image using the passed compressor and compressor
102 specific options for mksquashfs. You can refer to mksquashfs manual for
103 supported compressors and compressor specific options. If squash module is
104 not called when building the initramfs, this option will not take effect.
105
106 *do_strip=*"__{yes|no}__"::
107 Strip binaries in the initramfs (default=yes).
108
109 *aggressive_strip=*"__{yes|no}__"::
110 Strip more than just debug symbol and sections, for a smaller initramfs
111 build. The "do_strip=yes" option must also be specified (default=no).
112
113 *do_hardlink=*"__{yes|no}__"::
114 Hardlink files in the initramfs (default=yes).
115
116 *prefix=*" __<directory>__ "::
117 Prefix initramfs files with __<directory>__.
118
119 *hostonly=*"__{yes|no}__"::
120 Host-only mode: Install only what is needed for booting the local host
121 instead of a generic host and generate host-specific configuration
122 (default=no).
123
124 *hostonly_mode=*"__{sloppy|strict}__"::
125 Specify the host-only mode to use (default=sloppy).
126 In "sloppy" host-only mode, extra drivers and modules will be installed, so
127 minor hardware change won't make the image unbootable (e.g. changed
128 keyboard), and the image is still portable among similar hosts.
129 With "strict" mode enabled, anything not necessary for booting the local
130 host in its current state will not be included, and modules may do some
131 extra job to save more space. Minor change of hardware or environment could
132 make the image unbootable.
133
134 *hostonly_cmdline=*"__{yes|no}__"::
135 If set to "yes", store the kernel command line arguments needed in the
136 initramfs. If **hostonly="yes"** and this option is not configured, it's
137 automatically set to "yes".
138
139 *hostonly_nics+=*" [__<nic>__[ __<nic>__ ...]] "::
140 Only enable listed NICs in the initramfs. The list can be empty, so other
141 modules can install only the necessary network drivers.
142
143 *persistent_policy=*"__<policy>__"::
144 Use _<policy>_ to address disks and partitions.
145 _<policy>_ can be any directory name found in /dev/disk.
146 E.g. "by-uuid", "by-label"
147
148 *tmpdir=*"__<temporary directory>__"::
149 Specify temporary directory to use.
150
151 [WARNING]
152 ====
153 If chrooted to another root other than the real root device, use --fstab and
154 provide a valid _/etc/fstab_.
155 ====
156
157 *use_fstab=*"__{yes|no}__"::
158 Use _/etc/fstab_ instead of _/proc/self/mountinfo_ (default=no).
159
160 *add_fstab+=*" __<filename>__ "::
161 Add entries of __<filename>__ to the initramfs /etc/fstab.
162
163 *add_device+=*" __<device>__ "::
164 Bring up _<device>_ in initramfs, _<device>_ should be the device name.
165 This can be useful in host-only mode for resume support when your swap is on
166 LVM an encrypted partition.
167
168 *mdadmconf=*"__{yes|no}__"::
169 Include local _/etc/mdadm.conf_ (default=no).
170
171 *lvmconf=*"__{yes|no}__"::
172 Include local _/etc/lvm/lvm.conf_ (default=no).
173
174 *fscks=*" __<fsck tools>__ "::
175 Add a space-separated list of fsck tools. If nothing is specified, the
176 default is: "umount mount /sbin/fsck* xfs_db xfs_check xfs_repair e2fsck
177 jfs_fsck reiserfsck btrfsck". The installation is opportunistic
178 (non-existing tools are ignored).
179
180 *nofscks=*"__{yes|no}__"::
181 If specified, inhibit installation of any fsck tools (default=no).
182
183 *ro_mnt=*"__{yes|no}__"::
184 Mount _/_ and _/usr_ read-only by default (default=no).
185
186 *kernel_cmdline=*"__parameters__"::
187 Specify default kernel command line parameters.
188
189 *kernel_only=*"__{yes|no}__"::
190 Only install kernel drivers and firmware files (default=no).
191
192 *no_kernel=*"__{yes|no}__"::
193 Do not install kernel drivers and firmware files (default=no).
194
195 *acpi_override=*"__{yes|no}__"::
196 [WARNING] ONLY USE THIS IF YOU KNOW WHAT YOU ARE DOING! +
197 Override BIOS provided ACPI tables. For further documentation read
198 Documentation/acpi/initrd_table_override.txt in the kernel sources.
199 Search for ACPI table files (must have .aml suffix) in acpi_table_dir=
200 directory (see below) and add them to a separate uncompressed cpio
201 archive. This cpio archive gets glued (concatenated, uncompressed one
202 must be the first one) to the compressed cpio archive. The first,
203 uncompressed cpio archive is for data which the kernel must be able
204 to access very early (and cannot make use of uncompress algorithms yet)
205 like microcode or ACPI tables (default=no).
206
207 *acpi_table_dir=*"__<dir>__"::
208 Directory to search for ACPI tables if acpi_override= is set to yes.
209
210 *early_microcode=*"{yes|no}"::
211 Combine early microcode with ramdisk (default=yes).
212
213 *stdloglvl*="__\{0-6\}__"::
214 Specify logging level for standard error (default=4).
215
216 [NOTE]
217 ===============================
218 Logging levels:
219 ----
220 0 - suppress any messages
221 1 - only fatal errors
222 2 - all errors
223 3 - warnings
224 4 - info
225 5 - debug info (here starts lots of output)
226 6 - trace info (and even more)
227 ----
228 ===============================
229
230 *sysloglvl*="__\{0-6\}__"::
231 Specify logging level for syslog (default=0).
232
233 *fileloglvl=*"__\{0-6\}__"::
234 Specify logging level for logfile (default=4).
235
236 *logfile=*"__<file>__"::
237 Path to logfile.
238
239 *sshkey=*"__<file>__"::
240 SSH key file used with ssh-client module.
241
242 *show_modules=*"__{yes|no}__"::
243 Print the name of the included modules to standard output during build
244 (default=no).
245
246 *i18n_vars=*"__<variable mapping>__"::
247 Distribution specific variable mapping.
248 See dracut/modules.d/10i18n/README for a detailed description.
249
250 *i18n_default_font=*"__<fontname>__"::
251 The font <fontname> to install, if not specified otherwise.
252 Default is "eurlatgr".
253
254 *i18n_install_all=*"__{yes|no}__"::
255 Install everything regardless of generic or host-only mode (default=no).
256
257 *reproducible=*"__{yes|no}__"::
258 Create reproducible images (default=no).
259
260 *noimageifnotneeded=*"__{yes|no}__"::
261 Do not create an image in host-only mode, if no kernel driver is needed
262 and no /etc/cmdline/*.conf will be generated into the initramfs
263 (default=no).
264
265 *loginstall=*"__<directory>__"::
266 Log all files installed from the host to _<directory>_.
267
268 *uefi=*"__{yes|no}__"::
269 Instead of creating an initramfs image, dracut will create an UEFI
270 executable, which can be executed by an UEFI BIOS (default=no).
271 The default output filename is
272 _<EFI>/EFI/Linux/linux-$kernel$-<MACHINE_ID>-<BUILD_ID>.efi_.
273 <EFI> might be _/efi_, _/boot_ or _/boot/efi_ depending on where the ESP
274 partition is mounted. The <BUILD_ID> is taken from BUILD_ID in
275 _/usr/lib/os-release_ or if it exists _/etc/os-release_ and is left out,
276 if BUILD_ID is non-existant or empty.
277
278 *machine_id=*"__{yes|no}__"::
279 Affects the default output filename of the UEFI executable, including the
280 <MACHINE_ID> part (default=yes).
281
282 *uefi_stub=*"_<file>_"::
283 Specifies the UEFI stub loader, which will load the attached kernel,
284 initramfs and kernel command line and boots the kernel. The default is
285 _/lib/systemd/boot/efi/linux<EFI-MACHINE-TYPE-NAME>.efi.stub_.
286
287 *uefi_splash_image=*"_<file>_"::
288 Specifies the UEFI stub loader's splash image. Requires bitmap (**.bmp**)
289 image format.
290
291 *uefi_secureboot_cert=*"_<file>_", *uefi_secureboot_key=*"_<file>_"::
292 Specifies a certificate and corresponding key, which are used to sign the
293 created UEFI executable.
294 Requires both certificate and key need to be specified and _sbsign_ to be
295 installed.
296
297 *uefi_secureboot_engine=*"_parameter_"::
298 Specifies an engine to use when signing the created UEFI executable. E.g. "pkcs11"
299
300 *kernel_image=*"_<file>_"::
301 Specifies the kernel image, which to include in the UEFI executable. The
302 default is _/lib/modules/<KERNEL-VERSION>/vmlinuz_ or
303 _/boot/vmlinuz-<KERNEL-VERSION>_.
304
305 *enhanced_cpio=*"__{yes|no}__"::
306 Attempt to use the dracut-cpio binary, which optimizes archive creation for
307 copy-on-write filesystems (default=no).
308 When specified, initramfs archives are also padded to ensure optimal data
309 alignment for extent sharing. To retain reflink data deduplication benefits,
310 this should be used alongside the **compress="cat"** and **do_strip="no"**
311 parameters, with initramfs source files, **tmpdir** staging area and
312 destination all on the same copy-on-write capable filesystem.
313
314 *parallel=*"__{yes|no}__"::
315 If set to _yes_, try to execute tasks in parallel (currently only supported
316 for _--regenerate-all_).
317
318 Files
319 -----
320 _/etc/dracut.conf_::
321 Old configuration file. You better use your own file in
322 _/etc/dracut.conf.d/_.
323
324 _/etc/dracut.conf.d/_::
325 Any _/etc/dracut.conf.d/*.conf_ file can override the values in
326 _/etc/dracut.conf_. The configuration files are read in alphanumerical
327 order.
328
329 AUTHOR
330 ------
331 Harald Hoyer
332
333 See Also
334 --------
335 *dracut*(8) *dracut.cmdline*(7)
336