dracut-026 ========== - introduce /usr/lib/dracut/dracut.conf.d/ drop-in directory /usr/lib/dracut/dracut.conf.d/*.conf can be overwritten by the same filenames in /etc/dracut.conf.d. Packages should use /usr/lib/dracut/dracut.conf.d rather than /etc/dracut.conf.d for drop-in configuration files. /etc/dracut.conf and /etc/dracut.conf.d belong to the system administrator. - uses systemd-198 native initrd units - totally rely on the fstab-generator in systemd mode for block devices - dracut systemd now uses dracut.target rather than basic.target - dracut systemd services optimize themselves away - fixed hostonly parameter generation - turn off curl globbing (fixes IPv6) - modify the udev rules on install and not runtime time - enable initramfs building without kernel modules (fixed regression) - in the initqueue/timeout, reset the main loop counter, as we see new udev events or initqueue/work - fixed udev rule installation dracut-025 ========== - do not strip signed kernel modules - add sosreport script and generate /run/initramfs/sosreport.txt - make short uuid specification for allow-discards work - turn off RateLimit for the systemd journal - fixed MAC address assignment - add systemd checkisomd5 service - splitout drm kernel modules from plymouth module - add 'swapoff' to initramfs to fix shutdown/reboot - add team device support - add pre-shutdown hook - kill all processes in shutdown and report remaining ones - "--device" changed to "--add-device" and "add_device=" added for conf files - add memory usage trace to different hook points - cope with optional field #7 in /proc/self/mountinfo - lots of small bugfixes dracut-024 ========== - new dracut option "--device" - new dracut kernel command line options "rd.auto" - new dracut kernel command line options "rd.noverifyssl" - new dracut option "--kernel-cmdline" and "kernel_cmdline" option for default parameters - fixes for systemd and crypto - fix for kexec in shutdown, if not included in initramfs - create the initramfs non-world readable - prelink/preunlink in the initramfs - strip binaries in the initramfs by default now - various FIPS fixes - various dracut-install fixes dracut-023 ========== - resume from hibernate fixes - -N option for --no-hostonly - support for systemd crypto handling - new dracut module "crypt-loop" - deprecate the old kernel command line options - more documentation - honor CFLAGS for dracut-install build - multipath fixes - / is mounted according to rootflags parameter but forced ro at first. Later it is remounted according to /etc/fstab + rootflags parameter and "ro"/"rw". - support for xfs / reiserfs separate journal device - new "ro_mnt" option to force ro mount of / and /usr - root on cifs support - dracut-install: fixed issue for /var/tmp containing a symlink - only lazy resolve with ldd, if the /var/tmp partition is not mounted with "noexec" - i18n: fixed inclusion of "include" keymaps dracut-022 ========== - fixed host-only kernel module bug dracut-021 ========== - fixed systemd in the initramfs (requires systemd >= 187) - dracut-install: massive speedup with /var on the same filesystem with COW copy - dracut-install: moved to /usr/lib/dracut until it becomes a general purpose tool - new options: "rd.usrmount.ro" and "rd.skipfsck" - less mount/umount - apply "ro" on the kernel command line also to /usr - mount according to fstab, if neither "ro" or "rw" is specified - skip fsck for xfs and btrfs. remount is enough - give emergency_shell if /usr mount failed - dracut now uses getopt: * options can be position independent now!! * we can now use --option= - added option "--kver=", and the image location can be omitted # dracut --kver 3.5.0-0.rc7.git1.2.fc18.x86_64 - dracut.sh: for --include copy also the symbolic links - man pages: lsinitrd and mkinitrd added - network: We do not support renaming in the kernel namespace anymore (as udev does that not anymore). So, if a user wants to use ifname, he has to rename to a custom namespace. "eth[0-9]+" is not allowed anymore. !!!!! - resume: moved the resume process to the initqueue. This should prevent accidently mounting the root file system. - testsuite: add support for: make V=1 TESTS="01 20 40" check $ sudo make V=1 clean check now runs the testsuite in verbose mode $ sudo make TESTS="01 20 40" clean check now only runs the 01, 20 and 40 tests. dracut-020 ========== - changed rd.dasd kernel parameter - arm kernel modules added to kernel-modules - make udevdir systemdutildir systemdsystemunitdir global vars your distribution should ship those settings in /etc/dracut.conf.d/01-distro.conf see dracut.conf.d/fedora.conf.example - kernel modules are now only handled with /sys/modules and modules.dep - systemd fixups - mdraid: wait for md devices to be clean, before shutdown - ifup fixed for ipv6 - add PARTUUID as root=PARTUUID= parameter - fixed instmods() return code and set pipefail globally - add 04watchdog dracut module - dracut-shutdown.service: fixed ordering to be before shutdown.target - make use of "ln -r" instead of shell functions, if new coreutils is installed - network: support vlan tagged bonding - new dracut module qemu and qemu-net to install all kernel driver - fs-lib/fs-lib.sh: removed test mounting of btrfs and xfs - no more "mknod" in the initramfs!! - replaced all "tr" calls with "sed" - speedup with lazy kernel module dependency resolving - lots of speedup optimizations and last but not least - dracut-install: - new binary to significanlty speedup the installation process - dracut-functions.sh makes use of it, if installed dracut-019 ========== - initqueue/online hook - fixes for ifcfg write out - rootfs-block: avoid remount when options don't change - Debian multiarch support - virtfs root filesystem support - cope with systemd-udevd - mount tmpfs with strictatime - include all kernel/drivers/net/phy drivers - add debug_on() and debug_off() functions - add arguments for source_hook() and source_all() - cleanup hook - plymouth: get consoledev from /sys/class/tty/console/active - experimental systemd dracut module for systemd in the initramfs - install xhci-hcd kernel module - dracut: new "--mount" option - lsinitrd: new option --printsize - ARM storage kernel modules added - s390 cms conf file support - /etc/initrd-release in the initrd - vlan support - full bonding and bridge support - removed scsi_wait_scan kernel module from standard install - support rd.luks.allow-discards and honor options in crypttab - lots of bugfixes dracut-018 ========== - lvm: ignore lvm mirrors - lsinitrd: handle LZMA images - iscsi: add rd.iscsi.param - iscsi: add iscsi interface binding - new module cms to read and handle z-Series cms config files - fixed fstab.sys handling - new dracut option "--tmpdir" - new dracut option "--no-hostonly" - nbd: name based nbd connects - converted manpage and documentation source to asciidoc - write-ifcfg fixes and cleanups - ifup is now done in the initqueue - netroot cleanup - initqueue/online is now for hooks, which require network - no more /tmp/root.info - 98pollcdrom: factored out the ugly cdrom polling in the main loop - simplified rd.luks.uuid testing - removed "egrep" and "ls" calls - speedup kernel module installation - make bzip2 optional - lots of bugfixes dracut-017 ========== - a _lot_ faster than dracut-016 in image creation - systemd service dracut-shutdown.service - livenet fixes - ssh-client module install fix - root=iscsi:... fixed - lots of restructuring and optimizing in dracut-functions.sh - usrmount: honor fs_passno in /etc/fstab - renamed all shell scripts to .sh - new option "--omit-drivers" and config option "omit_drivers" - hostonly mode fixups dracut-016 ========== - fixed lsinitrd - honor binaries in sbin first - fixed usrmount module - added systemd service for shutdown - fixed terminfo on distros with /usr/share/terminfo - reload udev rules after "pre-trigger" hook - improved test suite - new parameter "--omit-drivers" and new conf param omit_drivers - "--offroot" support for mdraid - new libs: net-lib.sh, nfs-lib.sh, url-lib.sh, img-lib.sh full of functions to use in your dracut module dracut-015 ========== - hostonly mode automatically adds command line options for root and /usr - --add-fstab --mount parameters - ssh-client module - --ctty option: add job control - cleanup /run/initramfs - convertfs module - /sbin/ifup can be called directly - support kernel modules compressed with xz - s390 iscsi modules added - terminfo module - lsinitrd can handle concatened images - lsinitrd can sort by size dracut-014 ========== - new dracut arguments: --lvmconf --nolvmconf --fscks [LIST] --nofscks - new .conf options: install_items fscks nofscks - new kernel options: rd.md.ddf rd.md.waitclean plymouth.enable - dracut move from /sbin to /usr/bin - dracut modules dir moved from /usr/share/dracut to /usr/lib/dracut - profiling with "dracut --profile" - new TEST-16-DMSQUASH, test for Fedora LiveCDs - speedup of initramfs creation - ask_for_password fallback to CLI - mdraid completely switched to incremental assembly - no more cdrom polling - "switch_root" breakpoint is now very late - /dev/live is gone - /dev/root is gone - fs-lib dracut module for fscks added - xen dracut module removed - usb mass storage kernel drivers now included - usrmount dracut module added: mount /usr if found in /sysroot/etc/fstab - only include fsck helper needed for hostonly - fcoe: support for bnx2fc - support iSCSI drivers: qla4xxx, cxgb3i, cxgb4i, bnx2i, be2iscsi - fips-aesni dracut module added - add install_items to dracut.conf install_items+=" [ ...] " - speedup internal testsuite - internal testsuite: store temporary data in a temporary dir dracut-013 ========== - speedup of initramfs creation - fixed inst_dir for symbolic links - add unix kernel module dracut-012 ========== - better fsck handling - fixed wait condition for LVM volumes - fix for hardlinks (welcome Debian! :-) - shutdown bugfixes - automatic busybox symlink creation - try to mount /usr, if init points to a path in /usr - btrfs with multiple devices - "--force-add" option for dracut, to force-add dracut modules, without hostonly checks - lsinitrd also display the initramfs size in human readable form - livenet module, to mount live-isos over http - masterkey,ecryptfs,integrity security modules - initqueue/timeout queue e.g. for starting degraded raids - "make rpm" creates an rpm with an increasing release number from any git checkout - support lvm mirrors - start degraded lvm mirrors after a timeout - start degraded md raids after a timeout - getarg() now returns wildcards without file matching to the current fs - lots of bugfixes dracut-011 ========== - use udev-168 features for shutting down udev - introduce "--prefix" to put all initramfs files in e.g "/run/initramfs" - new shutdown script (called by systemd >= 030) to disassemble the root device - lots of bugfixes - new module for gpg-encrypted keys - 91crypt-gpg dracut-010 ========== - lots of bugfixes - plymouth: use /run/plymouth/pid instead of /run/initramfs/plymouth - add "/lib/firmware/updates" to default firmware path dracut-009 ========== - dracut generator - dracut-logger - xz compression - better argument handling - initramfs - hooks moved to /lib/dracut/hooks in initramfs - rd.driver.{blacklist|pre|post} accept comma separated driver list - iSCSI: iSCSI Boot Firmware Table (iBFT) support - support for /run - live image: support for generic rootfs.img (instead of ext3fs.img) - caps module - FCoE: EDD support dracut-008 ========== - removed --ignore-kernel-modules option (no longer necessary) - renamed kernel command line arguments to follow the rd. naming scheme - merged check, install, installkernel to module-setup.sh - support for bzip2 and xz compressed initramfs images. - source code beautification - lots of documentation - lsinitrd: "catinitrd" functionality - dracut: --list-modules - lvm: support for dynamic LVM SNAPSHOT root volume - 95fstab-sys: mount all /etc/fstab.sys volumes before switch_root - 96insmodpost dracut module - rd.shell=1 per default - rootfs-block:mount-root.sh add fsck - busybox shell replacements module - honor old "real_init=" - 97biosdevname dracut module dracut-007 ========== - module i18n is no longer fedora/red hat specific (Amadeusz Żołnowski) - distribution specific conf file - bootchartd support - debug module now has fsck - use "hardlink", if available, to save some space - /etc/dracut.conf can be overwritten by settings in /etc/dracut.conf.d/*.conf - gentoo splash module - --ignore-kernel-modules option - crypto keys on external devices support - bugfixes dracut-006 ========== - fixed mdraid with IMSM - fixed dracut manpages - dmraid parse different error messages - add cdrom polling mechanism for slow cdroms - add module btrfs - add btrfsctl scan for btrfs multi-devices (raid) - teach dmsquash live-root to use rootflags - trigger udev with action=add - fixed add_drivers handling - add sr_mod - use pigz instead of gzip, if available - boot from LVM mirrors and snapshots - iscsi: add support for multiple netroot=iscsi: - Support old version of module-init-tools - got rid of rdnetdebug - fixed "ip=auto6" - dracut.conf: use "+=" as default for config variables - bugfixes dracut-005 ========== - dcb support to dracut's FCoE support - add readonly overlay support for dmsquash - add keyboard kernel modules - dracut.conf: added add_dracutmodules - add /etc/dracut.conf.d - add preliminary IPv6 support - bugfixes dracut-004 ========== - dracut-lib: read multiple lines from $init/etc/cmdline - lsinitrd and mkinitrd - dmsquash: add support for loopmounted *.iso files - lvm: add rd_LVM_LV and "--poll n" - user suspend support - add additional drivers in host-only mode, too - improved emergency shell - support for compressed kernel modules - support for loading Xen modules - rdloaddriver kernel command line parameter - man pages for dracut-catimages and dracut-gencmdline - bugfixes dracut-003 ========== - add debian package modules - add dracut.conf manpage - add module 90multipath - add module 01fips - crypt: ignore devices in /etc/crypttab (root is not in there) unless rd_NO_CRYPTTAB is specified - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc - add multinic support - add s390 zfcp support - add s390 dasd support - add s390 network support - fixed dracut-gencmdline for root=UUID or LABEL - do not destroy assembled raid arrays if mdadm.conf present - mount /dev/shm - let udevd not resolve group and user names - moved network from udev to initqueue - improved debug output: specifying "rdinitdebug" now logs to dmesg, console and /init.log - strip kernel modules which have no x bit set - redirect stdin, stdout, stderr all RW to /dev/console so the user can use "less" to view /init.log and dmesg - add new device mapper udev rules and dmeventd - fixed dracut-gencmdline for root=UUID or LABEL - do not destroy assembled raid arrays if mdadm.conf present - mount /dev/shm - let udevd not resolve group and user names - preserve timestamps of tools on initramfs generation - generate symlinks for binaries correctly - moved network from udev to initqueue - mount nfs3 with nfsvers=3 option and retry with nfsvers=2 - fixed nbd initqueue-finished - improved debug output: specifying "rdinitdebug" now logs to dmesg, console and /init.log - strip kernel modules which have no x bit set - redirect stdin, stdout, stderr all RW to /dev/console so the user can use "less" to view /init.log and dmesg - make install of new dm/lvm udev rules optionally - add new device mapper udev rules and dmeventd - Fix LiveCD boot regression - bail out if selinux policy could not be loaded and selinux=0 not specified on kernel command line - do not cleanup dmraids - copy over lvm.conf dracut-002 ========== - add ifname= argument for persistent netdev names - new /initqueue-finished to check if the main loop can be left - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf - plymouth: use plymouth-populate-initrd - add add_drivers for dracut and dracut.conf - add modprobe scsi_wait_scan to be sure everything was scanned - fix for several problems with md raid containers - fix for selinux policy loading - fix for mdraid for IMSM - fix for bug, which prevents installing 61-persistent-storage.rules (bug #520109) - fix for missing grep for md dracut-001 ========== - better --hostonly checks - better lvm/mdraid/dmraid handling - fcoe booting support Supported cmdline formats: fcoe=: fcoe=: Note currently only nodcb is supported, the dcb option is reserved for future use. Note letters in the macaddress must be lowercase! Examples: fcoe=eth0:nodcb fcoe=4A:3F:4C:04:F8:D7:nodcb - Syslog support for dracut This module provides syslog functionality in the initrd. This is especially interesting when complex configuration being used to provide access to the device the rootfs resides on. dracut-0.9 ========== - let plymouth attach to the terminal (nice text output now) - new kernel command line parameter "rdinfo" show dracut output, even when "quiet" is specified - rd_LUKS_UUID is now handled correctly - dracut-gencmdline: rd_LUKS_UUID and rd_MD_UUID is now correctly generated - now generates initrd-generic with around 15MB - smaller bugfixes dracut-0.8 ========== - iSCSI with username and password - support for live images (dmsquashed live images) - iscsi_firmware fixes - smaller images - bugfixes dracut-0.7 ========== - dracut: strip binaries in initramfs --strip strip binaries in the initramfs (default) --nostrip do not strip binaries in the initramfs - dracut-catimages Usage: ./dracut-catimages [OPTION]... [...] Creates initial ramdisk image by concatenating several images from the command line and /boot/dracut/ -f, --force Overwrite existing initramfs file. -i, --imagedir Directory with additional images to add (default: /boot/dracut/) -o, --overlaydir Overlay directory, which contains files that will be used to create an additional image --nooverlay Do not use the overlay directory --noimagedir Do not use the additional image directory -h, --help This message --debug Output debug information of the build process -v, --verbose Verbose output during the build process - s390 dasd support dracut-0.6 ========== - dracut: add --kernel-only and --no-kernel arguments --kernel-only only install kernel drivers and firmware files --no-kernel do not install kernel drivers and firmware files All kernel module related install commands moved from "install" to "installkernel". For "--kernel-only" all installkernel scripts of the specified modules are used, regardless of any checks, so that all modules which might be needed by any dracut generic image are in. The basic idea is to create two images. One image with the kernel modules and one without. So if the kernel changes, you only have to replace one image. Grub and the kernel can handle multiple images, so grub entry can look like this: title Fedora (2.6.29.5-191.fc11.i586) root (hd0,0) kernel /vmlinuz-2.6.29.5-191.fc11.i586 ro rhgb quiet initrd /initrd-20090722.img /initrd-kernel-2.6.29.5-191.fc11.i586.img /initrd-config.img initrd-20090722.img the image provided by the initrd rpm one old backup version is kept like with the kernel initrd-kernel-2.6.29.5-191.fc11.i586.img the image provided by the kernel rpm initrd-config.img optional image with local configuration files - dracut: add --kmoddir directory, where to look for kernel modules -k, --kmoddir [DIR] specify the directory, where to look for kernel modules dracut-0.5 ========== - more generic (all plymouth modules, all keyboards, all console fonts) - more kernel command line parameters (see also man dracut(8)) - a helper tool, which generates the kernel command line (dracut-gencmdline) - bridged network boot - a lot of new command line parameter dracut-0.4 ========== - bugfixes - firmware loading support - new internal queue (initqueue) initqueue now loops until /dev/root exists or root is mounted init now has the following points to inject scripts: /cmdline/*.sh scripts for command line parsing /pre-udev/*.sh scripts to run before udev is started /pre-trigger/*.sh scripts to run before the main udev trigger is pulled /initqueue/*.sh runs in parallel to the udev trigger Udev events can add scripts here with /sbin/initqueue. If /sbin/initqueue is called with the "--onetime" option, the script will be removed after it was run. If /initqueue/work is created and udev >= 143 then this loop can process the jobs in parallel to the udevtrigger. If the udev queue is empty and no root device is found or no root filesystem was mounted, the user will be dropped to a shell after a timeout. Scripts can remove themselves from the initqueue by "rm $job". /pre-mount/*.sh scripts to run before the root filesystem is mounted NFS is an exception, because it has no device node to be created and mounts in the udev events /mount/*.sh scripts to mount the root filesystem NFS is an exception, because it has no device node to be created and mounts in the udev events If the udev queue is empty and no root device is found or no root filesystem was mounted, the user will be dropped to a shell after a timeout. /pre-pivot/*.sh scripts to run before the real init is executed and the initramfs disappears All processes started before should be killed here. The behaviour of the dmraid module demonstrates how to use the new mechanism. If it detects a device which is part of a raidmember from a udev rule, it installs a job to scan for dmraid devices, if the udev queue is empty. After a scan, it removes itsself from the queue. dracut-0.3 ========== - first public version