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