Dracut (initramfs)
Original author(s) | Harald Hoyer and others |
---|---|
Initial release | July 2009 |
Stable release | 034 / October 8, 2013[1] |
Development status | active |
Written in | C, Unix shell |
Operating system | Linux |
Platform | Linux kernel |
Type | Initramfs |
License | GPL-2+ and LGPL-2+ |
Website | dracut.wiki.kernel.org |
dracut is an event-driven initramfs infrastructure. dracut (the tool) is used to create an initramfs image by copying tools and files from an installed system and combining it with the dracut framework, usually found in /usr/lib/dracut/modules.d.
Unlike existing initramfs's, dracut's framework attempts at having as little hard-coded into the initramfs as possible. The initramfs has (basically) one purpose in life—getting the rootfs mounted so that we can transition to the real rootfs. This is all driven off of device availability. Therefore, instead of having hard-coded scripts to do various things, dracut's initramfs depends on udev to create symbolic links to device nodes and when the rootfs's device node appears, it mounts it and switches root to it. This helps to keep the time required in initramfs down so that things like a 5-second boot aren't made impossible as a result of the very existence of an initramfs.[2]
Most of the initramfs generation functionality in dracut is provided by generator modules that are sourced by the main dracut tool to install specific functionality into the initramfs. They live in the modules subdirectory, and use functionality provided by dracut-functions to do their work.[2]
Currently, dracut supports booting from DM RAID, MD RAID, LVM2, Device mapper multipath I/O, dm-crypt, cifs, FCoE, iSCSI, NBD and NFS.[3]
Lately, dracut gained the ability to use systemd as process 1 in the initramfs.[4]
Adoption
dracut is included in:
- Fedora since version 12[5]
- Red Hat Enterprise Linux since version 6.[6]
- Gentoo in 2010.[7]
- Debian since "squeeze".[8]
- Mandriva since Mandriva 2011.[9]
- Mageia since Mageia 2.[10]
- openSUSE might switch to dracut as the default initramfs creation tool for version 12.3.[11][12]
- Void Linux
References
- ↑ "[ANNOUNCE] dracut 034". 08 October 2013. Retrieved 18 October 2013.
- ↑ 2.0 2.1 dracut Wiki, kernel.org, retrieved 2012-10-10
- ↑ dracut documentation, kernel.org, retrieved 2012-10-10
- ↑ Google+ blog about systemd in dracut, plus.google.com, retrieved 2012-10-10
- ↑ Features/Dracut, FedoraProject, retrieved 2012-10-10
- ↑ RHEL6 SRPMS FTP, redhat.com, retrieved 2012-10-10
- ↑ Dracut - Gentoo Wiki, wiki.gentoo.org, retrieved 2012-10-10
- ↑ Package: dracut (005-1), debian.org, retrieved 2012-10-10
- ↑ dracut-010-6-mdv2011.0.noarch.rpm, pkgs.org, retrieved 2012-10-10
- ↑ Mageia App Db, mageia.madb.org, retrieved 2012-10-10
- ↑ My hackweek8 project: dracut, Frederic Crozat blog, retrieved 2012-10-10
- ↑ Add dracut to openSUSE, openFATE opensuse.org, retrieved 2012-10-10
|