Grub2 Uefi Systemstart: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 10: | Zeile 10: | ||
* Braun: systemd mountet weitere Dateisysteme. | * Braun: systemd mountet weitere Dateisysteme. | ||
| − | + | {{#drawio:Grub-systemstart-uefi}} | |
=UEFI= | =UEFI= | ||
Aktuelle Version vom 3. Juni 2024, 12:47 Uhr
Farbige Pfeile im Diagramm
- Rot: UEFI lädt Shim.
- Violett: Shim lädt GRUB2.
- Grün: GRUB2 lädt grub.cfg und zeigt das Boot-Menü an.
- Magenta: GRUB2 lädt Kernel und initrd.
- Blau: Kernel mountet Root-Dateisystem (/dev/sda1).
- Cyan: Kernel startet systemd.
- Orange: systemd setzt den Hostnamen.
- Gelb: systemd setzt die Uhrzeit.
- Braun: systemd mountet weitere Dateisysteme.
UEFI
- Das UEFI (Unified Extensible Firmware Interface) führt die Initialisierung der Hardware durch und sucht nach einem bootfähigen Gerät.
- Sobald ein bootfähiges Gerät gefunden wird, lädt UEFI den signierten Bootloader "shim".
Shim
- Shim ist ein minimaler Bootloader, der von Microsoft signiert ist.
- Shim lädt einen anderen Bootloader (GRUB2), der von Shim signiert wurde.
GRUB2
- GRUB2 wird von Shim geladen und übernimmt die Kontrolle.
- GRUB2 lädt die Konfigurationsdatei (grub.cfg), die Boot-Einträge und Optionen enthält.
- Ein Boot-Menü wird angezeigt, aus dem der Benutzer das zu startende Betriebssystem auswählen kann, oder der Standard-Kernel wird automatisch gestartet.
Kernel und Initial Ramdisk (initrd)
- GRUB2 lädt den Kernel und die Initial Ramdisk (initrd) in den Speicher.
- Der Kernel wird gestartet und initrd enthält die benötigten Treiber und Dateien, die für den Start des Kernels erforderlich sind.
- GRUB2 übergibt die Kontrolle an den Kernel, der im Speicher geladen ist.
Kernel-Initialisierung
- Der Kernel wird ausgeführt und initialisiert die Hardware.
- Der Kernel verwendet die Dateien und Treiber in der initrd, um das Root-Dateisystem zu laden.
Mounten des Root-Dateisystems
- Nach der Initialisierung des Kernels wird das endgültige Root-Dateisystem von der festgelegten Partition (z.B. /dev/sda1) gemountet.
- Die Initial Ramdisk (initrd) übergibt die Kontrolle an das tatsächliche Root-Dateisystem.
Starten von systemd
- Der Kernel startet den ersten Userspace-Prozess, systemd.
- systemd liest seine Konfigurationsdateien und startet die notwendigen Systemdienste und Prozesse, um das Betriebssystem vollständig hochzufahren.
Hostname setzen
- systemd setzt den Hostnamen des Systems entsprechend der Konfiguration.
Uhrzeit setzen
- systemd setzt die Systemzeit, entweder durch Synchronisation mit einem Zeitserver oder durch Nutzung der Hardware-Uhr.
Weitere Dateisysteme mounten
- systemd mountet weitere benötigte Dateisysteme, wie in den Konfigurationsdateien definiert (z.B. /etc/fstab).
