LinuxBootLoader
Contents
Linux Boot-Loader
Eine Festplatte muss in sog. Partitionen aufgeteilt werden (Partitionierung. Solche Partitionen können nur Daten oder auch ein Betriebsystem enthalten, das von der Festplatte gestartet werden soll, im Jargon "gebootet" werden soll. Für das Booten sind der MasterBootRecord (MBR) und die Boot-Loader (z.B. WindowsBootLoader, LinuxBootLoader) zuständig.
Ein WindowsBootLoader kann neben Windows-Partitions auch Linux booten, ein LinuxBooteLoader kann neben Linux-Partitions auch Windows starten.
Unter dem Betriebssystem Linux kennt man folgende Boot-Loader:
- Lilo "Linux Loader"
- Grub "Grand Unified Bootloader"
Der Boot-Loader Grub
Grub ist der neuere Boot-Loader unter Linux.
Grub startet normalerweise ein Boot-Menü, aus dem man verschiedene Boot-Varianten auswählen kann.
Grub arbeitet in zwei Stufen. Stufe 1 ist im Boot-Sektor der Partition (bzw. MasterBootRecord, wenn erste Partition) enthalten. Der Boot-Vorgang wird dann aber noch durch die Inhalte der Konfigurierungsdaten (menu.lst) gesteuert bzw. es gibt sogar manuelle Eingriffsmöglichkeiten.
Der Linux-Start geschieht durch Bestimmung der Boot-Partition, eines Linux-Kernel-Image und einer Linux-initrd-Datei.
Es kann auch ein Nicht-Linux-Betriebssystem gestartet werden...
Grub unterstützt auch das Booten von Diskette und das Dateisystem "vfat" d.h. FAT12/FAT32.
Grub konfigurieren
- Grub-Verzeichnis: /boot/grub (kann leicht mit /root verwechselt werden !!!)
- Grub-Menü: /boot/grub/menu.lst
- Grub-Devices: /boot/grub/device.map
Schreiben eines MBR mit Grub
Nachdem ich auf meinem Notebook ComputerLonzo Linux installiert hatte, kam dann irgendwann das Bedürfnis, zusätzlich noch eine WindowsXP-Partition auf der Festplatte zu installieren. Nachdem ich dafür durch entsprechende Partitionierung eine FAT32-Partition "hda3" geschaffen hatte, war die Installation problemlos. Nur danach war der MasterBootRecord überschrieben mit einem WindowsBootLoader d.h. ich kam an mein Linux nicht mehr heran.
Dann fand ich folgenden einfachen Weg, wieder einen MasterBootRecord, der Grub-Stage-1 enthält zu schreiben (auf Sektor 1 der Festplatte):
- Booten von Linux-Live-CD
- Öffnen eines Terminal-Fensters
- Eingeben: "grub"
- Eingeben: root(hd0,0)
- Eingeben: setup (hd0)
- Eingeben: quit
- Reboot von Festplatte
Anmerkung: Grub bezeichnet die erste Festplatte (hda) als hd0 und die erste Partition hda1 als (hd0,0).
Grub startet Windows
Folgender Eintrag in der Grub-Konfigurationsdatei menu.lst ermöglicht die Auswahl des WindowsXP-Systems von hda3:
title Windows XP root (hd0,2) chainloader +1
-- Main.DietrichKracht - 24 Jun 2006