LPIC101/102.2 Einen Bootmanager installieren

Aus Foxwiki

Einen Bootmanager installieren

Bootvorgang

Der Bootmanager ist ein Programm, das die Auswahl verschiedener Betriebssysteme auf einem Rechner ermöglicht. Beim Hochfahren eines Rechners wird dabei unter anderem das BIOS gestartet und von dort aus weiter über einen sogenannten Bootcode, den es im Master Boot Record (MBR) auf Sektor 0 einer Festplatte findet. Dieser enthält die Sektoradresse des Speichermediums auf den zu ladenden Bootloader oder Bootmanager. In der Regel sind die Sektoren 1…62 einer Festplatte ungenutzt und können für einen Bootmanagercode genutzt werden. Der Bootmanager zeigt ein Menü an, in dem die startfähigen Betriebssysteme anwählbar sind.

Alternativ kann der Bootloader auch ein rudimentäres Betriebssystem starten, in dem ein entsprechend komfortableres Bootmanager-Menü möglich ist. Ist das nun gewählte Betriebssystem bereits geladen – also das, unter dem der Bootmanager läuft – wird mit der weiteren Konfiguration des Betriebssystems fortgefahren, andernfalls startet der Bootmanager den Boot-Loader für das alternative Betriebssystem. Um dessen Startadresse zu finden, benötigt der Bootmanager den zugehörigen MBR. Wurden verschiedene Betriebssysteme auf demselben Speichermedium installiert, muss sich dieser daher am Anfang einer zusätzlichen Partition – dem sogenannten Bootsektor der Installationspartition – befinden.


Wichtigste Wissensgebiete:

  • alternative und Notfall-Startmöglichkeiten vorsehen
  • einen Bootloader wie GRUB Legacy installieren und konfigurieren
  • rundlegende Konfigurationsänderungen an GRUB 2 durchführen
  • mit dem Bootloader interagieren

Liste wichtiger Dateien, Verzeichnisse und Anwendungen:

  • menu.lst, grub.cfg und grub.conf
  • grub-install
  • grub-mkconfig

Allgemeines:

Damit ein System starten kann, benötigt es ein Programm, das die für den Bootvorgang nötigen Schritte ausführt. Ein solches Programm wird als Boot-Strap-Loader bezeichnet. Für Linux kommt als Bootloader heutzutage eigentlich nur noch GRUB in Frage. Der ursprünglich viel verwendete LILO ist kaum noch anzutreffen und nun auch von der Liste der LPI-Prüfungsthemen endgültig verschwunden. Es gibt noch andere Boot-loader, aber für LPIC Level 1 reicht es, wenn Sie sich mit GRUB Legacy und GRUB 2 aus- kennen. Beide haben die Aufgabe, den Kernel aufzufinden und zu starten. Danach geben sie die Kontrolle an den Kernel ab und sind bis zum nächsten Systemstart untätig. Sie werden in diesem Kapitel die Unterschiedezwischen diesen beiden Boot-Strap-Loa-dern kennenlernen.


GRUB (ein Akronym für GRand Unified Bootloader) ist ein Bootmanager . Der Bootmanager ist dafür da, beim Starten des Rechners den Benutzer zu fragen, welches Betriebssystem er starten möchte. Das ist natürlich interessant, wenn man mehrere Betriebssysteme parallel installiert hat. Eine Alternative zu GRUB ist beispielsweise Lilo, der bei SuSe Linux Verwendung findet.

GRUB wird standardmäßig bei Ubuntu mitinstalliert, da neben dem reinen Starten vom System auch noch eine Art "abgesicherter Modus" sowie ein RAM-Test gestartet werden können.


GRUB installieren

GRUB ist wie gesagt bei der Ubuntu-Installation schon vorinstalliert. Installiert man nun aber Windows nach Ubuntu neu, überschreibt Windows den Master-Boot-Record (MBR). Um das wieder zu beheben, gibt es zwei Möglichkeiten:

  • manuell über das Terminal einer Live-CD
  • etwas einfacher mit der SuperGrubCD


Manuelle Installation

  • Ubuntu Live-CD starten und das Terminal öffnen.
  • Ein sudo grub, um GRUB als root auszuführen.
  • Ein find /boot/grub/stage1, um den Ort, wo der GRUB-Bootmanager liegt, zu finden.
  • Nun root (hdx,x) eingeben (x durch Festplatte aus Schritt 3 ersetzen), um die angegebene Festplatte zu konfigurieren
     und zu mounten.
  • Um den Grub-Manager nun zu installieren, setup (hd0) ausführen. Achtung: Lasse die Ziffer mit Komma heraus!
  • GRUB mit quit schließen und Computer neustarten, nun müsste GRUB auf der angegebenen Festplatte neu installiert sein.



Haupt-Unterschiede zwischen GRUB Legacy und GRUB 2

GRUB 2 braucht im Gegensatz zum Vorgänger die Stage 1.5 nicht mehr. Diese lag zwischen dem MBR und dem ersten Block der ersten Partition. Die Stage 2 von GRUB 2 beinhaltet einen Kernel, welcher lediglich den notwendigsten Code beinhaltet. Dazu gehören ein ELF-Loader( Executable and Linkable Format ), Datenträger-Zugriff, eine Rettungs-Shell und Code zur Dekompression. Während der Installation erzeugt GRUB 2 die Module für das Dateisystem in der Datei core.img und komprimiert diese normalerweise mittels LZMA ( Lempel-Ziv-Markow-Algorithmus ) oder LZO ( Lempel-Ziv-Oberhumer). Diese Datei ist in der Regel so klein, dass sie sich im Startbereich hinter dem MBR ablegen lässt. Während des Starts entpackt GRUB 2 die entsprechenden Module und lädt die Konfigurations-Datei grub.cfg.



GRUB-Stages

Das Programm für die erste Stage befindet sich im MBR der Festplatte, von der das System starten soll. Es gibt aber normalerweise auch noch eine Kopie in /boot/grub/stage1. Hierbei handelt es sich um eine Binärdatei, weshalb ein normaler Pager eine Fehlermeldung ausgeben wird, wenn Sie versuchen, den Inhalt der Datei zu betrachten. Sie können die Datei im Hexadezimalformat anzeigen, in dem Sie folgendes Kommando verwenden:

[root@fedora grub]# od -h stage1


Für die Stage1,5 wird dann ein Programm ausgeführt, das mit dem verwendeten Dateisystem übereinstimmt, z. B. reiserfs_stage1_5 . Diese Datei befindet sich eben-falls im Pfad /boot/grub .


Die letzte Stufe des Bootloaders (Stage 2) befindet sich wiederum in der Datei /boot/grub/stage2 . Dieses Programm stellt das Boot-Menü für den Benutzer bereit und ist auch für das Starten des Kernels zuständig.