4 - plymouth: use /run/plymouth/pid instead of /run/initramfs/plymouth
5 - add "/lib/firmware/updates" to default firmware path
12 - better argument handling
15 - hooks moved to /lib/dracut/hooks in initramfs
16 - rd.driver.{blacklist|pre|post} accept comma seperated driver list
17 - iSCSI: iSCSI Boot Firmware Table (iBFT) support
19 - live image: support for generic rootfs.img (instead of ext3fs.img)
25 - removed --ignore-kernel-modules option (no longer necessary)
26 - renamed kernel command line arguments to follow the rd. naming scheme
27 - merged check, install, installkernel to module-setup.sh
28 - support for bzip2 and xz compressed initramfs images.
29 - source code beautification
30 - lots of documentation
31 - lsinitrd: "catinitrd" functionality
32 - dracut: --list-modules
33 - lvm: support for dynamic LVM SNAPSHOT root volume
34 - 95fstab-sys: mount all /etc/fstab.sys volumes before switch_root
35 - 96insmodpost dracut module
36 - rd.shell=1 per default
37 - rootfs-block:mount-root.sh add fsck
38 - busybox shell replacements module
39 - honor old "real_init="
40 - 97biosdevname dracut module
44 - module i18n is no longer fedora/red hat specific (Amadeusz Żołnowski)
45 - distribution specific conf file
47 - debug module now has fsck
48 - use "hardlink", if available, to save some space
49 - /etc/dracut.conf can be overwritten by settings in /etc/dracut.conf.d/*.conf
50 - gentoo splash module
51 - --ignore-kernel-modules option
52 - crypto keys on external devices support
57 - fixed mdraid with IMSM
58 - fixed dracut manpages
59 - dmraid parse different error messages
60 - add cdrom polling mechanism for slow cdroms
62 - add btrfsctl scan for btrfs multi-devices (raid)
63 - teach dmsquash live-root to use rootflags
64 - trigger udev with action=add
65 - fixed add_drivers handling
67 - use pigz instead of gzip, if available
68 - boot from LVM mirrors and snapshots
69 - iscsi: add support for multiple netroot=iscsi:
70 - Support old version of module-init-tools
71 - got rid of rdnetdebug
73 - dracut.conf: use "+=" as default for config variables
78 - dcb support to dracut's FCoE support
79 - add readonly overlay support for dmsquash
80 - add keyboard kernel modules
81 - dracut.conf: added add_dracutmodules
82 - add /etc/dracut.conf.d
83 - add preliminary IPv6 support
88 - dracut-lib: read multiple lines from $init/etc/cmdline
89 - lsinitrd and mkinitrd
90 - dmsquash: add support for loopmounted *.iso files
91 - lvm: add rd_LVM_LV and "--poll n"
92 - user suspend support
93 - add additional drivers in host-only mode, too
94 - improved emergency shell
95 - support for compressed kernel modules
96 - support for loading Xen modules
97 - rdloaddriver kernel command line parameter
98 - man pages for dracut-catimages and dracut-gencmdline
103 - add debian package modules
104 - add dracut.conf manpage
105 - add module 90multipath
107 - crypt: ignore devices in /etc/crypttab (root is not in there)
108 unless rd_NO_CRYPTTAB is specified
109 - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc
110 - add multinic support
111 - add s390 zfcp support
112 - add s390 dasd support
113 - add s390 network support
114 - fixed dracut-gencmdline for root=UUID or LABEL
115 - do not destroy assembled raid arrays if mdadm.conf present
117 - let udevd not resolve group and user names
118 - moved network from udev to initqueue
119 - improved debug output: specifying "rdinitdebug" now logs
120 to dmesg, console and /init.log
121 - strip kernel modules which have no x bit set
122 - redirect stdin, stdout, stderr all RW to /dev/console
123 so the user can use "less" to view /init.log and dmesg
124 - add new device mapper udev rules and dmeventd
125 - fixed dracut-gencmdline for root=UUID or LABEL
126 - do not destroy assembled raid arrays if mdadm.conf present
128 - let udevd not resolve group and user names
129 - preserve timestamps of tools on initramfs generation
130 - generate symlinks for binaries correctly
131 - moved network from udev to initqueue
132 - mount nfs3 with nfsvers=3 option and retry with nfsvers=2
133 - fixed nbd initqueue-finished
134 - improved debug output: specifying "rdinitdebug" now logs
135 to dmesg, console and /init.log
136 - strip kernel modules which have no x bit set
137 - redirect stdin, stdout, stderr all RW to /dev/console
138 so the user can use "less" to view /init.log and dmesg
139 - make install of new dm/lvm udev rules optionally
140 - add new device mapper udev rules and dmeventd
141 - Fix LiveCD boot regression
142 - bail out if selinux policy could not be loaded and
143 selinux=0 not specified on kernel command line
144 - do not cleanup dmraids
149 - add ifname= argument for persistent netdev names
150 - new /initqueue-finished to check if the main loop can be left
151 - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf
152 - plymouth: use plymouth-populate-initrd
153 - add add_drivers for dracut and dracut.conf
154 - add modprobe scsi_wait_scan to be sure everything was scanned
155 - fix for several problems with md raid containers
156 - fix for selinux policy loading
157 - fix for mdraid for IMSM
158 - fix for bug, which prevents installing 61-persistent-storage.rules (bug #520109)
159 - fix for missing grep for md
163 - better --hostonly checks
164 - better lvm/mdraid/dmraid handling
165 - fcoe booting support
166 Supported cmdline formats:
167 fcoe=<networkdevice>:<dcb|nodcb>
168 fcoe=<macaddress>:<dcb|nodcb>
170 Note currently only nodcb is supported, the dcb option is reserved for
173 Note letters in the macaddress must be lowercase!
177 fcoe=4A:3F:4C:04:F8:D7:nodcb
179 - Syslog support for dracut
180 This module provides syslog functionality in the initrd.
181 This is especially interesting when complex configuration being
182 used to provide access to the device the rootfs resides on.
187 - let plymouth attach to the terminal (nice text output now)
188 - new kernel command line parameter "rdinfo" show dracut output, even when
190 - rd_LUKS_UUID is now handled correctly
191 - dracut-gencmdline: rd_LUKS_UUID and rd_MD_UUID is now correctly generated
192 - now generates initrd-generic with around 15MB
197 - iSCSI with username and password
198 - support for live images (dmsquashed live images)
199 - iscsi_firmware fixes
205 - dracut: strip binaries in initramfs
208 strip binaries in the initramfs (default)
211 do not strip binaries in the initramfs
214 Usage: ./dracut-catimages [OPTION]... <initramfs> <base image>
216 Creates initial ramdisk image by concatenating several images from the
218 line and /boot/dracut/
220 -f, --force Overwrite existing initramfs file.
221 -i, --imagedir Directory with additional images to add
222 (default: /boot/dracut/)
223 -o, --overlaydir Overlay directory, which contains files that
224 will be used to create an additional image
225 --nooverlay Do not use the overlay directory
226 --noimagedir Do not use the additional image directory
227 -h, --help This message
228 --debug Output debug information of the build process
229 -v, --verbose Verbose output during the build process
235 - dracut: add --kernel-only and --no-kernel arguments
238 only install kernel drivers and firmware files
241 do not install kernel drivers and firmware files
243 All kernel module related install commands moved from "install"
246 For "--kernel-only" all installkernel scripts of the specified
247 modules are used, regardless of any checks, so that all modules
248 which might be needed by any dracut generic image are in.
250 The basic idea is to create two images. One image with the kernel
251 modules and one without. So if the kernel changes, you only have
252 to replace one image.
254 Grub and the kernel can handle multiple images, so grub entry can
257 title Fedora (2.6.29.5-191.fc11.i586)
259 kernel /vmlinuz-2.6.29.5-191.fc11.i586 ro rhgb quiet
260 initrd /initrd-20090722.img /initrd-kernel-2.6.29.5-191.fc11.i586.img /initrd-config.img
263 the image provided by the initrd rpm
264 one old backup version is kept like with the kernel
266 initrd-kernel-2.6.29.5-191.fc11.i586.img
267 the image provided by the kernel rpm
270 optional image with local configuration files
272 - dracut: add --kmoddir directory, where to look for kernel modules
275 specify the directory, where to look for kernel modules
281 - more generic (all plymouth modules, all keyboards, all console fonts)
282 - more kernel command line parameters (see also man dracut(8))
283 - a helper tool, which generates the kernel command line (dracut-gencmdline)
284 - bridged network boot
285 - a lot of new command line parameter
290 - firmware loading support
291 - new internal queue (initqueue)
292 initqueue now loops until /dev/root exists or root is mounted
294 init now has the following points to inject scripts:
297 scripts for command line parsing
300 scripts to run before udev is started
303 scripts to run before the main udev trigger is pulled
306 runs in parallel to the udev trigger
307 Udev events can add scripts here with /sbin/initqueue.
308 If /sbin/initqueue is called with the "--onetime" option, the script
309 will be removed after it was run.
310 If /initqueue/work is created and udev >= 143 then this loop can
311 process the jobs in parallel to the udevtrigger.
312 If the udev queue is empty and no root device is found or no root
313 filesystem was mounted, the user will be dropped to a shell after
315 Scripts can remove themselves from the initqueue by "rm $job".
318 scripts to run before the root filesystem is mounted
319 NFS is an exception, because it has no device node to be created
320 and mounts in the udev events
323 scripts to mount the root filesystem
324 NFS is an exception, because it has no device node to be created
325 and mounts in the udev events
326 If the udev queue is empty and no root device is found or no root
327 filesystem was mounted, the user will be dropped to a shell after
331 scripts to run before the real init is executed and the initramfs
333 All processes started before should be killed here.
335 The behaviour of the dmraid module demonstrates how to use the new
336 mechanism. If it detects a device which is part of a raidmember from a
337 udev rule, it installs a job to scan for dmraid devices, if the udev
338 queue is empty. After a scan, it removes itsself from the queue.
345 - first public version