4 dracut now requires libkmod for the dracut-install binary helper.
7 - restorecon final image file
8 - fail hard, if we find modules and modules.dep is missing
9 - support --tmpdir as a relative path
10 - add default path for --uefi
13 - fix check_vol_slaves() volume group name stripping
16 - catch ldd message "cannot execute binary file"
17 - added kernel module handling with libkmod
21 --mod-filter-nopath, -P
22 --mod-filter-symbol, -s
23 --mod-filter-nosymbol, -S
24 --mod-filter-noname, -N
28 - fallback to non-hostonly mode if lsmod fails
31 - new option "--unpack"
32 - new option "--unpackearly"
35 general initramfs fixes:
36 - don't remove 99-cmdline-ask on 'hostonly' cleanup
37 - call dracut-cmdline-ask.service, if /etc/cmdline.d/*.conf exists
38 - break at switch_root only for bare rd.break
39 - add rd.emergency=[reboot|poweroff|halt]
40 specifies what action to execute in case of a critical failure
41 - rd.memdebug=4 gives information, about kernel module memory consumption
45 - fixed livenet-generator execution flag
46 and include only, if systemd is used
47 - fixed dmsquash-live-root.sh for cases where the fstype of the liveimage is squashfs
48 - fixed typo for rootfs.img
51 - added "nowatch" option in udev rule, otherwise udev would reread partitions for raid members
54 - handle readonly /run on shutdown
57 - add all HID drivers, regardless of hostonly mode
58 people swap keyboards sometimes and should be able to enter their disk password
60 To save the rdsosreport.txt to a USB stick, the usb-storage module is needed.
65 - add /etc/machine-info
66 - fixed systemd-escape call for names beginning with "-"
67 - install missing drop-in configuration files for
68 /etc/systemd/{journal.conf,system.conf}
71 - add support to F2FS filesystem (fsck and modules)
74 - fix carrier detection
75 - correctly set mac address for ip=...:<mtu>:<mac>
76 - fixed vlan, bonding, bridging, team logic
77 call ifup for the slaves and assemble afterwards
78 - add mtu to list of variables to store in override
79 - for rd.neednet=0 a bootdev is not needed anymore
80 - dhclient-script.sh: add classless-static-routes support
81 - support for iBFT IPv6
82 - support macaddr in brackets [] (commit 740c46c0224a187d6b5a42b4aa56e173238884cc)
83 - use arping2, if available
84 - support multiple default gateways from DHCP server
87 - add systemd generator
88 - use export names instead of port numbers, because port number based
89 exports are deprecated and were removed.
92 - no more /dev/shm state copying
95 - check all /dev/mapper devices if they are multipath devices, not only mpath*
98 - fixed .hmac installation in FIPS mode
101 - also trigger the acpi subsystem
104 - add imjournal.so to read systemd journal
105 - move start from udev to initqueue/online
108 - make it a non default module
111 - support nfs:// urls in livenet-generator
114 - install all nfs modules non-hostonly
119 - better udev & systemd dir detection
120 - split dracut-functions.sh in dracut-init.sh and dracut-functions.sh
121 dracut-functions.sh can now be sourced by external tools
122 - detect all btrfs devices needed
123 - added flag file if initqueue is needed
124 - don't overwrite anything, if initramfs image file creation failed
125 - if no compressor is specified, try to find a suitable one
126 - drop scanning kernel config for CONFIG_MICROCODE_*_EARLY
127 - remove "_EARLY" from CONFIG_MICROCODE_* checks
128 - dracut.sh: add command line option for install_i18_all
129 --no-hostonly-i18n -> install_i18n_all=yes
130 --hostonly-i18n -> install_i18n_all=no
131 - --no-reproducible to turn off reproducible mode
132 - dracut-function.sh can now be sourced from outside of dracut
133 - dracut-init.sh contains all functions, which only can be used from
134 within the dracut infrastructure
135 - support --mount with just mountpoint as a parameter
136 - removed action_on_fail support
137 - removed host_modalias concept
138 - do not create microcode, if no firmware is available
139 - skip gpg files in microcode generation
142 - ensure pre-mount (and resume) run before root fsck
143 - add --online option to initqueue
146 - fixed virtual machine detection
149 - remove all quirk arguments for lvm >= 2.2.221
152 - fixup for checkisomd5
153 - increase timeout for checkisomd5
154 - use non-persistent metadata snapshots for transient overlays.
155 - overflow support for persistent snapshot.
156 - use non-persistent metadata snapshots.
157 - avoid an overlay for persistent, uncompressed, read-write live installations.
160 - multipath.conf included in hostonly mode
161 - install all multipath path selector kernel modules
164 - use the iBFT initiator name, if found and set
165 - iscsid now present in the initramfs
166 - iscsistart is done with systemd-run asynchrone to do things in
167 paralllel. Also restarted for every new interface which shows up.
168 - If rd.iscsi.waitnet (default) is set, iscsistart is done only
169 after all interfaces are up.
170 - If not all interfaces are up and rd.iscsi.testroute (default) is set,
171 the route to a iscsi target IP is checked and skipped, if there is none.
172 - If all things fail, we issue a "dummy" interface iscsiroot to retry
173 everything in the initqueue/timeout.
176 - added DHCP RENEW/REBIND
177 - IPv4 DHCP lease time now optional (bootp)
179 - fixed IPv6 route parsing
180 - rd.peerdns=0 parameter to disable DHCP nameserver setting
181 - detect duplicate IPv4 addresses for static addresses
182 - if interfaces are specified with its enx* name, bind the correspondent MAC to the interface name
183 - if multiple "ip=" are present on the kernel command line "rd.neednet=1" is assumed
184 - add options to tweak timeouts
185 rd.net.dhcp.retry=<cnt>
186 If this option is set, dracut will try to connect via dhcp
187 <cnt> times before failing. Default is 1.
189 rd.net.timeout.dhcp=<arg>
190 If this option is set, dhclient is called with "-timeout <arg>".
192 rd.net.timeout.iflink=<seconds>
193 Wait <seconds> until link shows up. Default is 60 seconds.
195 rd.net.timeout.ifup=<seconds>
196 Wait <seconds> until link has state "UP". Default is 20 seconds.
198 rd.net.timeout.route=<seconds>
199 Wait <seconds> until route shows up. Default is 20 seconds.
201 rd.net.timeout.ipv6dad=<seconds>
202 Wait <seconds> until IPv6 DAD is finished. Default is 50 seconds.
204 rd.net.timeout.ipv6auto=<seconds>
205 Wait <seconds> until IPv6 automatic addresses are assigned.
206 Default is 40 seconds.
208 rd.net.timeout.carrier=<seconds>
209 Wait <seconds> until carrier is recognized. Default is 5 seconds.
212 - load signed certificates in the IMA keyring, see modules.d/98integrity/README
213 - load EVM public key in the kernel _evm keyring
216 fcoe: start with fcoemon instead of fipvlan
220 - add missing dmsquash-generator
224 - fixed dmsetup shutdown
225 - new kernel command line option "rd.live.overlay.thin"
226 This option changes the underlying mechanism for the overlay in the
228 Instead of a plain dm snapshot a dm thin snapshot is used. The advantage
229 of the thin snapshot is, that the TRIM command is recognized, which
230 means that at runtime, only the occupied blocks will be claimed from
231 memory, and freed blocks will really be freed in ram.
232 - dmsquash: Add squashfs support to rd.live.fsimg
233 Previously rd.live.fsimg only supported filesystems residing in
234 (compressed) archives.
235 Now rd.live.fsimg can also be used when a squashfs image is used.
236 This is achieved by extracting the rootfs image from the squashfs and
237 then continue with the default routines for rd.live.fsimg.
238 - lvm: add support for LVM system id
239 - split up the systemd dracut module
240 Basic systemd functionality is in 00systemd now.
241 Switching root and the initrd.target is in 00systemd-initrd.
242 Dracut additions to the systemd initrd are in 98dracut-systemd.
243 - support for creating a UEFI boot executable via argument "--uefi"
244 With an EFI stub, the kernel, the initramfs and a kernel cmdline can be
245 glued together to a single UEFI executable, which can be booted by a
247 - network: split out kernel-network-modules, now in 90kernel-network-modules
248 - support for ethernet point-to-point connections configured via DHCP
249 - kernel-modules: install all HID drivers
250 - dracut.pc pkg-config file
251 - mount /dev, /dev/shm and /run noexec
255 - fixed the shutdown loop
256 - fixed gzip compression for versions, which do not have --rsyncable
257 - fixed ifcfg generation for persistent interface names
259 * new option to turn off multipath "rd.multipath=0" completly
260 * preload scsi dh modules
261 * start multipathd via systemd service
262 - do not fail, if user pressed ESC during media check
263 - fixed systemd-journal by symlinking /var/log to /run/initramfs/log
264 - initrd-release moved to /usr/lib
265 - lots of iSCSI fixes
266 - new "rd.timeout" to specify the systemd JobTimeoutSec for devices
267 - if $initrd/etc/cmdline.d/* has a "root=" and the kernel cmdline does not,
268 generate a mount unit for it
269 - increased the initqueue timeout for non systemd initramfs to 180s
270 - $initrd/etc/cmdline.d/ hostonly files are now generated for NFS
271 - make use of systemd-hibernate-resume, if available
272 - fixed ldconfig parsing for hwcap output
273 - network: add support for comma separated autoconf options like ip=eth0:auto6,dhcp
274 - new parameter "rd.live.overlay.size" to specify the overlay for live images
275 - changed the test suite for the new sfdisk syntax
276 - added cache tools for dm-cache setups
280 - fixed dracut module dependency checks
285 - DRACUT_PATH can now be used to specify the PATH used by dracut
286 to search for binaries instead of the default
287 /usr/sbin:/sbin:/usr/bin:/bin
288 This should be set in the distribution config file
289 /usr/lib/dracut/dracut.conf.d/01-dist.conf
290 - add "--loginstall <DIR>" and loginstall="<DIR>" options
291 to record all files, which are installed from the host fs
292 - "rd.writable.fsimg" - support for read/write filesystem images
293 - "rd.route" kernel command line parameter added
294 - "--install-optional" and install_optional_items added
295 - find plymouth pkglibdir on debian
296 - torrent support for live images
297 root=live:torrent://example.com/liveboot.img.torrent
298 and generally added as a download handler
299 - disable microcode, if the kernel does not support it
300 - speed up ldconfig_paths()
302 - fixed inst*() functions and "-H" handling
304 - added --force-drivers parameter and force_drivers=+ config option
305 to enforce driver loading at early boot time
306 - documented "iso-scan/filename" usage in grub
311 - "rd.cmdline=ask" will ask the user on the console to enter additional
312 kernel command line parameters
313 - "rd.hostonly=0" removes all "hostonly" added custom files,
314 which is useful in combination with "rd.auto" or other specific parameters,
315 if you want to boot on the same hardware, but the compiled in configuration
316 does not match your setup anymore
317 - inst* functions and dracut-install now accept the "-H" flag, which logs all
318 installed files to /lib/dracut/hostonly-files. This is used to remove those
319 files, if rd.hostonly is given on the kernel command line
320 - strstr now only does literal string match,
321 please use strglob and strglobin for globs
322 - fixed unpacking of the microcode image on shutdown
323 - added systemd-gpt-auto-generator
324 - fcoe: wait for lldpad to be ready
325 - network: handle "ip=dhcp6"
326 - network: DCHPv6: set valid_lft and preferred_lft
327 - dm: support dm-cache
328 - fstab: do not mount and fsck from fstab if using systemd
329 - break at switch_root only for bare rd.break and not for any rd.break=...
330 - nbd: make use of "--systemd-mark", otherwise it gets killed on switch_root
331 - fcoe-uefi: fixed cmdline parameter generation
332 - iscsi: deprecate "ip=ibft", use "rd.iscsi.ibft[=1]" from now on
333 - "lsinitrd -m" now only lists the dracut modules of the image
334 - a lot of small bugfixes
338 - dracut: hostonly_cmdline variable and command line switch
339 Toggle hostonly cmdline storing in the initramfs
341 Store kernel command line arguments needed in the initramfs
342 --no-hostonly-cmdline:
343 Do not store kernel command line arguments needed in the initramfs
344 - dracut: --mount now understands full fstab lines
345 - dracut now also includes drivers from the /lib/modules/<version>/updates directory
346 - dracut: only set the owner of files to 0:0, if generated as non-root
347 - dracut now directly writes to the initramfs file
348 - dracut: call lz4 with the legacy flag (linux kernel does not support the new format)
349 - systemd: rootfs-generator generates JobTimeout=0 units for the root device
350 - systemd: added the systemd-sysctl service
351 - systemd: add 80-net-setup-link.rules and .link files for persistent interface renaming
352 - systemd: make dracut-shutdown.service failure non-fatal
353 - network: various IPv6 fixes
354 - network: DCHCP for IPv6
355 - network: understand ip=.....:<dns1>:<dns2>
356 - network: parse ibft nameserver settings
357 - shutdown: if kexec fails, just reboot
358 - lvm: handle one LV at a time with lvchange
360 New functions require_binaries() and require_any_binary() to be used
361 in the check() section of module-setup.sh.
362 - a lot of small bugfixes
377 - fixed skipcpio signature checking
381 - changed dracut tarball compression to xz
382 - new argument "--rebuild"
383 - add lzo, lz4 compression
384 - install: install all binaries with <name> found in PATH
385 - lsinitrd can now handle initramfs images with an early cpio prepended
386 (microcode, ACPI tables)
387 - mkinitrd-suse added as a compat stub for dracut
388 - lvm: install thin utils for non-hostonly
389 - resume: fix swap detection in hostonly
390 - avoid loading unnecessary 32-bit libraries for 64-bit initrds
391 - crypt: wait for systemd password agents
392 - crypt: skip crypt swaps with password files
393 - network: before doing dhcp, dracut now checks, if the link has a carrier
394 - network: dhclient-script.sh now sets the lease time
395 - network: include usbnet drivers
396 - network: include all ethernet drivers
397 - network: add rd.bootif=0 to ignore BOOTIF
398 - i18n: introduce i18n_install_all, to install everything i18n related
399 - support SuSE DASD configurations
400 - support SuSE zfcp configurations
401 - support SuSE compressed KEYMAP= setting
402 - usrmount: always install the module,
403 so always mount /usr from within the initramfs
404 - test/TEST-17-LVM-THIN: new test case for lvm thin pools
405 - "halt" the machine in systemd mode for die()
409 - do not run dhcp on parts of assembled network interfaces (bond, bridge)
410 - add option to turn on/off prelinking
411 --prelink, --noprelink
413 - add ACPI table overriding
414 - do not log to syslog/kmsg/journal for UID != 0
415 - lvm/mdraid: Fix LVM on MD activation
416 - bcache module removed (now in bcache-tools upstream)
417 - mdadm: also install configs from /etc/mdadm.conf.d
418 - fixes for mdadm-3.2.6+
419 - mkinitrd: better compat support for SUSE
420 - fcoe: add FCoE UEFI boot device support
421 - rootfs-block: add support for the rootfallback= kernel cmdline option
433 - improved hostonly device recognition
434 - improved hostonly module recognition
435 - add dracut.css for dracut.html
436 - do not install udev rules from /etc in generic mode
437 - fixed LABEL= parsing for swap devices
438 - fixed iBFT network setup
439 - url-lib.sh: handle 0-size files with curl
440 - dracut.asc: document debugging dracut on shutdown
441 - if rd.md=0, use dmraid for imsm and ddf
442 - skip empty dracut modules
443 - removed caching of kernel cmdline
444 - fixed iso-scan, if the loop device driver is a kernel module
445 - bcache: support new blkid
446 - fixed ifup udev rules
447 - ifup with dhcp, if no "ip=" specified for the interface
457 - add parameter --print-cmdline
458 This prints the kernel command line parameters for the current disk
460 $ dracut --print-cmdline
461 rd.luks.uuid=luks-e68c8906-6542-4a26-83c4-91b4dd9f0471
462 rd.lvm.lv=debian/root rd.lvm.lv=debian/usr root=/dev/mapper/debian-root
463 rootflags=rw,relatime,errors=remount-ro,user_xattr,barrier=1,data=ordered
465 - dracut.sh: add --persistent-policy option and persistent_policy conf option
466 --persistent-policy <policy>:
467 Use <policy> to address disks and partitions.
468 <policy> can be any directory name found in /dev/disk.
469 E.g. "by-uuid", "by-label"
470 - dracut now creates the initramfs without udevadm
471 that means the udev database does not have to populated
472 and the initramfs can be built in a chroot with
473 /sys /dev /proc mounted
474 - renamed dracut_install() to inst_multiple() for consistent naming
475 - if $libdirs is unset, fall back to ld.so.cache paths
476 - always assemble /usr device in initramfs
477 - bash module added (disable it, if you really want dash)
478 - continue to boot, if the main loop times out, in systemd mode
479 - removed inst*() shell pure versions, dracut-install binary is in charge now
480 - fixed ifcfg file generation for vlan
481 - do not include adjtime and localtime anymore
482 - fixed generation of zfcp.conf of CMS setups
483 - install vt102 terminfo
484 dracut_install() is still there for backwards compat
485 - do not strip files in FIPS mode
486 - fixed iBFT interface configuration
487 - fs-lib: install fsck and fsck.ext*
488 - shutdown: fixed killall_proc_mountpoint()
489 - network: also wait for ethernet interfaces to setup
490 - fixed checking for FIPS mode
504 - do not include the resume dracut module in hostonly mode,
505 if no swap is present
506 - don't warn twice about omitted modules
507 - use systemd-cat for logging on systemd systems, if logfile is unset
508 - fixed PARTUUID parsing
509 - support kernel module signing keys
510 - do not install the usrmount dracut module in hostonly mode,
511 if /sbin/init does not live in /usr
512 - add debian udev rule files
513 - add support for bcache
514 - network: handle bootif style interfaces
515 e.g. ip=77-77-6f-6f-64-73:dhcp
516 - add support for kmod static devnodes
517 - add vlan support for iBFT
530 - support new persistent network interface names
531 - fix findmnt calls, prevents hang on stale NFS mounts
532 - add systemd.slice and slice.target units
533 - major shell cleanup
534 - support root=PARTLABEL= and root=PARTUUID=
535 - terminfo: only install l/linux v/vt100 and v/vt220
536 - unset all LC_* and LANG, 10% faster
537 - fixed dependency loop for dracut-cmdline.service
538 - do not wait_for_dev for the root devices
539 - do not wait_for_dev for devices, if dracut-initqueue is not needed
540 - support early microcode loading with --early-microcode
541 - dmraid, let dmraid setup its own partitions
542 - sosreport renamed to rdsosreport
546 Konrad Rzeszutek Wilk
551 - wait for IPv6 autoconfiguration
552 - i18n: make the default font configurable
553 To set the default font for your distribution, add
554 i18n_default_font="latarcyrheb-sun16"
555 to your /lib/dracut/dracut.conf.d/01-dist.conf distribution config.
556 - proper handle "rd.break" in systemd mode before switch-root
557 - systemd: make unit files symlinks
558 - build without dash requirement
559 - add dracut-shutdown.service.8 manpage
560 - handle MACs for "ip="
561 "ip=77-77-6f-6f-64-73:dhcp"
562 - don't explode when mixing BOOTIF and ip=
563 - 90lvm/module-setup.sh: redirect error message of lvs to /dev/null
572 - full integration of crypto devs in systemd logic
573 - support for bridge over team and vlan tagged team
574 - support multiple bonding interfaces
575 - new kernel command line param "rd.action_on_fail"
576 to control the emergency action
577 - support for bridge over a vlan tagged interface
578 - support for "iso-scan/filename" kernel parameter
579 - lsinitrd got some love and does not use "file" anymore
580 - fixed issue with noexec mounted tmp dirs
582 - dracut_install got some love
583 - fixed some /usr mounting problems
584 - ifcfg dracut module got some love and fixes
585 - default installed font is now latarcyrheb-sun16
586 - new parameters rd.live.dir and rd.live.squashimg
587 - lvm: add tools for thin provisioning
588 - also install non-hwcap libs
589 - setup correct system time and time zone in initrd
590 - s390: fixed cms setup
591 - add systemd-udevd persistent network interface naming
607 - dracut now has bash-completion
608 - require bash version 4
609 - systemd module now requires systemd >= 199
610 - dracut makes use of native systemd initrd units
611 - added hooks for new-kernel-pkg and kernel-install
612 - hostonly is now default for fedora
613 - comply with the BootLoaderSpec paths
614 http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec
615 - added rescue module
616 - host_fs_types is now a hashmap
617 - new dracut argument "--regenerate-all"
618 - new dracut argument "--noimageifnotneeded"
619 - new man page dracut.bootup
620 - install all host filesystem drivers
621 - use -D_FILE_OFFSET_BITS=64 to build dracut-install
625 - introduce /usr/lib/dracut/dracut.conf.d/ drop-in directory
627 /usr/lib/dracut/dracut.conf.d/*.conf can be overwritten by the same
628 filenames in /etc/dracut.conf.d.
630 Packages should use /usr/lib/dracut/dracut.conf.d rather than
631 /etc/dracut.conf.d for drop-in configuration files.
633 /etc/dracut.conf and /etc/dracut.conf.d belong to the system administrator.
635 - uses systemd-198 native initrd units
636 - totally rely on the fstab-generator in systemd mode for block devices
637 - dracut systemd now uses dracut.target rather than basic.target
638 - dracut systemd services optimize themselves away
639 - fixed hostonly parameter generation
640 - turn off curl globbing (fixes IPv6)
641 - modify the udev rules on install and not runtime time
642 - enable initramfs building without kernel modules (fixed regression)
643 - in the initqueue/timeout,
644 reset the main loop counter, as we see new udev events or initqueue/work
645 - fixed udev rule installation
649 - do not strip signed kernel modules
650 - add sosreport script and generate /run/initramfs/sosreport.txt
651 - make short uuid specification for allow-discards work
652 - turn off RateLimit for the systemd journal
653 - fixed MAC address assignment
654 - add systemd checkisomd5 service
655 - splitout drm kernel modules from plymouth module
656 - add 'swapoff' to initramfs to fix shutdown/reboot
657 - add team device support
658 - add pre-shutdown hook
659 - kill all processes in shutdown and report remaining ones
660 - "--device" changed to "--add-device" and "add_device=" added for conf files
661 - add memory usage trace to different hook points
662 - cope with optional field #7 in /proc/self/mountinfo
663 - lots of small bugfixes
667 - new dracut option "--device"
668 - new dracut kernel command line options "rd.auto"
669 - new dracut kernel command line options "rd.noverifyssl"
670 - new dracut option "--kernel-cmdline" and "kernel_cmdline" option for default parameters
671 - fixes for systemd and crypto
672 - fix for kexec in shutdown, if not included in initramfs
673 - create the initramfs non-world readable
674 - prelink/preunlink in the initramfs
675 - strip binaries in the initramfs by default now
677 - various dracut-install fixes
681 - resume from hibernate fixes
682 - -N option for --no-hostonly
683 - support for systemd crypto handling
684 - new dracut module "crypt-loop"
685 - deprecate the old kernel command line options
687 - honor CFLAGS for dracut-install build
689 - / is mounted according to rootflags parameter but forced ro at first.
690 Later it is remounted according to /etc/fstab + rootflags parameter
692 - support for xfs / reiserfs separate journal device
693 - new "ro_mnt" option to force ro mount of / and /usr
694 - root on cifs support
695 - dracut-install: fixed issue for /var/tmp containing a symlink
696 - only lazy resolve with ldd, if the /var/tmp partition is not mounted with "noexec"
697 - i18n: fixed inclusion of "include" keymaps
701 - fixed host-only kernel module bug
705 - fixed systemd in the initramfs (requires systemd >= 187)
706 - dracut-install: massive speedup with /var on the same filesystem with COW copy
707 - dracut-install: moved to /usr/lib/dracut until it becomes a general purpose tool
708 - new options: "rd.usrmount.ro" and "rd.skipfsck"
710 - apply "ro" on the kernel command line also to /usr
711 - mount according to fstab, if neither "ro" or "rw" is specified
712 - skip fsck for xfs and btrfs. remount is enough
713 - give emergency_shell if /usr mount failed
714 - dracut now uses getopt:
715 * options can be position independent now!!
716 * we can now use --option=<arg>
717 - added option "--kver=<kernel-version>", and the image location can be omitted
718 # dracut --kver 3.5.0-0.rc7.git1.2.fc18.x86_64
719 - dracut.sh: for --include copy also the symbolic links
720 - man pages: lsinitrd and mkinitrd added
721 - network: We do not support renaming in the kernel namespace anymore (as udev does
722 that not anymore). So, if a user wants to use ifname, he has to rename
723 to a custom namespace. "eth[0-9]+" is not allowed anymore. !!!!!
724 - resume: moved the resume process to the initqueue.
725 This should prevent accidently mounting the root file system.
726 - testsuite: add support for: make V=1 TESTS="01 20 40" check
727 $ sudo make V=1 clean check
728 now runs the testsuite in verbose mode
730 $ sudo make TESTS="01 20 40" clean check
731 now only runs the 01, 20 and 40 tests.
735 - changed rd.dasd kernel parameter
736 - arm kernel modules added to kernel-modules
737 - make udevdir systemdutildir systemdsystemunitdir global vars
738 your distribution should ship those settings in
739 /etc/dracut.conf.d/01-distro.conf
740 see dracut.conf.d/fedora.conf.example
741 - kernel modules are now only handled with /sys/modules and modules.dep
743 - mdraid: wait for md devices to be clean, before shutdown
744 - ifup fixed for ipv6
745 - add PARTUUID as root=PARTUUID=<partition uuid> parameter
746 - fixed instmods() return code and set pipefail globally
747 - add 04watchdog dracut module
748 - dracut-shutdown.service: fixed ordering to be before shutdown.target
749 - make use of "ln -r" instead of shell functions, if new coreutils is installed
750 - network: support vlan tagged bonding
751 - new dracut module qemu and qemu-net to install all kernel driver
752 - fs-lib/fs-lib.sh: removed test mounting of btrfs and xfs
753 - no more "mknod" in the initramfs!!
754 - replaced all "tr" calls with "sed"
755 - speedup with lazy kernel module dependency resolving
756 - lots of speedup optimizations and last but not least
758 - new binary to significanlty speedup the installation process
759 - dracut-functions.sh makes use of it, if installed
764 - initqueue/online hook
765 - fixes for ifcfg write out
766 - rootfs-block: avoid remount when options don't change
767 - Debian multiarch support
768 - virtfs root filesystem support
769 - cope with systemd-udevd
770 - mount tmpfs with strictatime
771 - include all kernel/drivers/net/phy drivers
772 - add debug_on() and debug_off() functions
773 - add arguments for source_hook() and source_all()
775 - plymouth: get consoledev from /sys/class/tty/console/active
776 - experimental systemd dracut module for systemd in the initramfs
777 - install xhci-hcd kernel module
778 - dracut: new "--mount" option
779 - lsinitrd: new option --printsize
780 - ARM storage kernel modules added
781 - s390 cms conf file support
782 - /etc/initrd-release in the initrd
784 - full bonding and bridge support
785 - removed scsi_wait_scan kernel module from standard install
786 - support rd.luks.allow-discards and honor options in crypttab
791 - lvm: ignore lvm mirrors
792 - lsinitrd: handle LZMA images
793 - iscsi: add rd.iscsi.param
794 - iscsi: add iscsi interface binding
795 - new module cms to read and handle z-Series cms config files
796 - fixed fstab.sys handling
797 - new dracut option "--tmpdir"
798 - new dracut option "--no-hostonly"
799 - nbd: name based nbd connects
800 - converted manpage and documentation source to asciidoc
801 - write-ifcfg fixes and cleanups
802 - ifup is now done in the initqueue
804 - initqueue/online is now for hooks, which require network
805 - no more /tmp/root.info
806 - 98pollcdrom: factored out the ugly cdrom polling in the main loop
807 - simplified rd.luks.uuid testing
808 - removed "egrep" and "ls" calls
809 - speedup kernel module installation
810 - make bzip2 optional
815 - a _lot_ faster than dracut-016 in image creation
816 - systemd service dracut-shutdown.service
818 - ssh-client module install fix
819 - root=iscsi:... fixed
820 - lots of restructuring and optimizing in dracut-functions.sh
821 - usrmount: honor fs_passno in /etc/fstab
822 - renamed all shell scripts to .sh
823 - new option "--omit-drivers" and config option "omit_drivers"
824 - hostonly mode fixups
829 - honor binaries in sbin first
830 - fixed usrmount module
831 - added systemd service for shutdown
832 - fixed terminfo on distros with /usr/share/terminfo
833 - reload udev rules after "pre-trigger" hook
834 - improved test suite
835 - new parameter "--omit-drivers" and new conf param omit_drivers
836 - "--offroot" support for mdraid
837 - new libs: net-lib.sh, nfs-lib.sh, url-lib.sh, img-lib.sh
838 full of functions to use in your dracut module
842 - hostonly mode automatically adds command line options for root and /usr
843 - --add-fstab --mount parameters
845 - --ctty option: add job control
846 - cleanup /run/initramfs
848 - /sbin/ifup can be called directly
849 - support kernel modules compressed with xz
850 - s390 iscsi modules added
852 - lsinitrd can handle concatened images
853 - lsinitrd can sort by size
857 - new dracut arguments:
866 - new kernel options:
870 - dracut move from /sbin to /usr/bin
871 - dracut modules dir moved from /usr/share/dracut to /usr/lib/dracut
872 - profiling with "dracut --profile"
873 - new TEST-16-DMSQUASH, test for Fedora LiveCDs
874 - speedup of initramfs creation
875 - ask_for_password fallback to CLI
876 - mdraid completely switched to incremental assembly
877 - no more cdrom polling
878 - "switch_root" breakpoint is now very late
881 - fs-lib dracut module for fscks added
882 - xen dracut module removed
883 - usb mass storage kernel drivers now included
884 - usrmount dracut module added:
885 mount /usr if found in /sysroot/etc/fstab
886 - only include fsck helper needed for hostonly
887 - fcoe: support for bnx2fc
888 - support iSCSI drivers: qla4xxx, cxgb3i, cxgb4i, bnx2i, be2iscsi
889 - fips-aesni dracut module added
890 - add install_items to dracut.conf
891 install_items+=" <file>[ <file> ...] "
892 - speedup internal testsuite
893 - internal testsuite: store temporary data in a temporary dir
897 - speedup of initramfs creation
898 - fixed inst_dir for symbolic links
899 - add unix kernel module
903 - better fsck handling
904 - fixed wait condition for LVM volumes
905 - fix for hardlinks (welcome Debian! :-)
907 - automatic busybox symlink creation
908 - try to mount /usr, if init points to a path in /usr
909 - btrfs with multiple devices
910 - "--force-add" option for dracut, to force-add dracut modules,
911 without hostonly checks
912 - lsinitrd also display the initramfs size in human readable form
913 - livenet module, to mount live-isos over http
914 - masterkey,ecryptfs,integrity security modules
915 - initqueue/timeout queue e.g. for starting degraded raids
916 - "make rpm" creates an rpm with an increasing release number from any
918 - support lvm mirrors
919 - start degraded lvm mirrors after a timeout
920 - start degraded md raids after a timeout
921 - getarg() now returns wildcards without file matching to the current fs
926 - use udev-168 features for shutting down udev
927 - introduce "--prefix" to put all initramfs files in e.g "/run/initramfs"
928 - new shutdown script (called by systemd >= 030) to disassemble the root device
930 - new module for gpg-encrypted keys - 91crypt-gpg
935 - plymouth: use /run/plymouth/pid instead of /run/initramfs/plymouth
936 - add "/lib/firmware/updates" to default firmware path
943 - better argument handling
946 - hooks moved to /lib/dracut/hooks in initramfs
947 - rd.driver.{blacklist|pre|post} accept comma separated driver list
948 - iSCSI: iSCSI Boot Firmware Table (iBFT) support
950 - live image: support for generic rootfs.img (instead of ext3fs.img)
956 - removed --ignore-kernel-modules option (no longer necessary)
957 - renamed kernel command line arguments to follow the rd. naming scheme
958 - merged check, install, installkernel to module-setup.sh
959 - support for bzip2 and xz compressed initramfs images.
960 - source code beautification
961 - lots of documentation
962 - lsinitrd: "catinitrd" functionality
963 - dracut: --list-modules
964 - lvm: support for dynamic LVM SNAPSHOT root volume
965 - 95fstab-sys: mount all /etc/fstab.sys volumes before switch_root
966 - 96insmodpost dracut module
967 - rd.shell=1 per default
968 - rootfs-block:mount-root.sh add fsck
969 - busybox shell replacements module
970 - honor old "real_init="
971 - 97biosdevname dracut module
975 - module i18n is no longer fedora/red hat specific (Amadeusz Żołnowski)
976 - distribution specific conf file
978 - debug module now has fsck
979 - use "hardlink", if available, to save some space
980 - /etc/dracut.conf can be overwritten by settings in /etc/dracut.conf.d/*.conf
981 - gentoo splash module
982 - --ignore-kernel-modules option
983 - crypto keys on external devices support
988 - fixed mdraid with IMSM
989 - fixed dracut manpages
990 - dmraid parse different error messages
991 - add cdrom polling mechanism for slow cdroms
993 - add btrfsctl scan for btrfs multi-devices (raid)
994 - teach dmsquash live-root to use rootflags
995 - trigger udev with action=add
996 - fixed add_drivers handling
998 - use pigz instead of gzip, if available
999 - boot from LVM mirrors and snapshots
1000 - iscsi: add support for multiple netroot=iscsi:
1001 - Support old version of module-init-tools
1002 - got rid of rdnetdebug
1004 - dracut.conf: use "+=" as default for config variables
1009 - dcb support to dracut's FCoE support
1010 - add readonly overlay support for dmsquash
1011 - add keyboard kernel modules
1012 - dracut.conf: added add_dracutmodules
1013 - add /etc/dracut.conf.d
1014 - add preliminary IPv6 support
1019 - dracut-lib: read multiple lines from $init/etc/cmdline
1020 - lsinitrd and mkinitrd
1021 - dmsquash: add support for loopmounted *.iso files
1022 - lvm: add rd_LVM_LV and "--poll n"
1023 - user suspend support
1024 - add additional drivers in host-only mode, too
1025 - improved emergency shell
1026 - support for compressed kernel modules
1027 - support for loading Xen modules
1028 - rdloaddriver kernel command line parameter
1029 - man pages for dracut-catimages and dracut-gencmdline
1034 - add debian package modules
1035 - add dracut.conf manpage
1036 - add module 90multipath
1038 - crypt: ignore devices in /etc/crypttab (root is not in there)
1039 unless rd_NO_CRYPTTAB is specified
1040 - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc
1041 - add multinic support
1042 - add s390 zfcp support
1043 - add s390 dasd support
1044 - add s390 network support
1045 - fixed dracut-gencmdline for root=UUID or LABEL
1046 - do not destroy assembled raid arrays if mdadm.conf present
1048 - let udevd not resolve group and user names
1049 - moved network from udev to initqueue
1050 - improved debug output: specifying "rdinitdebug" now logs
1051 to dmesg, console and /init.log
1052 - strip kernel modules which have no x bit set
1053 - redirect stdin, stdout, stderr all RW to /dev/console
1054 so the user can use "less" to view /init.log and dmesg
1055 - add new device mapper udev rules and dmeventd
1056 - fixed dracut-gencmdline for root=UUID or LABEL
1057 - do not destroy assembled raid arrays if mdadm.conf present
1059 - let udevd not resolve group and user names
1060 - preserve timestamps of tools on initramfs generation
1061 - generate symlinks for binaries correctly
1062 - moved network from udev to initqueue
1063 - mount nfs3 with nfsvers=3 option and retry with nfsvers=2
1064 - fixed nbd initqueue-finished
1065 - improved debug output: specifying "rdinitdebug" now logs
1066 to dmesg, console and /init.log
1067 - strip kernel modules which have no x bit set
1068 - redirect stdin, stdout, stderr all RW to /dev/console
1069 so the user can use "less" to view /init.log and dmesg
1070 - make install of new dm/lvm udev rules optionally
1071 - add new device mapper udev rules and dmeventd
1072 - Fix LiveCD boot regression
1073 - bail out if selinux policy could not be loaded and
1074 selinux=0 not specified on kernel command line
1075 - do not cleanup dmraids
1076 - copy over lvm.conf
1080 - add ifname= argument for persistent netdev names
1081 - new /initqueue-finished to check if the main loop can be left
1082 - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf
1083 - plymouth: use plymouth-populate-initrd
1084 - add add_drivers for dracut and dracut.conf
1085 - add modprobe scsi_wait_scan to be sure everything was scanned
1086 - fix for several problems with md raid containers
1087 - fix for selinux policy loading
1088 - fix for mdraid for IMSM
1089 - fix for bug, which prevents installing 61-persistent-storage.rules (bug #520109)
1090 - fix for missing grep for md
1094 - better --hostonly checks
1095 - better lvm/mdraid/dmraid handling
1096 - fcoe booting support
1097 Supported cmdline formats:
1098 fcoe=<networkdevice>:<dcb|nodcb>
1099 fcoe=<macaddress>:<dcb|nodcb>
1101 Note currently only nodcb is supported, the dcb option is reserved for
1104 Note letters in the macaddress must be lowercase!
1108 fcoe=4A:3F:4C:04:F8:D7:nodcb
1110 - Syslog support for dracut
1111 This module provides syslog functionality in the initrd.
1112 This is especially interesting when complex configuration being
1113 used to provide access to the device the rootfs resides on.
1118 - let plymouth attach to the terminal (nice text output now)
1119 - new kernel command line parameter "rdinfo" show dracut output, even when
1120 "quiet" is specified
1121 - rd_LUKS_UUID is now handled correctly
1122 - dracut-gencmdline: rd_LUKS_UUID and rd_MD_UUID is now correctly generated
1123 - now generates initrd-generic with around 15MB
1128 - iSCSI with username and password
1129 - support for live images (dmsquashed live images)
1130 - iscsi_firmware fixes
1136 - dracut: strip binaries in initramfs
1139 strip binaries in the initramfs (default)
1142 do not strip binaries in the initramfs
1145 Usage: ./dracut-catimages [OPTION]... <initramfs> <base image>
1147 Creates initial ramdisk image by concatenating several images from the
1149 line and /boot/dracut/
1151 -f, --force Overwrite existing initramfs file.
1152 -i, --imagedir Directory with additional images to add
1153 (default: /boot/dracut/)
1154 -o, --overlaydir Overlay directory, which contains files that
1155 will be used to create an additional image
1156 --nooverlay Do not use the overlay directory
1157 --noimagedir Do not use the additional image directory
1158 -h, --help This message
1159 --debug Output debug information of the build process
1160 -v, --verbose Verbose output during the build process
1166 - dracut: add --kernel-only and --no-kernel arguments
1169 only install kernel drivers and firmware files
1172 do not install kernel drivers and firmware files
1174 All kernel module related install commands moved from "install"
1177 For "--kernel-only" all installkernel scripts of the specified
1178 modules are used, regardless of any checks, so that all modules
1179 which might be needed by any dracut generic image are in.
1181 The basic idea is to create two images. One image with the kernel
1182 modules and one without. So if the kernel changes, you only have
1183 to replace one image.
1185 Grub and the kernel can handle multiple images, so grub entry can
1188 title Fedora (2.6.29.5-191.fc11.i586)
1190 kernel /vmlinuz-2.6.29.5-191.fc11.i586 ro rhgb quiet
1191 initrd /initrd-20090722.img /initrd-kernel-2.6.29.5-191.fc11.i586.img /initrd-config.img
1194 the image provided by the initrd rpm
1195 one old backup version is kept like with the kernel
1197 initrd-kernel-2.6.29.5-191.fc11.i586.img
1198 the image provided by the kernel rpm
1201 optional image with local configuration files
1203 - dracut: add --kmoddir directory, where to look for kernel modules
1206 specify the directory, where to look for kernel modules
1212 - more generic (all plymouth modules, all keyboards, all console fonts)
1213 - more kernel command line parameters (see also man dracut(8))
1214 - a helper tool, which generates the kernel command line (dracut-gencmdline)
1215 - bridged network boot
1216 - a lot of new command line parameter
1221 - firmware loading support
1222 - new internal queue (initqueue)
1223 initqueue now loops until /dev/root exists or root is mounted
1225 init now has the following points to inject scripts:
1228 scripts for command line parsing
1231 scripts to run before udev is started
1234 scripts to run before the main udev trigger is pulled
1237 runs in parallel to the udev trigger
1238 Udev events can add scripts here with /sbin/initqueue.
1239 If /sbin/initqueue is called with the "--onetime" option, the script
1240 will be removed after it was run.
1241 If /initqueue/work is created and udev >= 143 then this loop can
1242 process the jobs in parallel to the udevtrigger.
1243 If the udev queue is empty and no root device is found or no root
1244 filesystem was mounted, the user will be dropped to a shell after
1246 Scripts can remove themselves from the initqueue by "rm $job".
1249 scripts to run before the root filesystem is mounted
1250 NFS is an exception, because it has no device node to be created
1251 and mounts in the udev events
1254 scripts to mount the root filesystem
1255 NFS is an exception, because it has no device node to be created
1256 and mounts in the udev events
1257 If the udev queue is empty and no root device is found or no root
1258 filesystem was mounted, the user will be dropped to a shell after
1262 scripts to run before the real init is executed and the initramfs
1264 All processes started before should be killed here.
1266 The behaviour of the dmraid module demonstrates how to use the new
1267 mechanism. If it detects a device which is part of a raidmember from a
1268 udev rule, it installs a job to scan for dmraid devices, if the udev
1269 queue is empty. After a scan, it removes itsself from the queue.
1276 - first public version