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