3 - use udev-168 features for shutting down udev
4 - introduce "--prefix" to put all initramfs files in /run/initramfs
9 - plymouth: use /run/plymouth/pid instead of /run/initramfs/plymouth
10 - add "/lib/firmware/updates" to default firmware path
17 - better argument handling
20 - hooks moved to /lib/dracut/hooks in initramfs
21 - rd.driver.{blacklist|pre|post} accept comma seperated driver list
22 - iSCSI: iSCSI Boot Firmware Table (iBFT) support
24 - live image: support for generic rootfs.img (instead of ext3fs.img)
30 - removed --ignore-kernel-modules option (no longer necessary)
31 - renamed kernel command line arguments to follow the rd. naming scheme
32 - merged check, install, installkernel to module-setup.sh
33 - support for bzip2 and xz compressed initramfs images.
34 - source code beautification
35 - lots of documentation
36 - lsinitrd: "catinitrd" functionality
37 - dracut: --list-modules
38 - lvm: support for dynamic LVM SNAPSHOT root volume
39 - 95fstab-sys: mount all /etc/fstab.sys volumes before switch_root
40 - 96insmodpost dracut module
41 - rd.shell=1 per default
42 - rootfs-block:mount-root.sh add fsck
43 - busybox shell replacements module
44 - honor old "real_init="
45 - 97biosdevname dracut module
49 - module i18n is no longer fedora/red hat specific (Amadeusz Żołnowski)
50 - distribution specific conf file
52 - debug module now has fsck
53 - use "hardlink", if available, to save some space
54 - /etc/dracut.conf can be overwritten by settings in /etc/dracut.conf.d/*.conf
55 - gentoo splash module
56 - --ignore-kernel-modules option
57 - crypto keys on external devices support
62 - fixed mdraid with IMSM
63 - fixed dracut manpages
64 - dmraid parse different error messages
65 - add cdrom polling mechanism for slow cdroms
67 - add btrfsctl scan for btrfs multi-devices (raid)
68 - teach dmsquash live-root to use rootflags
69 - trigger udev with action=add
70 - fixed add_drivers handling
72 - use pigz instead of gzip, if available
73 - boot from LVM mirrors and snapshots
74 - iscsi: add support for multiple netroot=iscsi:
75 - Support old version of module-init-tools
76 - got rid of rdnetdebug
78 - dracut.conf: use "+=" as default for config variables
83 - dcb support to dracut's FCoE support
84 - add readonly overlay support for dmsquash
85 - add keyboard kernel modules
86 - dracut.conf: added add_dracutmodules
87 - add /etc/dracut.conf.d
88 - add preliminary IPv6 support
93 - dracut-lib: read multiple lines from $init/etc/cmdline
94 - lsinitrd and mkinitrd
95 - dmsquash: add support for loopmounted *.iso files
96 - lvm: add rd_LVM_LV and "--poll n"
97 - user suspend support
98 - add additional drivers in host-only mode, too
99 - improved emergency shell
100 - support for compressed kernel modules
101 - support for loading Xen modules
102 - rdloaddriver kernel command line parameter
103 - man pages for dracut-catimages and dracut-gencmdline
108 - add debian package modules
109 - add dracut.conf manpage
110 - add module 90multipath
112 - crypt: ignore devices in /etc/crypttab (root is not in there)
113 unless rd_NO_CRYPTTAB is specified
114 - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc
115 - add multinic support
116 - add s390 zfcp support
117 - add s390 dasd support
118 - add s390 network support
119 - fixed dracut-gencmdline for root=UUID or LABEL
120 - do not destroy assembled raid arrays if mdadm.conf present
122 - let udevd not resolve group and user names
123 - moved network from udev to initqueue
124 - improved debug output: specifying "rdinitdebug" now logs
125 to dmesg, console and /init.log
126 - strip kernel modules which have no x bit set
127 - redirect stdin, stdout, stderr all RW to /dev/console
128 so the user can use "less" to view /init.log and dmesg
129 - add new device mapper udev rules and dmeventd
130 - fixed dracut-gencmdline for root=UUID or LABEL
131 - do not destroy assembled raid arrays if mdadm.conf present
133 - let udevd not resolve group and user names
134 - preserve timestamps of tools on initramfs generation
135 - generate symlinks for binaries correctly
136 - moved network from udev to initqueue
137 - mount nfs3 with nfsvers=3 option and retry with nfsvers=2
138 - fixed nbd initqueue-finished
139 - improved debug output: specifying "rdinitdebug" now logs
140 to dmesg, console and /init.log
141 - strip kernel modules which have no x bit set
142 - redirect stdin, stdout, stderr all RW to /dev/console
143 so the user can use "less" to view /init.log and dmesg
144 - make install of new dm/lvm udev rules optionally
145 - add new device mapper udev rules and dmeventd
146 - Fix LiveCD boot regression
147 - bail out if selinux policy could not be loaded and
148 selinux=0 not specified on kernel command line
149 - do not cleanup dmraids
154 - add ifname= argument for persistent netdev names
155 - new /initqueue-finished to check if the main loop can be left
156 - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf
157 - plymouth: use plymouth-populate-initrd
158 - add add_drivers for dracut and dracut.conf
159 - add modprobe scsi_wait_scan to be sure everything was scanned
160 - fix for several problems with md raid containers
161 - fix for selinux policy loading
162 - fix for mdraid for IMSM
163 - fix for bug, which prevents installing 61-persistent-storage.rules (bug #520109)
164 - fix for missing grep for md
168 - better --hostonly checks
169 - better lvm/mdraid/dmraid handling
170 - fcoe booting support
171 Supported cmdline formats:
172 fcoe=<networkdevice>:<dcb|nodcb>
173 fcoe=<macaddress>:<dcb|nodcb>
175 Note currently only nodcb is supported, the dcb option is reserved for
178 Note letters in the macaddress must be lowercase!
182 fcoe=4A:3F:4C:04:F8:D7:nodcb
184 - Syslog support for dracut
185 This module provides syslog functionality in the initrd.
186 This is especially interesting when complex configuration being
187 used to provide access to the device the rootfs resides on.
192 - let plymouth attach to the terminal (nice text output now)
193 - new kernel command line parameter "rdinfo" show dracut output, even when
195 - rd_LUKS_UUID is now handled correctly
196 - dracut-gencmdline: rd_LUKS_UUID and rd_MD_UUID is now correctly generated
197 - now generates initrd-generic with around 15MB
202 - iSCSI with username and password
203 - support for live images (dmsquashed live images)
204 - iscsi_firmware fixes
210 - dracut: strip binaries in initramfs
213 strip binaries in the initramfs (default)
216 do not strip binaries in the initramfs
219 Usage: ./dracut-catimages [OPTION]... <initramfs> <base image>
221 Creates initial ramdisk image by concatenating several images from the
223 line and /boot/dracut/
225 -f, --force Overwrite existing initramfs file.
226 -i, --imagedir Directory with additional images to add
227 (default: /boot/dracut/)
228 -o, --overlaydir Overlay directory, which contains files that
229 will be used to create an additional image
230 --nooverlay Do not use the overlay directory
231 --noimagedir Do not use the additional image directory
232 -h, --help This message
233 --debug Output debug information of the build process
234 -v, --verbose Verbose output during the build process
240 - dracut: add --kernel-only and --no-kernel arguments
243 only install kernel drivers and firmware files
246 do not install kernel drivers and firmware files
248 All kernel module related install commands moved from "install"
251 For "--kernel-only" all installkernel scripts of the specified
252 modules are used, regardless of any checks, so that all modules
253 which might be needed by any dracut generic image are in.
255 The basic idea is to create two images. One image with the kernel
256 modules and one without. So if the kernel changes, you only have
257 to replace one image.
259 Grub and the kernel can handle multiple images, so grub entry can
262 title Fedora (2.6.29.5-191.fc11.i586)
264 kernel /vmlinuz-2.6.29.5-191.fc11.i586 ro rhgb quiet
265 initrd /initrd-20090722.img /initrd-kernel-2.6.29.5-191.fc11.i586.img /initrd-config.img
268 the image provided by the initrd rpm
269 one old backup version is kept like with the kernel
271 initrd-kernel-2.6.29.5-191.fc11.i586.img
272 the image provided by the kernel rpm
275 optional image with local configuration files
277 - dracut: add --kmoddir directory, where to look for kernel modules
280 specify the directory, where to look for kernel modules
286 - more generic (all plymouth modules, all keyboards, all console fonts)
287 - more kernel command line parameters (see also man dracut(8))
288 - a helper tool, which generates the kernel command line (dracut-gencmdline)
289 - bridged network boot
290 - a lot of new command line parameter
295 - firmware loading support
296 - new internal queue (initqueue)
297 initqueue now loops until /dev/root exists or root is mounted
299 init now has the following points to inject scripts:
302 scripts for command line parsing
305 scripts to run before udev is started
308 scripts to run before the main udev trigger is pulled
311 runs in parallel to the udev trigger
312 Udev events can add scripts here with /sbin/initqueue.
313 If /sbin/initqueue is called with the "--onetime" option, the script
314 will be removed after it was run.
315 If /initqueue/work is created and udev >= 143 then this loop can
316 process the jobs in parallel to the udevtrigger.
317 If the udev queue is empty and no root device is found or no root
318 filesystem was mounted, the user will be dropped to a shell after
320 Scripts can remove themselves from the initqueue by "rm $job".
323 scripts to run before the root filesystem is mounted
324 NFS is an exception, because it has no device node to be created
325 and mounts in the udev events
328 scripts to mount the root filesystem
329 NFS is an exception, because it has no device node to be created
330 and mounts in the udev events
331 If the udev queue is empty and no root device is found or no root
332 filesystem was mounted, the user will be dropped to a shell after
336 scripts to run before the real init is executed and the initramfs
338 All processes started before should be killed here.
340 The behaviour of the dmraid module demonstrates how to use the new
341 mechanism. If it detects a device which is part of a raidmember from a
342 udev rule, it installs a job to scan for dmraid devices, if the udev
343 queue is empty. After a scan, it removes itsself from the queue.
350 - first public version