|
Top Fünf Open Source-Pakete für Systemadministratoren
Seiten: 1, 2
Einige GRUB-Rezepte
Wir sind nun so weit, uns die GRUB-Konfigurationsdatei grub.conf anzusehen. Hier einige Beispielzeilen aus dem ersten (allgemeinen) Abschnitt:
# Allgemeiner Abschnitt
# Hübsches Bild als Menühintergrund.
splashimage (hd0,0)/grub/splash.xpm.gz
# Standard-Boot-Eintrag (Numerierung beginnt bei 0).
default 0
# Menü-Timeout in Sekunden.
timeout 30
# Verwende grub-md5-crypt zur Kodierung des Paßworts.
password -md5 xxxxxxx
Diese Zeilen legen das Hintergrundbild für das Boot-Menü, das Menü-Timeout, den Standard-Boot-Eintrag und das Boot-Paßwort fest.
Der Rest der Datei legt die einzelnen Elemente des Boot-Menüs fest. Hier zwei Beispiele, die das Linux-Betriebssystem auf der ersten Partition der ersten Festplatte (aber mit unterschiedlichen Kerneln) booten:
title Linux
root (hd0,0)
kernel /vmlinuz ro root=/dev/hda2
initrd /initrd.img
title Test-Linux
root (hd0,0)
kernel /vmlinuz-test ro root=/dev/hda3
initrd /initrd.img-test
Die title-Zeile legt den Menütext fest. Die root-Zeilen geben die Partition an, auf der der Boot-Loader zu finden ist. Alle Referenzen auf Verzeichnisse werden als relativ zur Wurzel dieser Partition betrachtet. Die vmlinuz-Dateien der kernel-Zeilen liegen also im root-Verzeichnis dieser Partition.
Die kernel-Zeilen legen für jeden Eintrag den Pfad auf den Linux-Kernel fest und übergeben gleichzeitig alle gewünschten Parameter. In unserem Fall wird eine separate /boot-Partition verwendet, deshalb wird dem Kernel der root-Parameter übergeben. Dieser Parameter teilt dem System die Lage des root-Verzeichnisses (wie /) mit. Wir erkennen also, daß die Kernel-Images aus Sicht des gebooteten Linux-Systems bei /boot/vmlinuz* liegen. In gleicher Weise legen die initrd-Zeilen den Pfad auf die Datei initrd.img fest (wenn sie verwendet wird).
Das Booten von FreeBSD ist ebenfalls einfach:
title FreeBSD
# Erste BSD-Subpartition auf Platte 1, Partition 3 verwenden
root (hd0,2,a)
kernel /boot/loader
Diese Schablone spezifiziert ebenfalls die Boot-Partition und gibt den FreeBSD-Boot-Loader der letzten Stufe an. Dies entspricht der empfohlenen Praxis (anstelle des direkten Aufrufs des FreeBSD-Kernels).
Diese Schablone definiert eine bootfähige Windows-Partition:
title Win2K
root (hd0,2)
makeactive
chainloader +1
Die Boot-Partition wird auf die übliche Art und Weise festgelegt. Der Befehl makeactive aktiviert die Partition, und der Befehl chainloader übergibt den Boot-Prozeß an den lokalen Boot-Loader (z. B. NTLDR).
Generell kann GRUB Betriebssysteme von einer beliebigen Festplatte booten. In manchen Fällen ist es allerdings einfacher, Nicht-Unix-Betriebssysteme auf der zweiten Festplatte zu booten, indem man die ersten beiden Laufwerke vertauscht. GRUB verwendet hierzu Einträge wie diesen:
map (hd0) (hd1)
map (hd1) (hd0)
GRUB besitzt außerdem das nette Feature, sich zu merken, welches Betriebssystem zuletzt gebootet wurde, und macht es beim nächsten Mal zum Standard. Um diese Fähigkeit zu aktivieren, setzen Sie den default-Eintrag (im allgemeinen Abschnitt) auf saved und fügen am Ende jeder Schablone eine savedefault-Direktive ein:
title Linux
...
savedefault
GRUB installieren
Sobald Sie eine Konfigurationsdatei angelegt haben, ist die Installation von GRUB ganz einfach. Sie erfolgt mit Hilfe des Utilities grub-install, das zum Lieferumfang des Pakets gehört. Dieses Tool besitzt die folgende allgemeine Syntax:
# grub-install [--root-directory=/verzeichnis] platte
wobei platte die Boot-Partition im GRUB-eigenen oder im lokalen Format darstellt (etwa (hd0) oder /dev/hda etc.).
Die Option --root-directory gibt die Lage einer
separaten Boot-Partition an (zum Beispiel /boot unter Linux).
Weitere Informationen zu GRUB finden Sie an folgenden Stellen:
Wenn Ihnen dieser Artikel gefallen hat und Sie einen kostenlosen ESA3-Newsletter erhalten wollen, können Sie sich unter www.aeleen.com/esa3_news.htm anmelden.
Die dritte Auflage von Essential System Administration, 3rd Edition ist im August 2002 bei O'Reilly erschienen.
Æleen Frisch
war über 20 Jahre als Systemadministrator tätig und hat dabei eine Fülle von VMS-, Unix- und Windows-Systemen verwaltet.
|