]> git.ipfire.org Git - thirdparty/dracut.git/blame - README.md
feat(cpio): add newc archive creation utility
[thirdparty/dracut.git] / README.md
CommitLineData
ce0344d3
CW
1dracut
2====
7e8f8ddb 3
ce0344d3 4dracut is an event driven initramfs infrastructure.
1363167d 5
1ed4b9f1 6[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](.github/CODE_OF_CONDUCT.md)
871d63c3 7[![Fedora-32](https://github.com/dracutdevs/dracut/workflows/Fedora-32/badge.svg?branch=master)](https://github.com/dracutdevs/dracut/actions?query=workflow%3AFedora-32)
b56448ba
HH
8[![Fedora-33](https://github.com/dracutdevs/dracut/workflows/Fedora-33/badge.svg?branch=master)](https://github.com/dracutdevs/dracut/actions?query=workflow%3AFedora-33)
9[![Fedora-latest](https://github.com/dracutdevs/dracut/workflows/Fedora-latest/badge.svg?branch=master)](https://github.com/dracutdevs/dracut/actions?query=workflow%3AFedora-latest)
1363167d 10
ce0344d3
CW
11dracut (the tool) is used to create an initramfs image by copying tools
12and files from an installed system and combining it with the
13dracut framework, usually found in /usr/lib/dracut/modules.d.
14
871d63c3
HH
15Unlike other implementations, dracut hard-codes as little
16as possible into the initramfs. The initramfs has
ce0344d3
CW
17(basically) one purpose in life -- getting the rootfs mounted so that
18we can transition to the real rootfs. This is all driven off of
19device availability. Therefore, instead of scripts hard-coded to do
20various things, we depend on udev to create device nodes for us and
21then when we have the rootfs's device node, we mount and carry on.
22This helps to keep the time required in the initramfs as little as
23possible so that things like a 5 second boot aren't made impossible as
871d63c3 24a result of the very existence of an initramfs.
ce0344d3
CW
25
26Most of the initramfs generation functionality in dracut is provided by a bunch
27of generator modules that are sourced by the main dracut script to install
28specific functionality into the initramfs. They live in the modules.d
29subdirectory, and use functionality provided by dracut-functions to do their
30work.
31
ce0344d3
CW
32Currently dracut lives on github.com and kernel.org.
33
34The tarballs can be found here:
35 http://www.kernel.org/pub/linux/utils/boot/dracut/
36 ftp://ftp.kernel.org/pub/linux/utils/boot/dracut/
37
38Git:
1ed4b9f1 39 https://github.com/dracutdevs/dracut.git
ce0344d3
CW
40 http://git.kernel.org/?p=boot/dracut/dracut.git
41
42Project Documentation:
43 http://www.kernel.org/pub/linux/utils/boot/dracut/dracut.html
44
45Project Wiki:
46 http://dracut.wiki.kernel.org
47
1ed4b9f1
HH
48See the github issue tracker for things which still need to be done and HACKING.md
49for some instructions on how to get started. There is also a mailing list
ce0344d3
CW
50that is being used for the discussion -- initramfs@vger.kernel.org.
51It is a typical vger list, send mail to majordomo@vger.kernel.org with body
52of 'subscribe initramfs email@host.com'
53
54
55Licensed under the GPLv2