Bootvorgang¶
Eine exemplarische Darstellung inklusive Erläuterungen zu Linux-Bootvorgängen:
Einschalten (Reset, POST - Power On Self Test)
BIOS / UEFI mit Bootsequenz (Startreihenfolge; engl: Bootsequence / Startmedien)
Übersicht Bootmedien:
USB (Sticks / HD), Netzwerk (PXE / TFTP), Festplatten / SSDs, Optische Medien (CD/DVD)
MBR lesen - Masterbootrecord mit Partitionstabelle (Nutzung von UEFI mit GPT ist anders: wir benötigen eine spezielle ESP - EFI System Partition mit Fat32/vfat Dateisystem)
maximal 4 Partitionen: 4 Primäre oder 3 Primäre und 1 Erweiterte
Hinweis:
für das Booten von HDs > 2,2 TB wird UEFI mit GPT (GUID Partition Table) benötigt
Erinnerung / Tipp: (ggf. nach Fehlschlag Parallelinstalation zu Windows)
Win-Systeme benötigen als Bootstandard eine Aktive primäre Partition inkl. eines „sauberen“ MBR (Generischer MBR)
→ Reparatur-Tipp zum MBR: mit Win-DVD:
bootrec /fixmbr
(bzw.bootrec /fixboot
für Bootsektor) in ReparaturkonsoleDarstellung zu Partitionierungen:
exemplarische Szenarios für Parallelinstallation mit Windows - Linktipp MS
Linux-Bootmanager: GRUB2 (Übersicht Bootmanager und Technik Bootmanager folgt)
Vorgänger / Bootalternativen: GRUB (Version 1), LILO (Linux Loader)
Kernel und initrd (klassisch: init Ramdisk - initrd laden; Anm.: die Ramdisk ist optional)
Symlinks bei openSUSE: vmlinux (komprimierter Kernel), initrd
Analyse Kernel-Version:
uname -a
bzw.uname -r
systemd (Erster Prozess mit ID „1“) (früher: SysVInit mit Urprozess init)
Anm.: moderne Linuxe benutzen nahezu ausschließlich systemd („abwärtskompatibel“ zu init).
Ubuntu hatte zwischenzeitlich upstart als init-Lösung (Ubuntu nutzt aber auch systemd ab Ubuntu 16.04 LTS)
Gründe für Abkehr von SysVinit zu alternativen init-Techiken:
Effizienter
Parallel arbeitend
Abhängigkeiten von Prozessen cleverer lösend
moderne Tools (journalctl, systemctl, …)
moderne Problemanalysen und Loggings
Tipp zur Startanalyse:
systemd-analyze blame
(erzählt in ms - Millisekunden -
die Geschichte der „Starts“)
oder auch:
systemd-analyze plot > grafische-analyse.svg
(erstellt SVG-Grafik)
Technisch: systemd arbeitet mit Targets (z.B. graphical.target, multi-user.target) statt den klassischen Runleveln
Befehle:
init
, telinit
, runlevel
, systemctl
(statt sysctl
bei init-Technik), journalctl
(für Analyse/Logging)