Grand Unified Bootloader
Der Grand Unified Bootloader / GRUB (dt. "Grosser vereinheitlichter Bootloader") ist ein freier Bootloader, das oft zum Starten von unixoiden Betriebssystemen eingesetzt wird.
GRUB wurde innerhalb des GNU-Hurd-Projektes als Bootloader entwickelt. Aufgrund seiner höheren Flexibilität verdrängte GRUB in vielen Linux-Distributionen den traditionellen Bootloader LILO. GRUB wird auch in Solaris 10 x86 benutzt. Inzwischen liegt GRUB in zwei Varianten vor:
- die ältere Fassung (auch bekannt als GRUB 0.98 oder GRUB Legacy) startet beispielsweise Opensuse.
- die neuere, vollständig neu entwickelte Fassung GRUB 2 besitzt noch nicht ganz den Funktionsumfang des Vorgängers, kennt aber EXT4, und wird beispielsweise von Ubuntu verwendet.
Konzept
GRUB Legacy | GRUB 2 |
---|---|
Beim Bootvorgang sucht das BIOS am Anfang des 512 Byte grossen Master Boot Record nach dem Bootloader. Hier liegt jedoch nur ein kleiner Teil von GRUB, die sogenannte "Stage 1", welche auf der Festplatte den Rest von GRUB sucht, "Stage 2". | |
Falls "Stage 2" in einer Datei liegt (meist unter "/boot"), so lädt Stage 1 den Dateisystemtreiber "Stage 1.5" nach. | Stage 1.5 entfällt durch den modularen Aufbau. Hier besitzt bereits Stage 1 alle notwendigen Kenntnisse. |
Liegt nur Linux auf der Festplatte, so bekommt man GRUB bei einigen Distributionen (z. B. Ubuntu) gar nicht mehr zu sehen. Die Anzeige des Menüs kann dann durch Drücken der Umschalttaste direkt nach dem Einschalten des Rechners erzwungen werden.
Ein defekter GRUB kann daran erkanntw erden, dass sich kein Menü zeigt oder nach einer Meldung der Art "GRUB Loading stage 2..." das System anhält. Eine häufige Ausfallursache sind andere Bootloader, die GRUB einfach von der Festplatte werfen. Kann das Menü allerdings noch aufgerufen oder gesehen werden, so kann GRUB Linux aus irgendeinem Grund nicht laden.
Konfiguration
Hintergrundbild beim Bootvorgang
Das Hintergrundbild wird im XPM-Format in komprimierter Form abgelegt. In der Datei "/boot/menu.lst" wird dann auf die Bilddatei verweisen. Ein GRUB-Bootsplash darf maximal 640 x 480 Pixel gross sein und höchstens 14 Farben aufweisen.
Das Bild "file.png" Bild mit geringer Farbanzahl wird mit folgendem Befehl kann wie folgt in die GRUB-kompatible Datei "file.xpm" umgewandelt werden.
$ convert -resize 640x480 -colors 14 file.png file.xpm
Bilder mit hoher Farbtiefe werden allerdings besser mit GIMP umgewandelt. Nach Anpassen der Bildgrösse wird dazu im Kontextmenü "Bild > Modus > Indiziert..." die Anzahl der Farben verringert.
Zum Schluss wird die neue Bilddatei am besten noch komprimiert.
$ gzip file.xpm
Die entstandene Datei "file.xpm.gz" wird ins Verzeichnis "/boot/grub" gestellt und in der Konfigurationsdatei "menu.lst" folgender Eintrag gemacht.
splashimage=(hd0,0)/boot/grub/file.xpm.gz
In der Datei "menu.lst" können ebenfalls die Vorder- und Hintergrundfarben für die Texte in hexadezimaler Form angegeben werden, für weisse Schrift auf schwarzem Hintergrund z. B.
foreground ffffff background 000000
Sicherung der GRUB-Konfiguration auf Diskette
Formatieren der Diskette.
$ fdformat /dev/fd0u1440
Erstellen eines Dateisystems. FAT ist dafür am besten geeignet, da die GRUB-Konfiguration so im Notfall sogar unter Microsoft Windows bearbeitet werden kann.
$ mkfs.msdos /dev/fd0
Einhängen der Diskette ins Dateisystem und Installation des Bootloaders GRUB.
$ mount /dev/fd0 /floppy $ grub-install --recheck --root-directory=/floppy /dev/fd0
Kopieren der GRUB-Konfigurationsdatei aus dem Bootverzeichnis der Festplatte auf die Diskette.
$ cp /boot/grub/menu.lst /floppy/boot/grub
Aushängen der Diskette, bevor die aus dem Laufwerk genommen wird.
$ umount /floppy
Mit einer solchen Diskette kann Linux gestartet werden, falls eine Microsoft Windows-Installation den Bootloader überschrieben hat.
Weblinks
Herausgeber | Sprache | Webseitentitel | Anmerkungen |
---|---|---|---|
Wikipedia | ger | GRUBwbm | Enzyklopädischer Artikel |