4 - honor binaries in sbin first
5 - fixed usrmount module
6 - added systemd service for shutdown
7 - fixed terminfo on distros with /usr/share/terminfo
8 - reload udev rules after "pre-trigger" hook
10 - new parameter "--omit-drivers" and new conf param omit_drivers
11 - "--offroot" support for mdraid
12 - new libs: net-lib.sh, nfs-lib.sh, url-lib.sh, img-lib.sh
13 full of functions to use in your dracut module
17 - hostonly mode automatically adds command line options for root and /usr
18 - --add-fstab --mount parameters
20 - --ctty option: add job control
21 - cleanup /run/initramfs
23 - /sbin/ifup can be called directly
24 - support kernel modules compressed with xz
25 - s390 iscsi modules added
27 - lsinitrd can handle concatened images
28 - lsinitrd can sort by size
32 - new dracut arguments:
45 - dracut move from /sbin to /usr/bin
46 - dracut modules dir moved from /usr/share/dracut to /usr/lib/dracut
47 - profiling with "dracut --profile"
48 - new TEST-16-DMSQUASH, test for Fedora LiveCDs
49 - speedup of initramfs creation
50 - ask_for_password fallback to CLI
51 - mdraid completely switched to incremental assembly
52 - no more cdrom polling
53 - "switch_root" breakpoint is now very late
56 - fs-lib dracut module for fscks added
57 - xen dracut module removed
58 - usb mass storage kernel drivers now included
59 - usrmount dracut module added:
60 mount /usr if found in /sysroot/etc/fstab
61 - only include fsck helper needed for hostonly
62 - fcoe: support for bnx2fc
63 - support iSCSI drivers: qla4xxx, cxgb3i, cxgb4i, bnx2i, be2iscsi
64 - fips-aesni dracut module added
65 - add install_items to dracut.conf
66 install_items+=" <file>[ <file> ...] "
67 - speedup internal testsuite
68 - internal testsuite: store temporary data in a temporary dir
72 - speedup of initramfs creation
73 - fixed inst_dir for symbolic links
74 - add unix kernel module
78 - better fsck handling
79 - fixed wait condition for LVM volumes
80 - fix for hardlinks (welcome Debian! :-)
82 - automatic busybox symlink creation
83 - try to mount /usr, if init points to a path in /usr
84 - btrfs with multiple devices
85 - "--force-add" option for dracut, to force-add dracut modules,
86 without hostonly checks
87 - lsinitrd also display the initramfs size in human readable form
88 - livenet module, to mount live-isos over http
89 - masterkey,ecryptfs,integrity security modules
90 - initqueue/timeout queue e.g. for starting degraded raids
91 - "make rpm" creates an rpm with an increasing release number from any
94 - start degraded lvm mirrors after a timeout
95 - start degraded md raids after a timeout
96 - getarg() now returns wildcards without file matching to the current fs
101 - use udev-168 features for shutting down udev
102 - introduce "--prefix" to put all initramfs files in e.g "/run/initramfs"
103 - new shutdown script (called by systemd >= 030) to disassemble the root device
105 - new module for gpg-encrypted keys - 91crypt-gpg
110 - plymouth: use /run/plymouth/pid instead of /run/initramfs/plymouth
111 - add "/lib/firmware/updates" to default firmware path
118 - better argument handling
121 - hooks moved to /lib/dracut/hooks in initramfs
122 - rd.driver.{blacklist|pre|post} accept comma separated driver list
123 - iSCSI: iSCSI Boot Firmware Table (iBFT) support
125 - live image: support for generic rootfs.img (instead of ext3fs.img)
131 - removed --ignore-kernel-modules option (no longer necessary)
132 - renamed kernel command line arguments to follow the rd. naming scheme
133 - merged check, install, installkernel to module-setup.sh
134 - support for bzip2 and xz compressed initramfs images.
135 - source code beautification
136 - lots of documentation
137 - lsinitrd: "catinitrd" functionality
138 - dracut: --list-modules
139 - lvm: support for dynamic LVM SNAPSHOT root volume
140 - 95fstab-sys: mount all /etc/fstab.sys volumes before switch_root
141 - 96insmodpost dracut module
142 - rd.shell=1 per default
143 - rootfs-block:mount-root.sh add fsck
144 - busybox shell replacements module
145 - honor old "real_init="
146 - 97biosdevname dracut module
150 - module i18n is no longer fedora/red hat specific (Amadeusz Żołnowski)
151 - distribution specific conf file
153 - debug module now has fsck
154 - use "hardlink", if available, to save some space
155 - /etc/dracut.conf can be overwritten by settings in /etc/dracut.conf.d/*.conf
156 - gentoo splash module
157 - --ignore-kernel-modules option
158 - crypto keys on external devices support
163 - fixed mdraid with IMSM
164 - fixed dracut manpages
165 - dmraid parse different error messages
166 - add cdrom polling mechanism for slow cdroms
168 - add btrfsctl scan for btrfs multi-devices (raid)
169 - teach dmsquash live-root to use rootflags
170 - trigger udev with action=add
171 - fixed add_drivers handling
173 - use pigz instead of gzip, if available
174 - boot from LVM mirrors and snapshots
175 - iscsi: add support for multiple netroot=iscsi:
176 - Support old version of module-init-tools
177 - got rid of rdnetdebug
179 - dracut.conf: use "+=" as default for config variables
184 - dcb support to dracut's FCoE support
185 - add readonly overlay support for dmsquash
186 - add keyboard kernel modules
187 - dracut.conf: added add_dracutmodules
188 - add /etc/dracut.conf.d
189 - add preliminary IPv6 support
194 - dracut-lib: read multiple lines from $init/etc/cmdline
195 - lsinitrd and mkinitrd
196 - dmsquash: add support for loopmounted *.iso files
197 - lvm: add rd_LVM_LV and "--poll n"
198 - user suspend support
199 - add additional drivers in host-only mode, too
200 - improved emergency shell
201 - support for compressed kernel modules
202 - support for loading Xen modules
203 - rdloaddriver kernel command line parameter
204 - man pages for dracut-catimages and dracut-gencmdline
209 - add debian package modules
210 - add dracut.conf manpage
211 - add module 90multipath
213 - crypt: ignore devices in /etc/crypttab (root is not in there)
214 unless rd_NO_CRYPTTAB is specified
215 - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc
216 - add multinic support
217 - add s390 zfcp support
218 - add s390 dasd support
219 - add s390 network support
220 - fixed dracut-gencmdline for root=UUID or LABEL
221 - do not destroy assembled raid arrays if mdadm.conf present
223 - let udevd not resolve group and user names
224 - moved network from udev to initqueue
225 - improved debug output: specifying "rdinitdebug" now logs
226 to dmesg, console and /init.log
227 - strip kernel modules which have no x bit set
228 - redirect stdin, stdout, stderr all RW to /dev/console
229 so the user can use "less" to view /init.log and dmesg
230 - add new device mapper udev rules and dmeventd
231 - fixed dracut-gencmdline for root=UUID or LABEL
232 - do not destroy assembled raid arrays if mdadm.conf present
234 - let udevd not resolve group and user names
235 - preserve timestamps of tools on initramfs generation
236 - generate symlinks for binaries correctly
237 - moved network from udev to initqueue
238 - mount nfs3 with nfsvers=3 option and retry with nfsvers=2
239 - fixed nbd initqueue-finished
240 - improved debug output: specifying "rdinitdebug" now logs
241 to dmesg, console and /init.log
242 - strip kernel modules which have no x bit set
243 - redirect stdin, stdout, stderr all RW to /dev/console
244 so the user can use "less" to view /init.log and dmesg
245 - make install of new dm/lvm udev rules optionally
246 - add new device mapper udev rules and dmeventd
247 - Fix LiveCD boot regression
248 - bail out if selinux policy could not be loaded and
249 selinux=0 not specified on kernel command line
250 - do not cleanup dmraids
255 - add ifname= argument for persistent netdev names
256 - new /initqueue-finished to check if the main loop can be left
257 - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf
258 - plymouth: use plymouth-populate-initrd
259 - add add_drivers for dracut and dracut.conf
260 - add modprobe scsi_wait_scan to be sure everything was scanned
261 - fix for several problems with md raid containers
262 - fix for selinux policy loading
263 - fix for mdraid for IMSM
264 - fix for bug, which prevents installing 61-persistent-storage.rules (bug #520109)
265 - fix for missing grep for md
269 - better --hostonly checks
270 - better lvm/mdraid/dmraid handling
271 - fcoe booting support
272 Supported cmdline formats:
273 fcoe=<networkdevice>:<dcb|nodcb>
274 fcoe=<macaddress>:<dcb|nodcb>
276 Note currently only nodcb is supported, the dcb option is reserved for
279 Note letters in the macaddress must be lowercase!
283 fcoe=4A:3F:4C:04:F8:D7:nodcb
285 - Syslog support for dracut
286 This module provides syslog functionality in the initrd.
287 This is especially interesting when complex configuration being
288 used to provide access to the device the rootfs resides on.
293 - let plymouth attach to the terminal (nice text output now)
294 - new kernel command line parameter "rdinfo" show dracut output, even when
296 - rd_LUKS_UUID is now handled correctly
297 - dracut-gencmdline: rd_LUKS_UUID and rd_MD_UUID is now correctly generated
298 - now generates initrd-generic with around 15MB
303 - iSCSI with username and password
304 - support for live images (dmsquashed live images)
305 - iscsi_firmware fixes
311 - dracut: strip binaries in initramfs
314 strip binaries in the initramfs (default)
317 do not strip binaries in the initramfs
320 Usage: ./dracut-catimages [OPTION]... <initramfs> <base image>
322 Creates initial ramdisk image by concatenating several images from the
324 line and /boot/dracut/
326 -f, --force Overwrite existing initramfs file.
327 -i, --imagedir Directory with additional images to add
328 (default: /boot/dracut/)
329 -o, --overlaydir Overlay directory, which contains files that
330 will be used to create an additional image
331 --nooverlay Do not use the overlay directory
332 --noimagedir Do not use the additional image directory
333 -h, --help This message
334 --debug Output debug information of the build process
335 -v, --verbose Verbose output during the build process
341 - dracut: add --kernel-only and --no-kernel arguments
344 only install kernel drivers and firmware files
347 do not install kernel drivers and firmware files
349 All kernel module related install commands moved from "install"
352 For "--kernel-only" all installkernel scripts of the specified
353 modules are used, regardless of any checks, so that all modules
354 which might be needed by any dracut generic image are in.
356 The basic idea is to create two images. One image with the kernel
357 modules and one without. So if the kernel changes, you only have
358 to replace one image.
360 Grub and the kernel can handle multiple images, so grub entry can
363 title Fedora (2.6.29.5-191.fc11.i586)
365 kernel /vmlinuz-2.6.29.5-191.fc11.i586 ro rhgb quiet
366 initrd /initrd-20090722.img /initrd-kernel-2.6.29.5-191.fc11.i586.img /initrd-config.img
369 the image provided by the initrd rpm
370 one old backup version is kept like with the kernel
372 initrd-kernel-2.6.29.5-191.fc11.i586.img
373 the image provided by the kernel rpm
376 optional image with local configuration files
378 - dracut: add --kmoddir directory, where to look for kernel modules
381 specify the directory, where to look for kernel modules
387 - more generic (all plymouth modules, all keyboards, all console fonts)
388 - more kernel command line parameters (see also man dracut(8))
389 - a helper tool, which generates the kernel command line (dracut-gencmdline)
390 - bridged network boot
391 - a lot of new command line parameter
396 - firmware loading support
397 - new internal queue (initqueue)
398 initqueue now loops until /dev/root exists or root is mounted
400 init now has the following points to inject scripts:
403 scripts for command line parsing
406 scripts to run before udev is started
409 scripts to run before the main udev trigger is pulled
412 runs in parallel to the udev trigger
413 Udev events can add scripts here with /sbin/initqueue.
414 If /sbin/initqueue is called with the "--onetime" option, the script
415 will be removed after it was run.
416 If /initqueue/work is created and udev >= 143 then this loop can
417 process the jobs in parallel to the udevtrigger.
418 If the udev queue is empty and no root device is found or no root
419 filesystem was mounted, the user will be dropped to a shell after
421 Scripts can remove themselves from the initqueue by "rm $job".
424 scripts to run before the root filesystem is mounted
425 NFS is an exception, because it has no device node to be created
426 and mounts in the udev events
429 scripts to mount the root filesystem
430 NFS is an exception, because it has no device node to be created
431 and mounts in the udev events
432 If the udev queue is empty and no root device is found or no root
433 filesystem was mounted, the user will be dropped to a shell after
437 scripts to run before the real init is executed and the initramfs
439 All processes started before should be killed here.
441 The behaviour of the dmraid module demonstrates how to use the new
442 mechanism. If it detects a device which is part of a raidmember from a
443 udev rule, it installs a job to scan for dmraid devices, if the udev
444 queue is empty. After a scan, it removes itsself from the queue.
451 - first public version