Führt den POST (Power-On Self-Test) durch, um RAM und CPU zu prüfen.
Liest die im Mainboard festgelegte Boot-Reihenfolge aus.
Springt direkt zur ersten aktiven Festplatte (z. B. /dev/sda oder /dev/sdc).
2. Der MBR (Master Boot Record) auf Sektor 0 & GRUB Stage 1
Position & Größe: Liegt ganz am Anfang der Festplatte, außerhalb jeder Partition auf Sektor 0. Genau 512 Bytes groß.
Partitionstabelle (64 Bytes): Speichert maximal 4 primäre Partitionen inklusive der Kennung (Kn) (z. B. 83 für Linux, 82 für Swap). Die restlichen 2 Bytes am Ende bilden die Boot-Signatur 0x55AA.
Der GRUB-Stufenplan (Wie der MBR den Bootloader ansteuert):
GRUB Stage 1 (446 Bytes): Da in den MBR kein vollständiger Bootloader passt, liegen dort nur die ersten 446 Bytes von GRUB. Der einzige Job dieser "Stage 1" ist es, den Startpunkt der nächsten Stufe auf der Platte zu finden und anzuspringen.
GRUB Stage 1.5 (Im Leerraum): Stage 1 springt in den unpartitionierten Leerraum (Sektoren 1 bis 2047 – auch MBR-Gap genannt). Hier liegen die Dateisystem-Treiber von GRUB (z. B. für ext4 oder XFS). Erst dadurch kann GRUB überhaupt verstehen, wie man Dateien von einer Linux-Partition liest.
Übergang zu Stage 2: Mit den geladenen Treibern ist Stage 1.5 nun in der Lage, auf die Partition /dev/sda1 zuzugreifen, um dort im Verzeichnis /boot/grub/ die eigentliche Hauptstufe (Stage 2) zu starten, die dir das Boot-Menü anzeigt.
3. GRUB 2 (Stage 2) & Die Architektur des /boot/ Verzeichnisses
Aktivierung von Stage 2: Nachdem Stage 1.5 die Dateisystem-Treiber bereitgestellt hat, wird die Hauptstufe (**GRUB Stage 2**) von der Partition geladen. Erst jetzt siehst du das grafische Boot-Menü auf dem Bildschirm und kannst Kernel-Parameter (wie den Single-User-Mode) interaktiv bearbeiten.
Auslesen der Konfiguration (Wichtig für LPIC-1):
GRUB 2 liest seine Konfiguration standardmäßig aus der Datei /boot/grub/grub.cfg (bei Fedora/RHEL oft unter /boot/grub2/grub.cfg).
Achtung: Diese Datei darf niemals manuell editiert werden! Änderungen werden in /etc/default/grub eingetragen und mit dem Befehl update-grub oder grub-mkconfig -o /boot/grub/grub.cfg generiert.
Prüfungsrelevante Dateien im Verzeichnis /boot/:
vmlinuz-[Version]: Der eigentliche Linux-Kernel. Das **vmlinuz** steht für "Virtual Memory Linux Gzip Compressed" (ein mit gzip komprimierter Kernel, der sich selbst entpacken kann).
initramfs-[Version].img (oder initrd): Das Initial RAM Filesystem. Eine temporäre RAM-Disk, die wichtige Kernel-Module (Speicher- und Dateisystemtreiber) enthält, damit der Kernel die echte Root-Partition (/) überhaupt einhängen kann.
config-[Version]: Die Konfigurationsdatei, mit der dieser spezifische Linux-Kernel damals kompiliert wurde (zeigt an, welche Module fest eingebaut oder als trennbare Module vorliegen).
System.map-[Version]: Eine Nachschlagetabelle (Symboltabelle) für den Kernel, die Variablen- und Funktionsnamen den exakten Speicheradressen im RAM zuordnet (wichtig für das Debugging bei Kernel-Fehlern / Kernel Panics).
Hardware-Kontrolle: Der Kernel übernimmt die exklusive Kontrolle über die CPU, den Arbeitsspeicher (RAM) und die Systemarchitektur. Er führt eine eigene Hardware-Erkennung durch und gibt Statusmeldungen an den Kernel-Ringpuffer aus (auslesbar mit dem Befehl dmesg).
Die Rolle von initramfs (Initial RAM Filesystem):
Da der Kernel zu diesem Zeitpunkt das eigentliche Root-Dateisystem (/) auf der Festplatte noch nicht lesen kann (weil ihm die passenden Treiber fehlen), lädt GRUB das initramfs als temporäres Dateisystem in den RAM.
Das initramfs enthält universelle Speichertreiber, die für den ersten Festplattenzugriff zwingend erforderlich sind.
Neutrale Treiber-Beispiele (Wichtig für LPIC-1):
SATA / AHCI: Treiber wie ahci für klassische, physische SATA-Festplatten (/dev/sd*).
NVMe: Moderne Solid-State-Drives über PCIe nutzen das nvme-Modul (/dev/nvme*).
Virtuelle Umgebungen (Paravirtualisierung): Universelle Schnittstellen wie virtio_blk oder virtio_scsi für optimierte virtuelle Festplatten (/dev/vd*).
RAID / SCSI: Spezifische Treiber für Hardware-RAID-Controller (z. B. von LSI oder Adaptec).
Der Mount-Wechsel (Root Pivot): Sobald die passenden Treiber aus dem Speicher geladen sind, hängt der Kernel das echte Root-Dateisystem (/) der Festplatte schreibgeschützt (read-only) ein und beendet das temporäre initramfs.
Übergabe an den User-Space: Nach dem erfolgreichen Zugriff auf die Festplatte ruft der Kernel als allerersten Prozess im regulären System das Initialisierungsprogramm /sbin/init auf.
5. /sbin/init (Software- & Diensteverwaltung)
Bekommt im laufenden System immer die Prozess-ID 1 (PID 1). Es ist der Urvater aller Prozesse.
Der Kernel kümmert sich ab jetzt nur noch um die Hardware, während init die Software verwaltet.
Moderne Systeme (Kubuntu/Fedora): Nutzen systemd. Der Pfad /sbin/init ist hierbei nur eine Verknüpfung auf systemd.
Alte Systeme (Legacy): Nutzen SysVinit (arbeitet mit Runleveln von 0 bis 6).
Startet alle Hintergrunddienste (Daemons), das Netzwerk und schließlich das grafische Anmeldefenster.