]> git.ipfire.org Git - thirdparty/dracut.git/blobdiff - NEWS
iscsi: always popd, even if there is no iscsi device
[thirdparty/dracut.git] / NEWS
diff --git a/NEWS b/NEWS
index 563f16cdd50d2b840462584370081270d1887204..9f7f1fbd892c488448c49cf6daa05f9541886a17 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,596 @@
+dracut-049
+==========
+lsinitrd:
+- record loaded kernel modules when hostonly mode is enabled
+  lsinitrd $image -f */lib/dracut/loaded-kernel-modules.txt
+- allow to only unpack certain files
+
+kernel-modules:
+- add gpio and pinctrl drivers for arm*/aarch64
+- add nfit
+
+kernel-network-modules:
+- add vlan kernel modules
+
+ifcfg/write-ifcfg.sh:
+- aggregate resolv.conf
+
+livenet:
+- Enable OverlayFS overlay in sysroot.mount generator.
+
+dmsquash-live:
+- Support a flattened squashfs.img
+
+dracut-systemd:
+- Start systemd-vconsole-setup before dracut-cmdline-ask
+
+iscsi:
+- do not install all of /etc/iscsi unless hostonly
+- start iscsid even w/o systemd
+
+multipath:
+- fixed shutdown
+
+network:
+- configure NetworkManager to use dhclient
+
+mdraid:
+- fixed uuid handling ":" versus "-"
+
+stratis:
+- Add additional binaries
+
+new modules:
+- 00warpclock
+- 99squash
+  Adds support for building a squashed initramfs
+- 35network-legacy
+  the old 40network
+- 35network-manager
+  alternative to 35network-legacy
+- 90kernel-modules-extra
+  adds out-of-tree kernel modules
+
+testsuite:
+- now runs on travis
+- support new qemu device options
+- even runs without kvm now
+
+dracut-048
+==========
+
+dracut.sh:
+- fixed finding of btrfs devices
+- harden dracut against BASH_ENV environment variable
+- no more prelinking
+- scan and install "external" kernel modules
+- fixed instmods with zero input
+- rdsosreport: best effort to strip out passwords
+- introduce tri-state hostonly mode
+
+   Add a new option --hostonly-mode which accept an <mode> parameter, so we have a tri-state hostonly mode:
+
+        * generic: by passing "--no-hostonly" or not passing anything.
+                   "--hostonly-mode" has no effect in such case.
+        * sloppy: by passing "--hostonly --hostonly-mode sloppy". This
+                  is also the default mode when only "--hostonly" is given.
+        * strict: by passing "--hostonly --hostonly-mode strict".
+
+    Sloppy mode is the original hostonly mode, the new introduced strict
+    mode will allow modules to ignore more drivers or do some extra job to
+    save memory and disk space, while making the image less portable.
+
+    Also introduced a helper function "optional_hostonly" to make it
+    easier for modules to leverage new hostonly mode.
+
+    To force install modules only in sloppy hostonly mode, use the form:
+
+    hostonly="$(optional_hostonly)" instmods <modules>
+
+dracut-install:
+- don't error out, if no modules were installed
+- support modules.softdep
+
+lsinitrd.sh:
+- fixed zstd file signature
+
+kernel:
+- include all pci/host modules
+- add mmc/core for arm
+- Include Intel Volume Management Device support
+
+plymouth:
+- fix detection of plymouth directory
+
+drm:
+- make failing installation of drm modules nonfatal
+- include virtio DRM drivers in hostonly initramfs
+
+stratis:
+- initial Stratis support
+
+crypt:
+- correct s390 arch to include arch-specific crypto modules
+- add cmdline rd.luks.partuuid
+- add timeout option rd.luks.timeout
+
+shutdown:
+- sleep a little, if a process was killed
+
+network:
+- introduce ip=either6 option
+
+iscsi:
+- replace iscsistart with iscsid
+
+qeth_rules:
+- new module to copy qeth rules
+
+multipath-hostonly:
+- merged back into multipath
+
+mdraid:
+- fixed case if rd.md.uuid is in ID_FS_UUID format
+
+dracut-047
+==========
+dracut.sh:
+- sync initramfs to filesystem with fsfreeze
+- introduce "--no-hostonly-default-device"
+- disable lsinitrd logging when quiet
+- add support for Zstandard compression
+- fixed relative paths in --kerneldir
+- if /boot/vmlinuz-$version exists use /boot/ as default output dir
+- make qemu and qemu-net a default module in non-hostonly mode
+- fixed relative symlinks
+- support microcode updates for all AMD CPU families
+- install all modules-load.d regardless of hostonly
+- fixed parsing of "-i" and "--include"
+- bump kmod version to >= 23
+- enable 'early_microcode' by default
+- fixed check_block_and_slaves() for nvme
+
+lsinitrd.sh:
+- dismiss "cat" error messages
+
+systemd-bootchart:
+- removed
+
+i18n:
+- install all keymaps for a given locale
+- add correct fontmaps
+
+dmsquash-live:
+- fixed systemd unit escape
+
+systemd:
+- enable core dumps with systemd from initrd
+- fixed setting of timeouts for device units
+- emergency.service: use Type=idle and fixed task limit
+
+multipath:
+- include files from /etc/multipath/conf.d
+- do not fail startup on missing configuration
+- start daemon after udev settle
+- add shutdown script
+- parse kernel commandline option 'multipath=off'
+- start before local-fs-pre.target
+
+dracut-emergency:
+- optionally print filesystem help
+
+network:
+- fixed MTU for bond master
+- fixed race condition when wait for networks
+
+fcoe:
+- handle CNAs with DCB firmware support
+- allow to specify the FCoE mode via the fcoe= parameter
+- always set AUTO_VLAN for fcoemon
+- add shutdown script
+- fixup fcoe-genrules.sh for VN2VN mode
+- switch back to using fipvlan for bnx2fc
+- add timeout mechanism
+
+crypt:
+- add basic LUKS detached header support
+- escape backslashes for systemd unit names correctly
+- put block_uuid.map into initramfs
+
+dmraid:
+- do not delete partitions
+
+dasd_mod:
+- do not set module parameters if dasd_cio_free is not present
+
+nfs:
+- fix mount if IPv4 address is used in /etc/fstab
+- support host being a DNS ALIAS
+
+fips:
+- fixed creating path to .hmac of kernel based on BOOT_IMAGE
+
+lunmask:
+- add module to handle LUN masking
+
+s390:
+- add rd.cio_accept
+
+dcssblk:
+- add new module for DCSS block devices
+
+zipl:
+- add new module to update s390x configuration
+
+iscsi:
+- no more iscsid, either iscsistart or iscsid
+
+integrity:
+- support loading x509 into the trusted/builtin .evm keyring
+- support X.509-only EVM configuration
+
+plymouth:
+- improve distro compatibility
+
+dracut-046
+==========
+
+dracut.sh:
+- bail out if module directory does not exist
+  if people want to build the initramfs without kernel modules,
+  then --no-kernel should be specified
+- add early microcode support for AMD family 16h
+- collect also all modaliases modules from sysfs for hostonly modules
+- sync initramfs after creation
+
+network:
+- wait for IPv6 RA if using none/static IPv6 assignment
+- ipv6 improvements
+- Handle curl using libnssckbi for TLS
+- fix dhcp classless_static_routes
+- dhclient: send client-identifier matching hardware address
+- don't arping for point-to-point connections
+- only bring up wired network interfaces (no wlan and wwan)
+
+mraid:
+- mdraid: wait for rd.md.uuid specified devices to be assembled
+
+crypt:
+- handle rd.luks.name
+
+crypt-gpg:
+- For GnuPG >= 2.1 support OpenPGP smartcards
+
+kernel-install:
+- Skip to create initrd if /etc/machine-id is missing or empty
+
+nfs:
+- handle rpcbind /run/rpcbind directory
+
+s390:
+- various fixes
+
+dmsquash-live:
+- add NTFS support
+
+multipath:
+- split out multipath-hostonly module
+
+lvmmerge:
+- new module, see README.md in the module directory
+
+dracut-systemd:
+- fixed dependencies
+
+
+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