]> git.ipfire.org Git - thirdparty/dracut.git/blobdiff - NEWS
NEWS and AUTHORS update
[thirdparty/dracut.git] / NEWS
diff --git a/NEWS b/NEWS
index d77a9e88b74f5a9ac9bd66b290b76e09726ed991..ebb7704cd82ff40f770631d1584715db9798c529 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,513 @@
+dracut-045
+==========
+
+Important: dracut now requires libkmod for the dracut-install binary helper,
+           which nows handles kernel module installing and filtering.
+
+dracut.sh:
+- restorecon final image file
+- fail hard, if we find modules and modules.dep is missing
+- support --tmpdir as a relative path
+- add default path for --uefi
+
+dracut-functions.sh:
+- fix check_vol_slaves() volume group name stripping
+
+dracut-install:
+- catch ldd message "cannot execute binary file"
+- added kernel module handling with libkmod
+  Added parameters:
+    --module,-m
+    --mod-filter-path, -p
+    --mod-filter-nopath, -P
+    --mod-filter-symbol, -s
+    --mod-filter-nosymbol, -S
+    --mod-filter-noname, -N
+    --silent
+    --kerneldir
+    --firmwaredirs
+- fallback to non-hostonly mode if lsmod fails
+
+lsinitrd:
+- new option "--unpack"
+- new option "--unpackearly"
+- and "--verbose"
+
+general initramfs fixes:
+- don't remove 99-cmdline-ask on 'hostonly' cleanup
+- call dracut-cmdline-ask.service, if /etc/cmdline.d/*.conf exists
+- break at switch_root only for bare rd.break
+- add rd.emergency=[reboot|poweroff|halt]
+  specifies what action to execute in case of a critical failure
+- rd.memdebug=4 gives information, about kernel module memory consumption
+  during loading
+
+dmsquash-live:
+- fixed livenet-generator execution flag
+  and include only, if systemd is used
+- fixed dmsquash-live-root.sh for cases where the fstype of the liveimage is squashfs
+- fixed typo for rootfs.img
+- enable the use of the OverlayFS for the LiveOS root filesystem
+  Patch notes:
+    Integrate the option to use an OverlayFS as the root filesystem
+    into the 90dmsquash-live module for testing purposes.
+
+    The rd.live.overlay.overlayfs option allows one to request an
+    OverlayFS overlay.  If a persistent overlay is detected at the
+    standard LiveOS path, the overlay & type detected will be used.
+
+    Tested primarily with transient, in-RAM overlay boots on vfat-
+    formatted Live USB devices, with persistent overlay directories
+    on ext4-formatted Live USB devices, and with embedded, persistent
+    overlay directories on vfat-formatted devices. (Persistent overlay
+    directories on a vfat-formatted device must be in an embedded
+    filesystem that supports the creation of trusted.* extended
+    attributes, and must provide valid d_type in readdir responses.)
+
+    The rd.live.overlay.readonly option, which allows a persistent
+    overlayfs to be mounted read only through a higher level transient
+    overlay directory, has been implemented through the multiple lower
+    layers feature of OverlayFS.
+
+    The default transient DM overlay size has been adjusted up to 32 GiB.
+    This change supports comparison of transient Device-mapper vs.
+    transient OverlayFS overlay performance.  A transient DM overlay
+    is a sparse file in memory, so this setting does not consume more
+    RAM for legacy applications.  It does permit a user to use all of
+    the available root filesystem storage, and fails gently when it is
+    consumed, as the available free root filesystem storage on a typical
+    LiveOS build is only a few GiB.  Thus, when booted on other-
+    than-small RAM systems, the transient DM overlay should not overflow.
+
+    OverlayFS offers the potential to use all of the available free RAM
+    or all of the available free disc storage (on non-vfat-devices)
+    in its overlay, even beyond the root filesystem available space,
+    because the OverlayFS root filesystem is a union of directories on
+    two different partitions.
+
+    This patch also cleans up some message spew at shutdown, shortens
+    the execution path in a couple of places, and uses persistent
+    DM targets where required.
+
+dmraid:
+- added "nowatch" option in udev rule, otherwise udev would reread partitions for raid members
+- allow booting from degraded MD RAID arrays
+
+shutdown:
+- handle readonly /run on shutdown
+
+kernel-modules:
+- add all HID drivers, regardless of hostonly mode
+  people swap keyboards sometimes and should be able to enter their disk password
+- add usb-storage
+  To save the rdsosreport.txt to a USB stick, the usb-storage module is needed.
+- add xennet
+- add nvme
+
+systemd:
+- add /etc/machine-info
+- fixed systemd-escape call for names beginning with "-"
+- install missing drop-in configuration files for
+    /etc/systemd/{journal.conf,system.conf}
+
+filesystems:
+- add support to F2FS filesystem (fsck and modules)
+
+network:
+- fix carrier detection
+- correctly set mac address for ip=...:<mtu>:<mac>
+- fixed vlan, bonding, bridging, team logic
+  call ifup for the slaves and assemble afterwards
+- add mtu to list of variables to store in override
+- for rd.neednet=0 a bootdev is not needed anymore
+- dhclient-script.sh: add classless-static-routes support
+- support for iBFT IPv6
+- support macaddr in brackets [] (commit 740c46c0224a187d6b5a42b4aa56e173238884cc)
+- use arping2, if available
+- support multiple default gateways from DHCP server
+- fixup VLAN handling
+- enhance team support
+- differ between ipv6 local and global tentative
+- ipv6: wait for a router advertised route
+- add 'mtu' parameter for bond options
+- use 'ip' instead of 'brctl'
+
+nbd:
+- add systemd generator
+- use export names instead of port numbers, because port number based
+  exports are deprecated and were removed.
+
+fcoe:
+- no more /dev/shm state copying
+
+multipath:
+- check all /dev/mapper devices if they are multipath devices, not only mpath*
+
+fips:
+- fixed .hmac installation in FIPS mode
+
+plymouth:
+- also trigger the acpi subsystem
+
+syslog:
+- add imjournal.so to read systemd journal
+- move start from udev to initqueue/online
+
+caps:
+- make it a non default module
+
+livenet:
+- support nfs:// urls in livenet-generator
+
+nfs:
+- install all nfs modules non-hostonly
+
+crypt:
+- support keyfiles embedded in the initramfs
+
+testsuite:
+- add TEST-70-BONDBRIDGETEAMVLAN
+- make "-cpu host" the default
+
+dracut-044
+==========
+creation:
+- better udev & systemd dir detection
+- split dracut-functions.sh in dracut-init.sh and dracut-functions.sh
+  dracut-functions.sh can now be sourced by external tools
+- detect all btrfs devices needed
+- added flag file if initqueue is needed
+- don't overwrite anything, if initramfs image file creation failed
+- if no compressor is specified, try to find a suitable one
+- drop scanning kernel config for CONFIG_MICROCODE_*_EARLY
+- remove "_EARLY" from CONFIG_MICROCODE_* checks
+- dracut.sh: add command line option for install_i18_all
+  --no-hostonly-i18n -> install_i18n_all=yes
+  --hostonly-i18n -> install_i18n_all=no
+- --no-reproducible to turn off reproducible mode
+- dracut-function.sh can now be sourced from outside of dracut
+- dracut-init.sh contains all functions, which only can be used from
+  within the dracut infrastructure
+- support --mount with just mountpoint as a parameter
+- removed action_on_fail support
+- removed host_modalias concept
+- do not create microcode, if no firmware is available
+- skip gpg files in microcode generation
+
+initramfs:
+- ensure pre-mount (and resume) run before root fsck
+- add --online option to initqueue
+
+qemu:
+- fixed virtual machine detection
+
+lvm:
+- remove all quirk arguments for lvm >= 2.2.221
+
+dmsquash:
+- fixup for checkisomd5
+- increase timeout for checkisomd5
+- use non-persistent metadata snapshots for transient overlays.
+- overflow support for persistent snapshot.
+- use non-persistent metadata snapshots.
+- avoid an overlay for persistent, uncompressed, read-write live installations.
+
+multipath:
+- multipath.conf included in hostonly mode
+- install all multipath path selector kernel modules
+
+iSCSI:
+- use the iBFT initiator name, if found and set
+- iscsid now present in the initramfs
+- iscsistart is done with systemd-run asynchrone to do things in
+  paralllel. Also restarted for every new interface which shows up.
+- If rd.iscsi.waitnet (default) is set, iscsistart is done only
+  after all interfaces are up.
+- If not all interfaces are up and rd.iscsi.testroute (default) is set,
+  the route to a iscsi target IP is checked and skipped, if there is none.
+- If all things fail, we issue a "dummy" interface iscsiroot to retry
+  everything in the initqueue/timeout.
+
+network:
+- added DHCP RENEW/REBIND
+- IPv4 DHCP lease time now optional (bootp)
+- IPv6 nfs parsing
+- fixed IPv6 route parsing
+- rd.peerdns=0 parameter to disable DHCP nameserver setting
+- detect duplicate IPv4 addresses for static addresses
+- if interfaces are specified with its enx* name, bind the correspondent MAC to the interface name
+- if multiple "ip=" are present on the kernel command line "rd.neednet=1" is assumed
+- add options to tweak timeouts
+     rd.net.dhcp.retry=<cnt>
+         If this option is set, dracut will try to connect via dhcp
+         <cnt> times before failing. Default is 1.
+
+     rd.net.timeout.dhcp=<arg>
+         If this option is set, dhclient is called with "-timeout <arg>".
+
+     rd.net.timeout.iflink=<seconds>
+         Wait <seconds> until link shows up. Default is 60 seconds.
+
+     rd.net.timeout.ifup=<seconds>
+         Wait <seconds> until link has state "UP". Default is 20 seconds.
+
+     rd.net.timeout.route=<seconds>
+         Wait <seconds> until route shows up. Default is 20 seconds.
+
+     rd.net.timeout.ipv6dad=<seconds>
+         Wait <seconds> until IPv6 DAD is finished. Default is 50 seconds.
+
+     rd.net.timeout.ipv6auto=<seconds>
+         Wait <seconds> until IPv6 automatic addresses are assigned.
+         Default is 40 seconds.
+
+     rd.net.timeout.carrier=<seconds>
+         Wait <seconds> until carrier is recognized. Default is 5 seconds.
+
+IMA:
+- load signed certificates in the IMA keyring, see modules.d/98integrity/README
+- load EVM public key in the kernel _evm keyring
+
+FCoE:
+    fcoe: start with fcoemon instead of fipvlan
+
+dracut-043
+==========
+- add missing dmsquash-generator
+
+dracut-042
+==========
+- fixed dmsetup shutdown
+- new kernel command line option "rd.live.overlay.thin"
+    This option changes the underlying mechanism for the overlay in the
+    dmsquash module.
+    Instead of a plain dm snapshot a dm thin snapshot is used. The advantage
+    of the thin snapshot is, that the TRIM command is recognized, which
+    means that at runtime, only the occupied blocks will be claimed from
+    memory, and freed blocks will really be freed in ram.
+- dmsquash: Add squashfs support to rd.live.fsimg
+    Previously rd.live.fsimg only supported filesystems residing in
+    (compressed) archives.
+    Now rd.live.fsimg can also be used when a squashfs image is used.
+    This is achieved by extracting the rootfs image from the squashfs and
+    then continue with the default routines for rd.live.fsimg.
+- lvm: add support for LVM system id
+- split up the systemd dracut module
+    Basic systemd functionality is in 00systemd now.
+    Switching root and the initrd.target is in 00systemd-initrd.
+    Dracut additions to the systemd initrd are in 98dracut-systemd.
+- support for creating a UEFI boot executable via argument "--uefi"
+    With an EFI stub, the kernel, the initramfs and a kernel cmdline can be
+    glued together to a single UEFI executable, which can be booted by a
+    UEFI BIOS.
+- network: split out kernel-network-modules, now in 90kernel-network-modules
+- support for ethernet point-to-point connections configured via DHCP
+- kernel-modules: install all HID drivers
+- dracut.pc pkg-config file
+- mount /dev, /dev/shm and /run noexec
+
+dracut-041
+==========
+- fixed the shutdown loop
+- fixed gzip compression for versions, which do not have --rsyncable
+- fixed ifcfg generation for persistent interface names
+- multipath:
+  * new option to turn off multipath "rd.multipath=0" completly
+  * preload scsi dh modules
+  * start multipathd via systemd service
+- do not fail, if user pressed ESC during media check
+- fixed systemd-journal by symlinking /var/log to /run/initramfs/log
+- initrd-release moved to /usr/lib
+- lots of iSCSI fixes
+- new "rd.timeout" to specify the systemd JobTimeoutSec for devices
+- if $initrd/etc/cmdline.d/* has a "root=" and the kernel cmdline does not,
+  generate a mount unit for it
+- increased the initqueue timeout for non systemd initramfs to 180s
+- $initrd/etc/cmdline.d/ hostonly files are now generated for NFS
+- make use of systemd-hibernate-resume, if available
+- fixed ldconfig parsing for hwcap output
+- network: add support for comma separated autoconf options like ip=eth0:auto6,dhcp
+- new parameter "rd.live.overlay.size" to specify the overlay for live images
+- changed the test suite for the new sfdisk syntax
+- added cache tools for dm-cache setups
+
+dracut-040
+==========
+- fixed dracut module dependency checks
+- fixed test suite
+
+dracut-039
+==========
+- DRACUT_PATH can now be used to specify the PATH used by dracut
+  to search for binaries instead of the default
+  /usr/sbin:/sbin:/usr/bin:/bin
+  This should be set in the distribution config file
+  /usr/lib/dracut/dracut.conf.d/01-dist.conf
+- add "--loginstall <DIR>" and loginstall="<DIR>" options
+  to record all files, which are installed from the host fs
+- "rd.writable.fsimg" - support for read/write filesystem images
+- "rd.route" kernel command line parameter added
+- "--install-optional" and install_optional_items added
+- find plymouth pkglibdir on debian
+- torrent support for live images
+  root=live:torrent://example.com/liveboot.img.torrent
+  and generally added as a download handler
+- disable microcode, if the kernel does not support it
+- speed up ldconfig_paths()
+- more ARM modules
+- fixed inst*() functions and "-H" handling
+- fixed bridge setup
+- added --force-drivers parameter and force_drivers=+ config option
+  to enforce driver loading at early boot time
+- documented "iso-scan/filename" usage in grub
+- various bugfixes
+
+dracut-038
+==========
+- "rd.cmdline=ask" will ask the user on the console to enter additional
+  kernel command line parameters
+- "rd.hostonly=0" removes all "hostonly" added custom files,
+  which is useful in combination with "rd.auto" or other specific parameters,
+  if you want to boot on the same hardware, but the compiled in configuration
+  does not match your setup anymore
+- inst* functions and dracut-install now accept the "-H" flag, which logs all
+  installed files to /lib/dracut/hostonly-files. This is used to remove those
+  files, if rd.hostonly is given on the kernel command line
+- strstr now only does literal string match,
+  please use strglob and strglobin for globs
+- fixed unpacking of the microcode image on shutdown
+- added systemd-gpt-auto-generator
+- fcoe: wait for lldpad to be ready
+- network: handle "ip=dhcp6"
+- network: DCHPv6: set valid_lft and preferred_lft
+- dm: support dm-cache
+- fstab: do not mount and fsck from fstab if using systemd
+- break at switch_root only for bare rd.break and not for any rd.break=...
+- nbd: make use of "--systemd-mark", otherwise it gets killed on switch_root
+- fcoe-uefi: fixed cmdline parameter generation
+- iscsi: deprecate "ip=ibft", use "rd.iscsi.ibft[=1]" from now on
+- "lsinitrd -m" now only lists the dracut modules of the image
+- a lot of small bugfixes
+
+dracut-037
+==========
+- dracut: hostonly_cmdline variable and command line switch
+    Toggle hostonly cmdline storing in the initramfs
+    --hostonly-cmdline:
+        Store kernel command line arguments needed in the initramfs
+    --no-hostonly-cmdline:
+        Do not store kernel command line arguments needed in the initramfs
+- dracut: --mount now understands full fstab lines
+- dracut now also includes drivers from the /lib/modules/<version>/updates directory
+- dracut: only set the owner of files to 0:0, if generated as non-root
+- dracut now directly writes to the initramfs file
+- dracut: call lz4 with the legacy flag (linux kernel does not support the new format)
+- systemd: rootfs-generator generates JobTimeout=0 units for the root device
+- systemd: added the systemd-sysctl service
+- systemd: add 80-net-setup-link.rules and .link files for persistent interface renaming
+- systemd: make dracut-shutdown.service failure non-fatal
+- network: various IPv6 fixes
+- network: DCHCP for IPv6
+- network: understand ip=.....:<dns1>:<dns2>
+- network: parse ibft nameserver settings
+- shutdown: if kexec fails, just reboot
+- lvm: handle one LV at a time with lvchange
+- module-setup.sh:
+    New functions require_binaries() and require_any_binary() to be used
+    in the check() section of module-setup.sh.
+- a lot of small bugfixes
+
+Contributions from:
+Harald Hoyer
+Alexander Tsoy
+Till Maas
+Amadeusz Żołnowski
+Brian C. Lane
+Colin Guthrie
+Dave Young
+WANG Chao
+Shawn W Dunn
+
+dracut-036
+==========
+- fixed skipcpio signature checking
+
+dracut-035
+==========
+- changed dracut tarball compression to xz
+- new argument "--rebuild"
+- add lzo, lz4 compression
+- install: install all binaries with <name> found in PATH
+- lsinitrd can now handle initramfs images with an early cpio prepended
+  (microcode, ACPI tables)
+- mkinitrd-suse added as a compat stub for dracut
+- lvm: install thin utils for non-hostonly
+- resume: fix swap detection in hostonly
+- avoid loading unnecessary 32-bit libraries for 64-bit initrds
+- crypt: wait for systemd password agents
+- crypt: skip crypt swaps with password files
+- network: before doing dhcp, dracut now checks, if the link has a carrier
+- network: dhclient-script.sh now sets the lease time
+- network: include usbnet drivers
+- network: include all ethernet drivers
+- network: add rd.bootif=0 to ignore BOOTIF
+- i18n: introduce i18n_install_all, to install everything i18n related
+- support SuSE DASD configurations
+- support SuSE zfcp configurations
+- support SuSE compressed KEYMAP= setting
+- usrmount: always install the module,
+  so always mount /usr from within the initramfs
+- test/TEST-17-LVM-THIN: new test case for lvm thin pools
+- "halt" the machine in systemd mode for die()
+
+dracut-034
+==========
+- do not run dhcp on parts of assembled network interfaces (bond, bridge)
+- add option to turn on/off prelinking
+    --prelink, --noprelink
+    do_prelink=[yes|no]
+- add ACPI table overriding
+- do not log to syslog/kmsg/journal for UID != 0
+- lvm/mdraid: Fix LVM on MD activation
+- bcache module removed (now in bcache-tools upstream)
+- mdadm: also install configs from /etc/mdadm.conf.d
+- fixes for mdadm-3.2.6+
+- mkinitrd: better compat support for SUSE
+- fcoe: add FCoE UEFI boot device support
+- rootfs-block: add support for the rootfallback= kernel cmdline option
+
+Contributions from:
+Thomas Renninger
+Alexander Tsoy
+Peter Rajnoha
+WANG Chao
+Harald Hoyer
+
+
+dracut-033
+==========
+- improved hostonly device recognition
+- improved hostonly module recognition
+- add dracut.css for dracut.html
+- do not install udev rules from /etc in generic mode
+- fixed LABEL= parsing for swap devices
+- fixed iBFT network setup
+- url-lib.sh: handle 0-size files with curl
+- dracut.asc: document debugging dracut on shutdown
+- if rd.md=0, use dmraid for imsm and ddf
+- skip empty dracut modules
+- removed caching of kernel cmdline
+- fixed iso-scan, if the loop device driver is a kernel module
+- bcache: support new blkid
+- fixed ifup udev rules
+- ifup with dhcp, if no "ip=" specified for the interface
+
+Contributions from:
+WANG Chao
+Colin Walters
+Harald Hoyer
+
+
 dracut-032
 ==========
 - add parameter --print-cmdline