dracut (initramfs)
| dracut
| |
|---|---|
| [[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]] | |
| Datei:Dracut output screenshot.png initramfs Generator und Framework | |
| Basisdaten
| |
| Maintainer | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Entwickler | Harald Hoyer u. v. a |
| Erscheinungsjahr | 2009 |
| Aktuelle Version | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) (Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)) |
| Aktuelle Vorabversion | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) (Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)) |
| Betriebssystem | GNU/Linux |
| Programmiersprache | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Kategorie | Initramfs |
| Lizenz | GPL v2+ und LGPL v2+ |
| deutschsprachig | ja |
| https://github.com/dracut-ng/dracut-ng/ | |
dracut ist eine Software, die für Linux-Systeme ein initramfs – ein temporäres Dateisystem – erstellt. Dieses wird vom Linux-Kernel während des Bootvorgangs verwendet, bis das finale root-Dateisystem eingehängt wird.
Ziel von dracut ist es, eine universelle Schnittstelle zum Erzeugen eines initramfs anzubieten, die von allen Distributionen genutzt werden kann. Zuvor nutzten viele Distributionen einen selbst entwickelten Ablauf zum Generieren dieser initramfs, was Benutzbarkeit und Interoperabilität senkte und die Fehleranfälligkeit erhöhte.<ref>Dracut looks to replace the initramfs patchwork. In: LWN.net. Abgerufen am 11. April 2024.</ref>
Technische Eigenschaften
dracut ist modular aufgebaut und bietet definierte Schnittstellen, um die Funktionalität relativ einfach erweitern zu können.
Alle Module müssen in der Skriptsprache der Debian Almquist Shell (/bin/dash), einer kompakten Betriebssystem-Shell, programmiert sein.
dracut bietet spezielle Dash-Funktionen an, um
- Dateien einfach beim Erstellen des initramfs einzubetten.
- benötigte Programme um initramfs zu installieren (z. B. awk)
- Abhängigkeiten unter den dracut-Modulen zu überprüfen.
- Hooks zu definieren.
Hooks
Als Hooks werden Dash-Skripte bezeichnet, die bei bestimmten Ereignissen ausgeführt werden. Diese sind:
- cmdline – das Auswerten der boot-Parameter.
- pre-udev – bevor die Hardware-Erkennung startet.
- pre-mount – unmittelbar vor dem Ausführen des mount-Befehls.
- mount – wenn die Verzeichnisse eingehängt werden.
- pre-pivot – bevor das initramfs verlassen wird und in das finale root-Verzeichnis gewechselt wird.
Geschichte
Im Sommer 2009 wurde dracut das erste Mal mit Fedora 12 Bestandteil einer weit verbreiteten Linux-Distribution.<ref>Releases/12/FeatureList - Fedora Project Wiki. Abgerufen am 11. April 2024.</ref> Zwischenzeitlich war das Projekt direkt beim Linux-Kernel-Projekt beheimatet;<ref>Dracut Wiki. Abgerufen am 5. November 2022.</ref> wurde aber später auf GitHub verschoben.<ref>dracut. dracutdevs, 4. November 2022, abgerufen am 5. November 2022.</ref>
Weblinks
Einzelnachweise
<references />