Version 022
[platform/upstream/dracut.git] / NEWS
1 dracut-022
2 ==========
3 - fixed host-only kernel module bug
4
5 dracut-021
6 ==========
7 - fixed systemd in the initramfs (requires systemd >= 187)
8 - dracut-install: massive speedup with /var on the same filesystem with COW copy
9 - dracut-install: moved to /usr/lib/dracut until it becomes a general purpose tool
10 - new options: "rd.usrmount.ro" and "rd.skipfsck"
11 - less mount/umount
12 - apply "ro" on the kernel command line also to /usr
13 - mount according to fstab, if neither "ro" or "rw" is specified
14 - skip fsck for xfs and btrfs. remount is enough
15 - give emergency_shell if /usr mount failed
16 - dracut now uses getopt:
17   * options can be position independent now!!
18   * we can now use --option=<arg>
19 - added option "--kver=<kernel-version>", and the image location can be omitted
20   # dracut --kver 3.5.0-0.rc7.git1.2.fc18.x86_64
21 - dracut.sh: for --include copy also the symbolic links
22 - man pages: lsinitrd and mkinitrd added
23 - network: We do not support renaming in the kernel namespace anymore (as udev does
24   that not anymore). So, if a user wants to use ifname, he has to rename
25   to a custom namespace. "eth[0-9]+" is not allowed anymore. !!!!!
26 - resume: moved the resume process to the initqueue.
27   This should prevent accidently mounting the root file system.
28 - testsuite: add support for: make V=1 TESTS="01 20 40" check
29     $ sudo make V=1 clean check
30     now runs the testsuite in verbose mode
31
32     $ sudo make TESTS="01 20 40" clean check
33     now only runs the 01, 20 and 40 tests.
34
35 dracut-020
36 ==========
37 - changed rd.dasd kernel parameter
38 - arm kernel modules added to kernel-modules
39 - make udevdir systemdutildir systemdsystemunitdir global vars
40   your distribution should ship those settings in
41   /etc/dracut.conf.d/01-distro.conf
42   see dracut.conf.d/fedora.conf.example
43 - kernel modules are now only handled with /sys/modules and modules.dep
44 - systemd fixups
45 - mdraid: wait for md devices to be clean, before shutdown
46 - ifup fixed for ipv6
47 - add PARTUUID as root=PARTUUID=<partition uuid> parameter
48 - fixed instmods() return code and set pipefail globally
49 - add 04watchdog dracut module
50 - dracut-shutdown.service: fixed ordering to be before shutdown.target
51 - make use of "ln -r" instead of shell functions, if new coreutils is installed
52 - network: support vlan tagged bonding
53 - new dracut module qemu and qemu-net to install all kernel driver
54 - fs-lib/fs-lib.sh: removed test mounting of btrfs and xfs
55 - no more "mknod" in the initramfs!!
56 - replaced all "tr" calls with "sed"
57 - speedup with lazy kernel module dependency resolving
58 - lots of speedup optimizations and last but not least
59 - dracut-install:
60   - new binary to significanlty speedup the installation process
61   - dracut-functions.sh makes use of it, if installed
62
63
64 dracut-019
65 ==========
66 - initqueue/online hook
67 - fixes for ifcfg write out
68 - rootfs-block: avoid remount when options don't change
69 - Debian multiarch support
70 - virtfs root filesystem support
71 - cope with systemd-udevd
72 - mount tmpfs with strictatime
73 - include all kernel/drivers/net/phy drivers
74 - add debug_on() and debug_off() functions
75 - add arguments for source_hook() and source_all()
76 - cleanup hook
77 - plymouth: get consoledev from /sys/class/tty/console/active
78 - experimental systemd dracut module for systemd in the initramfs
79 - install xhci-hcd kernel module
80 - dracut: new "--mount" option
81 - lsinitrd: new option --printsize
82 - ARM storage kernel modules added
83 - s390 cms conf file support
84 - /etc/initrd-release in the initrd
85 - vlan support
86 - full bonding and bridge support
87 - removed scsi_wait_scan kernel module from standard install
88 - support rd.luks.allow-discards and honor options in crypttab
89 - lots of bugfixes
90
91 dracut-018
92 ==========
93 - lvm: ignore lvm mirrors
94 - lsinitrd: handle LZMA images
95 - iscsi: add rd.iscsi.param
96 - iscsi: add iscsi interface binding
97 - new module cms to read and handle z-Series cms config files
98 - fixed fstab.sys handling
99 - new dracut option "--tmpdir"
100 - new dracut option "--no-hostonly"
101 - nbd: name based nbd connects
102 - converted manpage and documentation source to asciidoc
103 - write-ifcfg fixes and cleanups
104 - ifup is now done in the initqueue
105 - netroot cleanup
106 - initqueue/online is now for hooks, which require network
107 - no more /tmp/root.info
108 - 98pollcdrom: factored out the ugly cdrom polling in the main loop
109 - simplified rd.luks.uuid testing
110 - removed "egrep" and "ls" calls
111 - speedup kernel module installation
112 - make bzip2 optional
113 - lots of bugfixes
114
115 dracut-017
116 ==========
117 - a _lot_ faster than dracut-016 in image creation
118 - systemd service dracut-shutdown.service
119 - livenet fixes
120 - ssh-client module install fix
121 - root=iscsi:... fixed
122 - lots of restructuring and optimizing in dracut-functions.sh
123 - usrmount: honor fs_passno in /etc/fstab
124 - renamed all shell scripts to .sh
125 - new option "--omit-drivers" and config option "omit_drivers"
126 - hostonly mode fixups
127
128 dracut-016
129 ==========
130 - fixed lsinitrd
131 - honor binaries in sbin first
132 - fixed usrmount module
133 - added systemd service for shutdown
134 - fixed terminfo on distros with /usr/share/terminfo
135 - reload udev rules after "pre-trigger" hook
136 - improved test suite
137 - new parameter "--omit-drivers" and new conf param omit_drivers
138 - "--offroot" support for mdraid
139 - new libs: net-lib.sh, nfs-lib.sh, url-lib.sh, img-lib.sh
140   full of functions to use in your dracut module
141
142 dracut-015
143 ==========
144 - hostonly mode automatically adds command line options for root and /usr
145 - --add-fstab --mount parameters
146 - ssh-client module
147 - --ctty option: add job control
148 - cleanup /run/initramfs
149 - convertfs module
150 - /sbin/ifup can be called directly
151 - support kernel modules compressed with xz
152 - s390 iscsi modules added
153 - terminfo module
154 - lsinitrd can handle concatened images
155 - lsinitrd can sort by size
156
157 dracut-014
158 ==========
159 - new dracut arguments:
160   --lvmconf
161   --nolvmconf
162   --fscks [LIST]
163   --nofscks
164 - new .conf options:
165   install_items
166   fscks
167   nofscks
168 - new kernel options:
169   rd.md.ddf
170   rd.md.waitclean
171   plymouth.enable
172 - dracut move from /sbin to /usr/bin
173 - dracut modules dir moved from /usr/share/dracut to /usr/lib/dracut
174 - profiling with "dracut --profile"
175 - new TEST-16-DMSQUASH, test for Fedora LiveCDs
176 - speedup of initramfs creation
177 - ask_for_password fallback to CLI
178 - mdraid completely switched to incremental assembly
179 - no more cdrom polling
180 - "switch_root" breakpoint is now very late
181 - /dev/live is gone
182 - /dev/root is gone
183 - fs-lib dracut module for fscks added
184 - xen dracut module removed
185 - usb mass storage kernel drivers now included
186 - usrmount dracut module added:
187   mount /usr if found in /sysroot/etc/fstab
188 - only include fsck helper needed for hostonly
189 - fcoe: support for bnx2fc
190 - support iSCSI drivers: qla4xxx, cxgb3i, cxgb4i, bnx2i, be2iscsi
191 - fips-aesni dracut module added
192 - add install_items to dracut.conf
193     install_items+=" <file>[ <file> ...] "
194 - speedup internal testsuite
195 - internal testsuite: store temporary data in a temporary dir
196
197 dracut-013
198 ==========
199 - speedup of initramfs creation
200 - fixed inst_dir for symbolic links
201 - add unix kernel module
202
203 dracut-012
204 ==========
205 - better fsck handling
206 - fixed wait condition for LVM volumes
207 - fix for hardlinks (welcome Debian! :-)
208 - shutdown bugfixes
209 - automatic busybox symlink creation
210 - try to mount /usr, if init points to a path in /usr
211 - btrfs with multiple devices
212 - "--force-add" option for dracut, to force-add dracut modules,
213   without hostonly checks
214 - lsinitrd also display the initramfs size in human readable form
215 - livenet module, to mount live-isos over http
216 - masterkey,ecryptfs,integrity security modules
217 - initqueue/timeout queue e.g. for starting degraded raids
218 - "make rpm" creates an rpm with an increasing release number from any
219   git checkout
220 - support lvm mirrors
221 - start degraded lvm mirrors after a timeout
222 - start degraded md raids after a timeout
223 - getarg() now returns wildcards without file matching to the current fs
224 - lots of bugfixes
225
226 dracut-011
227 ==========
228 - use udev-168 features for shutting down udev
229 - introduce "--prefix" to put all initramfs files in e.g "/run/initramfs"
230 - new shutdown script (called by systemd >= 030) to disassemble the root device
231 - lots of bugfixes
232 - new module for gpg-encrypted keys - 91crypt-gpg
233
234 dracut-010
235 ==========
236 - lots of bugfixes
237 - plymouth: use /run/plymouth/pid instead of /run/initramfs/plymouth
238 - add "/lib/firmware/updates" to default firmware path
239
240 dracut-009
241 ==========
242 - dracut generator
243   - dracut-logger
244   - xz compression
245   - better argument handling
246
247 - initramfs
248   - hooks moved to /lib/dracut/hooks in initramfs
249   - rd.driver.{blacklist|pre|post} accept comma separated driver list
250   - iSCSI: iSCSI Boot Firmware Table (iBFT) support
251   - support for /run
252   - live image: support for generic rootfs.img (instead of ext3fs.img)
253   - caps module
254   - FCoE: EDD support
255
256 dracut-008
257 ==========
258 - removed --ignore-kernel-modules option (no longer necessary)
259 - renamed kernel command line arguments to follow the rd. naming scheme
260 - merged check, install, installkernel to module-setup.sh
261 - support for bzip2 and xz compressed initramfs images.
262 - source code beautification
263 - lots of documentation
264 - lsinitrd: "catinitrd" functionality
265 - dracut: --list-modules
266 - lvm: support for dynamic LVM SNAPSHOT root volume
267 - 95fstab-sys: mount all /etc/fstab.sys volumes before switch_root
268 - 96insmodpost dracut module
269 - rd.shell=1 per default
270 - rootfs-block:mount-root.sh add fsck
271 - busybox shell replacements module
272 - honor old "real_init="
273 - 97biosdevname dracut module
274
275 dracut-007
276 ==========
277 - module i18n is no longer fedora/red hat specific (Amadeusz Å»oÅ‚nowski)
278 - distribution specific conf file
279 - bootchartd support
280 - debug module now has fsck
281 - use "hardlink", if available, to save some space
282 - /etc/dracut.conf can be overwritten by settings in /etc/dracut.conf.d/*.conf
283 - gentoo splash module
284 - --ignore-kernel-modules option
285 - crypto keys on external devices support
286 - bugfixes
287
288 dracut-006
289 ==========
290 - fixed mdraid with IMSM
291 - fixed dracut manpages
292 - dmraid parse different error messages
293 - add cdrom polling mechanism for slow cdroms
294 - add module btrfs
295 - add btrfsctl scan for btrfs multi-devices (raid)
296 - teach dmsquash live-root to use rootflags
297 - trigger udev with action=add
298 - fixed add_drivers handling
299 - add sr_mod
300 - use pigz instead of gzip, if available
301 - boot from LVM mirrors and snapshots
302 - iscsi: add support for multiple netroot=iscsi:
303 - Support old version of module-init-tools
304 - got rid of rdnetdebug
305 - fixed "ip=auto6"
306 - dracut.conf: use "+=" as default for config variables
307 - bugfixes
308
309 dracut-005
310 ==========
311 - dcb support to dracut's FCoE support
312 - add readonly overlay support for dmsquash
313 - add keyboard kernel modules
314 - dracut.conf: added add_dracutmodules
315 - add /etc/dracut.conf.d
316 - add preliminary IPv6 support
317 - bugfixes
318
319 dracut-004
320 ==========
321 - dracut-lib: read multiple lines from $init/etc/cmdline
322 - lsinitrd and mkinitrd
323 - dmsquash: add support for loopmounted *.iso files
324 - lvm: add rd_LVM_LV and "--poll n"
325 - user suspend support
326 - add additional drivers in host-only mode, too
327 - improved emergency shell
328 - support for compressed kernel modules
329 - support for loading Xen modules
330 - rdloaddriver kernel command line parameter
331 - man pages for dracut-catimages and dracut-gencmdline
332 - bugfixes
333
334 dracut-003
335 ==========
336 - add debian package modules
337 - add dracut.conf manpage
338 - add module 90multipath
339 - add module 01fips
340 - crypt: ignore devices in /etc/crypttab (root is not in there)
341   unless rd_NO_CRYPTTAB is specified
342 - kernel-modules: add scsi_dh scsi_dh_rdac scsi_dh_emc
343 - add multinic support
344 - add s390 zfcp support
345 - add s390 dasd support
346 - add s390 network support
347 - fixed dracut-gencmdline for root=UUID or LABEL
348 - do not destroy assembled raid arrays if mdadm.conf present
349 - mount /dev/shm
350 - let udevd not resolve group and user names
351 - moved network from udev to initqueue
352 - improved debug output: specifying "rdinitdebug" now logs
353   to dmesg, console and /init.log
354 - strip kernel modules which have no x bit set
355 - redirect stdin, stdout, stderr all RW to /dev/console
356   so the user can use "less" to view /init.log and dmesg
357 - add new device mapper udev rules and dmeventd
358 - fixed dracut-gencmdline for root=UUID or LABEL
359 - do not destroy assembled raid arrays if mdadm.conf present
360 - mount /dev/shm
361 - let udevd not resolve group and user names
362 - preserve timestamps of tools on initramfs generation
363 - generate symlinks for binaries correctly
364 - moved network from udev to initqueue
365 - mount nfs3 with nfsvers=3 option and retry with nfsvers=2
366 - fixed nbd initqueue-finished
367 - improved debug output: specifying "rdinitdebug" now logs
368   to dmesg, console and /init.log
369 - strip kernel modules which have no x bit set
370 - redirect stdin, stdout, stderr all RW to /dev/console
371   so the user can use "less" to view /init.log and dmesg
372 - make install of new dm/lvm udev rules optionally
373 - add new device mapper udev rules and dmeventd
374 - Fix LiveCD boot regression
375 - bail out if selinux policy could not be loaded and
376   selinux=0 not specified on kernel command line
377 - do not cleanup dmraids
378 - copy over lvm.conf
379
380 dracut-002
381 ==========
382 - add ifname= argument for persistent netdev names
383 - new /initqueue-finished to check if the main loop can be left
384 - copy mdadm.conf if --mdadmconf set or mdadmconf in dracut.conf
385 - plymouth: use plymouth-populate-initrd
386 - add add_drivers for dracut and dracut.conf
387 - add modprobe scsi_wait_scan to be sure everything was scanned
388 - fix for several problems with md raid containers
389 - fix for selinux policy loading
390 - fix for mdraid for IMSM
391 - fix for bug, which prevents installing 61-persistent-storage.rules (bug #520109)
392 - fix for missing grep for md
393
394 dracut-001
395 ==========
396 - better --hostonly checks
397 - better lvm/mdraid/dmraid handling
398 - fcoe booting support
399     Supported cmdline formats:
400     fcoe=<networkdevice>:<dcb|nodcb>
401     fcoe=<macaddress>:<dcb|nodcb>
402
403     Note currently only nodcb is supported, the dcb option is reserved for
404     future use.
405
406     Note letters in the macaddress must be lowercase!
407
408     Examples:
409     fcoe=eth0:nodcb
410     fcoe=4A:3F:4C:04:F8:D7:nodcb
411
412 - Syslog support for dracut
413     This module provides syslog functionality in the initrd.
414     This is especially interesting when complex configuration being
415     used to provide access to the device the rootfs resides on.
416
417
418 dracut-0.9
419 ==========
420 - let plymouth attach to the terminal (nice text output now)
421 - new kernel command line parameter "rdinfo" show dracut output, even when
422   "quiet" is specified
423 - rd_LUKS_UUID is now handled correctly
424 - dracut-gencmdline: rd_LUKS_UUID and rd_MD_UUID is now correctly generated
425 - now generates initrd-generic with around 15MB
426 - smaller bugfixes
427
428 dracut-0.8
429 ==========
430 - iSCSI with username and password
431 - support for live images (dmsquashed live images)
432 - iscsi_firmware fixes
433 - smaller images
434 - bugfixes
435
436 dracut-0.7
437 ==========
438 - dracut:     strip binaries in initramfs
439
440            --strip
441                   strip binaries in the initramfs (default)
442
443            --nostrip
444                   do not strip binaries in the initramfs
445 - dracut-catimages
446
447     Usage: ./dracut-catimages [OPTION]... <initramfs> <base image>
448     [<image>...]
449     Creates initial ramdisk image by concatenating several images from the
450     command
451     line and /boot/dracut/
452
453       -f, --force           Overwrite existing initramfs file.
454       -i, --imagedir        Directory with additional images to add
455                             (default: /boot/dracut/)
456       -o, --overlaydir      Overlay directory, which contains files that
457                             will be used to create an additional image
458       --nooverlay           Do not use the overlay directory
459       --noimagedir          Do not use the additional image directory
460       -h, --help            This message
461       --debug               Output debug information of the build process
462       -v, --verbose         Verbose output during the build process
463
464 - s390 dasd support
465
466 dracut-0.6
467 ==========
468 - dracut: add --kernel-only and --no-kernel arguments
469
470            --kernel-only
471                   only install kernel drivers and firmware files
472
473            --no-kernel
474                   do not install kernel drivers and firmware files
475
476     All kernel module related install commands moved from "install"
477     to "installkernel".
478
479     For "--kernel-only" all installkernel scripts of the specified
480     modules are used, regardless of any checks, so that all modules
481     which might be needed by any dracut generic image are in.
482
483     The basic idea is to create two images. One image with the kernel
484     modules and one without. So if the kernel changes, you only have
485     to replace one image.
486
487     Grub and the kernel can handle multiple images, so grub entry can
488     look like this:
489
490     title Fedora (2.6.29.5-191.fc11.i586)
491             root (hd0,0)
492             kernel /vmlinuz-2.6.29.5-191.fc11.i586 ro rhgb quiet
493             initrd /initrd-20090722.img /initrd-kernel-2.6.29.5-191.fc11.i586.img /initrd-config.img
494
495     initrd-20090722.img
496       the image provided by the initrd rpm
497       one old backup version is kept like with the kernel
498
499     initrd-kernel-2.6.29.5-191.fc11.i586.img
500       the image provided by the kernel rpm
501
502     initrd-config.img
503       optional image with local configuration files
504
505 - dracut: add --kmoddir directory, where to look for kernel modules
506
507            -k, --kmoddir [DIR]
508                   specify the directory, where to look for kernel modules
509
510
511
512 dracut-0.5
513 ==========
514 - more generic (all plymouth modules, all keyboards, all console fonts)
515 - more kernel command line parameters (see also man dracut(8))
516 - a helper tool, which generates the kernel command line (dracut-gencmdline)
517 - bridged network boot
518 - a lot of new command line parameter
519
520 dracut-0.4
521 ==========
522 - bugfixes
523 - firmware loading support
524 - new internal queue (initqueue)
525     initqueue now loops until /dev/root exists or root is mounted
526
527     init now has the following points to inject scripts:
528
529     /cmdline/*.sh
530        scripts for command line parsing
531
532     /pre-udev/*.sh
533        scripts to run before udev is started
534
535     /pre-trigger/*.sh
536        scripts to run before the main udev trigger is pulled
537
538     /initqueue/*.sh
539        runs in parallel to the udev trigger
540        Udev events can add scripts here with /sbin/initqueue.
541        If /sbin/initqueue is called with the "--onetime" option, the script
542        will be removed after it was run.
543        If /initqueue/work is created and udev >= 143 then this loop can
544        process the jobs in parallel to the udevtrigger.
545        If the udev queue is empty and no root device is found or no root
546        filesystem was mounted, the user will be dropped to a shell after
547        a timeout.
548        Scripts can remove themselves from the initqueue by "rm $job".
549
550     /pre-mount/*.sh
551        scripts to run before the root filesystem is mounted
552        NFS is an exception, because it has no device node to be created
553        and mounts in the udev events
554
555     /mount/*.sh
556        scripts to mount the root filesystem
557        NFS is an exception, because it has no device node to be created
558        and mounts in the udev events
559        If the udev queue is empty and no root device is found or no root
560        filesystem was mounted, the user will be dropped to a shell after
561        a timeout.
562
563     /pre-pivot/*.sh
564        scripts to run before the real init is executed and the initramfs
565        disappears
566        All processes started before should be killed here.
567
568     The behaviour of the dmraid module demonstrates how to use the new
569     mechanism. If it detects a device which is part of a raidmember from a
570     udev rule, it installs a job to scan for dmraid devices, if the udev
571     queue is empty. After a scan, it removes itsself from the queue.
572
573
574
575 dracut-0.3
576 ==========
577
578 - first public version
579