claim.gif
Linux Magazin Linux User Easy Linux Ubuntu User International Linux Community
Erschienen in EasyLinux 11/2004   »   Ausgabe bestellen

Grub und Lilo konfigurieren

Boot-Manager im Griff

von Andrea Müller


Was für den Desktop das Startmenü, ist beim Systemstart der Boot-Manager. Allerdings müssen Sie sich dort für ein System entscheiden. Wir erklären, wie Sie Grub und Lilo optimal an Ihre Wünsche anpassen.

Linux oder Windows XP oder vielleicht doch lieber Windows 2000? Das entscheiden Sie direkt nach dem Einschalten des Computers im Boot-Manager. Haben Sie eine Linux-Standardinstallation gemacht, hat der Installer einen Betriebssystemstarter in den MBR (Master Boot Record) der Festplatte geschrieben. Eine bestehende Windows-Installation finden Sie ebenso im Auswahlmenü wie die neu aufgespielte Linux-Distribution. Mit den Pfeiltasten markieren Sie ein System und starten es mit Druck auf [Eingabe].

Sind Sie mit den Voreinstellungen nicht zufrieden, geht die Sucherei los. Man muss wissen, welcher Boot-Manager installiert ist und wie man ihn konfiguriert. Fedora Core 2 und SuSE Linux installieren den fortschrittlichen Grub (GRand Unified Bootloader), Mandrake Linux setzt auf den bewährten Klassiker Lilo (Linux Loader). Im Gegensatz zu Lilo gilt Grub als einfacher. Diesen Ruf verdankt er unter anderem der eingebauten Dateisystemunterstützung. Er kennt die Linux-Dateisysteme ext2, ext3, ReiserFS, JFS und XFS -- selbst die FAT-Partitionen von Windows sind kein Problem für ihn. Lilo greift nicht auf Dateisysteme zu, sondern merkt sich den physikalischen Speicherort des Kernels auf der Platte. Installieren Sie ein Kernel-Update, reicht es nicht aus, die Lilo-Konfiguration anzupassen, sondern Sie müssen Lilo neu installieren.

Diese graue Theorie ist für den Anwender kaum noch wichtig: Der Boot-Manager landet mit den richtigen Einstellungen auf der Festplatte und oft gibt es sogar ein grafisches Frontend zur Konfiguration. Eine Ausnahme ist Fedora Core 2, wo es gilt, die Einstellungsdatei mit einem Text-Editor anzupassen. Wir verraten, wie Sie unter den einzelnen Distributionen das Verhalten des Boot-Managers modifizieren und sogar ein weiteres Linux-System in die Auswahl integrieren. Damit Sie Ihr System auch dann noch starten können, wenn Ihnen dabei ein Fehler unterläuft, erstellen Sie vor den Anpassungen eine Grub-Startdiskette. Wie das geht, erklären wir im Artikel Retter in der Not in dieser Ausgabe.

Schnellstart

Mindestens acht Sekunden Wartezeit richten die Distributoren ein, bis der Boot-Manager das Standardsystem startet. So lange wird wohl niemand darüber brüten, ob er lieber mit Linux oder doch mit Windows arbeiten will. Mit wenigen Schritten verringern Sie die Wartezeit.

Unter SuSE Linux erledigen Sie das mit YaST. Starten Sie das Programm über System / YaST des K-Menüs und authentifizieren Sie sich als Administrator. Dort ist das Modul System / Konfiguration des Bootloaders für den Systemstart verantwortlich. Im Übersichtsfenster scrollen Sie herunter bis zum Eintrag timeout (Abbildung 1). Der Wert dahinter steht standardmäßig auf acht Sekunden. Doppelklicken Sie diese Zeile und ändern Sie die Zahl in der folgenden Dialogbox, etwa auf 4, um die Wartezeit zu halbieren. Zurück in der Übersicht speichert ein Klick auf Beenden die Änderung.

Abb. 1: Hinter "timeout" steht die Wartezeit von Grub unter SuSE Linux.

Mandrake-Linux-Nutzer sind im Kontrollzentrum an der richtigen Stelle. Rufen Sie es über Einstellungen / Configure your computer auf und geben Sie im folgenden Dialog das Root-Passwort ein. Wählen Sie in drakconf Systemstart. Den Boot-Manager konfigurieren Sie in der rechten Fensterhälfte unter DrakBoot .... Klicken Sie dort auf Konfigurieren und geben Sie hinter Wartezeit vor dem Start des Standard-Betriebssystems die gewünschte Zeit in Sekunden ein (Abbildung 1). Die Ok-Schaltfläche bringt Sie zu der Übersicht der zu startenden Betriebssysteme. Ändern Sie dort nichts, sondern klicken Sie erneut auf Ok, um den Assistenten zu beenden.

Abb. 2: Mit dieser Einstellung dauert es nur drei statt 10 Sekunden, bis Lilo automatisch bootet.

Das Werkzeug, um unter Fedora Core 2 den Systemstart zu konfigurieren, ist ein Text-Editor. Die Grub-Konfigurationsdatei heißt menu.lst und liegt im Ordner /boot/grub. Öffnen Sie über [Alt-F2] ein Schnellstartfenster und geben Sie

kdesu kwrite /boot/grub/menu.lst

ein, um Sie als Administrator zu öffnen. Wie lange sich Grub bis zum Start des Standardsystems Zeit lässt, steht in der mit timeout beginnenden Zeile ziemlich am Anfang der Datei. Der Eintrag dahinter legt die Wartezeit in Sekunden fest. Markieren Sie ihn und tragen Sie stattdessen den gewünschten Wert ein. Ein guter Kompromiss, bei dem man genug Zeit für die Auswahl hat und der Start trotzdem angenehm schnell geht, ist 3. Die passende Zeile in der menu.lst sieht für unser Beispiel so aus:

timeout 3

Speichern Sie die menu.lst über das Disketten-Icon und schließen Sie KWrite. Schon beim nächsten Booten zeigt Grub sein Auswahlmenü nur für drei Sekunden an.

Standardsystem einstellen

Bei der Installation gibt sich Linux weltoffen und integriert ein eventuell vorhandenes Windows in den Boot-Manager. Allerdings nicht als Standardsystem, das nach der voreingestellten Wartezeit automatisch bootet. Diesen Platz schustern die Distributionen Linux zu. Benötigen Sie als Linux-Einsteiger zu Beginn dennoch öfters Windows, ändern Sie die Vorgabe mit wenigen Mausklicks.

Bei SuSE Linux starten Sie über System / YaST / System / Konfiguration des Bootloaders das richtige Modul. Klicken Sie in der Übersicht doppelt auf Standardabschnitt und markieren Sie den Eintrag Windows. Mit der Schaltfläche Als Standard festlegen ändern Sie die Vorgabe von YaST (Abbildung 3). Klicken Sie auf OK und in der Übersicht auf Beenden, damit YaST die Konfigurationsdatei von Grub aktualisiert.

Abb. 3: Das System mit dem Häkchen in der ersten Spalte bootet Grub nach 10 Sekunden automatisch.

Unter Mandrake Linux nehmen Sie die Einstellungen im Kontrollzentrum vor. Starten Sie es über Einstellungen / Configure your computer im K-Menü und authentifizieren Sie sich als Systemverwalter Root. Markieren Sie in der linken Fensterhälfte Systemstart und rufen Sie dort DrakBoot ... auf. Nach einem Klick auf Konfigurieren, klicken Sie im Einrichtungsdialog auf OK, ohne etwas zu ändern. In der folgenden Übersicht aller vorhandene Systeme doppelklicken Sie auf den Eintrag Windows. Setzen Sie dort ein Häkchen vor Standard (Abbildung 4) und schließen Sie den Dialog mit dem OK-Button. In der Übersicht steht hinter Windows nun ein Sternchen. Bestätigen Sie die Änderung mit Klick auf OK. Treffen Sie beim nächsten Booten keine eigene Auswahl, startet nach der voreingestellten Wartezeit Windows.

Abb. 4: Mit "drakboot" machen Sie Windows wieder zum Standardsystem.

Fedora-Nutzer ändern das Standardsystem noch schneller -- sie müssen nur ein Zeichen der Grub-Einstellungsdatei ändern. Geben Sie in ein mit [Alt-F2] geöffnetes Schnellstartfenster

kdesu kwrite /boot/grub/menu.lst

ein. Der Befehl startet den KDE-Editor KWrite gleich mit der richtigen Datei. Das Standardsystem legt die mit default beginnenden Zeile fest. Normalerweise steht dort

default 0

Die 0 bedeutet, dass das erste in der menu.lst aufgeführte System standardmäßig bootet, wenn Sie nichts anderes auswählen. Im Unterschied zu anderen Programmen fängt Grub nicht bei 1, sondern bei 0 zu zählen an. Nach einer Fedora-Core-2-Standardinstallation auf einem Rechner mit vorinstalliertem Windows, gibt es genau zwei Einträge im Boot-Manager: Linux und Windows. Das System aus Redmond steht als zweites in der menu.lst, wird nach der Grub-Zählweise also mit 1 angesprochen. Ändern Sie daher die 0 hinter default in eine 1 (Abbildung 5):

default 1

Sichern Sie die Änderung über Datei / Speichern. Schon beim nächsten Neustart bootet Windows, wenn Sie kein anderes System mit den Pfeiltasten wählen. Selbst wenn Sie sich in der menu.lst verschrieben haben, also dort etwa default 11 steht, ist das nicht weiter schlimm. Bei einem ungültigen Wert hinter default betrachtet Grub den zuerst in der menu.lst stehenden Eintrag als Standardsystem.

Abb. 5: Der Wert hinter "default" bestimmt das Standardsystem im Boot-Manager von Fedora Core 2.

Linux im Doppelpack

Immer öfter erreichen die Redaktion Fragen, ob es auch möglich ist, mehrere Distributionen auf eine Festplatte zu installieren und wie man die Systeme dann bootet. Da es nach objektiven Kriterien keine "beste Distribution" gibt, ist es auch für Einsteiger sinnvoll, in mehrere Linux-Varianten hineinzuschnuppern. Welche einem am besten gefällt ist oft eine Geschmacksfrage; manchmal unterstützt auch eine andere Distribution die eigene Hardware besser. Zwei Linux-Distributionen auf einem Computer sind kein Problem, nicht einmal wenn noch eine Windows mit im Boot ist. Um das zweite Linux auch booten zu können, gilt es, ein wenig vorauszuplanen.

Boot-Manager des zweiten Linux installieren

Standardmäßig würde das neue Linux den Boot-Manager in den MBR schreiben und sich selbst und Windows in das Auswahlmenü eintragen. An die vorher installierte Distribution kommen Sie dann nicht mehr so einfach heran. Um das zu verhindern, verbieten Sie dem Zweit-Linux seinen Bootloader in den MBR zu installieren und weisen es an, ihn stattdessen in den Boot-Sektor der Root-Partition zu schreiben. So macht es auch der NT-Loader von Windows XP: er sitzt nicht im MBR, sondern im Boot-Sektor der Partition, auf der die XP-Startdateien liegen.

Das so eingespielte Zweitsystem starten Sie danach mit dem Systemstarter der ersten Linux-Instllation. Der im MBR installierte Boot-Manager startet den zweiten Boot-Manager, der im Boot-Sektor der zweiten Linux-Partition liegt. Das Verfahren nennt sich "Chainloading" und hat tatsächlich etwas von einer Kettenraktion. Damit es reibungslos klappt, muss erst einmal der Boot-Manager des zweiten Linux-Systems in den Bootsektor der Root-Partition. Wir beschreiben für alle von uns unterstützten Distributionen, wie Sie dabei vorgehen. Wichtig ist, dass Sie sich bei der Installation den Gerätenamen notieren, mit dem Linux seine Root-Partition anspricht. Sie sehen ihn entweder im Übersichtsbildschirm oder während der Partitionierung. Die Partion mit dem Mount-Punkt / ist die richtige. Die ersten drei primären Partitionen der ersten Festlatte heißen /dev/hda1, /dev/hda2 und /dev/hda3. Die Nummerierung der Laufwerke in der erweiterten Partition der ersten Platte beginnt mit /dev/hda5 -- danach zählt Linux einfach weiter hoch (/dev/hda6, /dev/hda7 usw.). Analog dazu heißt die zweite Festplatte am ersten Controller /dev/hdb. Die Partitionsnummern folgen demselben Schema wie bei der ersten Festplatte.

Unter SuSE Linux klicken Sie in den Installationseinstellungen auf Systemstart. Im nächsten Bildschirm doppelklicken Sie Ort des Bootloaders und kreuzen die Option Bootsektor der Boot-Partition /dev/hdxx an. Anstelle der beiden x steht dort ein Buchstabe und eine Zahl, etwa /dev/hda7. Das ist übrigens derselbe Gerätename, den Sie später brauchen, um das neue Linux in den vorhandenen Boot-Manager zu integrieren. Klicken Sie auf OK und verlassen Sie die Boot-Manager-Konfiguration.

Bei einer Mandrake-Linux-Installation konfigurieren Sie Lilo direkt nachdem Sie einen normalen Nutzer angelegt haben. Wählen Sie aus dem Dropdown-Menü hinter Boot-Gerät die Root-Partition des gerade installierten Systems aus. Klicken Sie danach auf Weiter, damit Mandrake Linux Lilo installiert.

Fedora Core 2 macht es Ihnen ebenso leicht: Wenn es während der Installation an das Einrichten des Systemstarters geht, kreuzen Sie Erweiterte Bootloader-Optionen konfigurieren an und klicken auf Weiter. Unter Bootloader-Record installieren auf aktivieren Sie /dev/hdxx Erster Sektor der Bootpartition. Bei Ihnen stehen dort anstelle der beiden x ein Buchstabe und eine Nummer, z. B. /dev/hda7. Das ist auch der Gerätename, den Sie sich merken müssen. Sie brauchen ihn später, um dieses Linux in den Boot-Manager des schon vorhandenen Systems zu integrieren.

Zweitsystem einbinden

Haben Sie ein Zweitsystem mit dem Bootloader im Boot-Sektor der Root-Partition installiert, ist es ein Leichtes, es in Grub oder Lilo des bereits vorhandenen Linux einzubinden. Wie Sie dabei vorgehen, hängt wieder einmal von der Distribution ab.

Unter SuSE Linux gibt es ein passendes YaST-Modul für diese Aufgabe.

  1. Starten Sie YaST über das K-Menü. Unter System / Konfiguration des Bootloaders sind Sie genau richtig. Wählen Sie dort Verfügbare Abschnitte per Doppelklick aus.
  1. Markieren Sie den Eintrag Windows oder Diskette und klicken Sie auf Hinzufügen. Die Frage von YaST, ob er den bestehenden Abschnitt klonen soll, beantworten Sie mit Ja. So müssen Sie nur sehr wenig anpassen.
  1. Doppelklicken Sie auf root. Im Auswahlfeld müssen Sie den Namen der zweiten Linux-Partition in Grub-Notation eingeben. Da Grub bei 0 zu Zählen anfängt, ist die erste primäre Partition der ersten Festplatte (hd0,0). Die erste Partition in der erweiterten Partition, die Linux als /dev/hda5 bezeichnet, heißt in Grub (hd0,4). Von dem Gerät, dass Sie sich bei der Installation gemerkt haben, ziehen Sie also einfach 1 ab. Liegt das zweite Linux auf /dev/hda7 tragen Sie hier (hd0,6) ein. Mehr über die Grub-Syntax erfahren Sie im Artikel Retter in der Not.
  1. Klicken Sie auf Ok und ändern Sie per Doppelklick noch den Name des Abschnitts. Ihn zeigt Grub im Auswahmenü an. Alle anderen Werte belassen Sie bei der Voreinstellung. Mit zweimaligem Klick auf OK speichern Sie die Änderungen.

Wer mit Mandrake Linux arbeitet, bindet das zweite Linux im Kontrollzentrum in das Lilo-Menü ein.

  1. Starten Sie das Systemverwaltungs-Tool über Einstellungen / Configure your computer und wechseln Sie zum Eintrag Systemstart / DrakBoot ....
  1. Klicken Sie auf Konfigurieren und im nächsten Fenster auf OK.
  1. Im Dialog mit der Systemübersicht wählen Sie Hinzufügen und beantworten die Frage, was für ein System Sie einbinden wollen mit Anderes Betriebssystem (Windows). Lassen Sie sich nicht von der zusätzlichen Schaltfläche Linux verwirren: Sie wollen keinen Linux-Kernel direkt starten, sondern nur den Boot-Manager des zusätzlich installierten Linux. Ob das der NT-Loader von Windows XP oder der Grub eine Linux-Systems ist, macht für Lilo keinen Unterschied.
  1. Tragen Sie hinter Identifikator einen Namen ein, den Lilo im Auswahlbildschirm anzeigen soll. Verzichten Sie dabei auf Leerstellen und Sonderzeichen. Im Ausklappmenü hinter Wurzelverzeichnis (Root) suchen Sie die Gerätedatei heraus, auf der das zweite Linux installiert ist. Haben Sie sich bei der Installation beispielsweise /dev/hda7 notiert, ist das auch hier die richtige Wahl. Mit OK fügen Sie das zweite Linux der Auswahlliste hinzu.
    5.Klicken Sie in der Übersicht erneut auf OK, damit drakboot Lilo mit der neuen Konfiguration installiert.

Unter Fedora Core 2 ist wieder einmal der Griff zum Text-Editor Pflicht.

  1. Öffnen Sie die Grub-Konfiguration mit dem Befehl kdesu kwrite /boot/grub/menu.lst
  1. Gehen Sie ganz ans Ende der Datei und fügen Sie einen neuen Abschnitt mit diesem Aufbau ein.
    title Zweitlinux
    root (hdx,x)
    chainloader +1
  1. Hinter title kommt anstelle von Zweitlinux der Name, den Sie im Auswahlmenü des Boot-Managers lesen wollen.
  1. Die zweite Zeile sagt Grub, auf welcher Partition der zweite Boot-Manager liegt. Grub benennt Festplatten nicht wie Linux, sondern in der Form (hdx,x), wobei statt der beiden x jeweils eine Zahl stehen muss. Grub fängt bei 0 an zu zählen, die erste Festplatte ist also (hd0). Die erste Partition dieser Platte ist (hd0,0) -- Linux spricht Sie als /dev/hda1 an und oft ist es die Windows-Partition eines Rechners. Die erste Partition in der der erweiterten Partition heißt in Grub-Notation (hd0,4) (/dev/hda5 unter Linux). Reduzieren Sie einfach die Zahl der Linux-Gerätenummer um 1: dann haben Sie die richtige Zahl für Grub. Liegt das zweite Linux etwa auf /dev/hda8, tragen Sie root (hd0,7) in die menu.lst ein. Selbst, wenn Sie sich irren, ist das nicht schlimm -- die anderen dort konfigurierten Systeme booten auf jeden Fall, solange Sie an deren Einträgen nichts ändern.
  1. Die dritte Zeile muss chainloader +1 lauten. Sie sagt Grub, dass er einfach nur den Boot-Code im Boot-Sektor der zuvor festgelegten Partition ausführen soll.
  1. Speichern Sie die menu.lst und schließen Sie kwrite.

Unabhängig davon, welche Distributionen Sie eingespielt haben, läuft der Start des zweiten Linux so ab: Wählen Sie im Boot-Manager den neu erzeugten Eintrag und drücken Sie [Eingabe]. Danach meldet sich der Systemstarter des Zweitlinux und startet das System nach der voreingestellten Wartezeit automatisch. Gerade bei solchen in Kette geschalteten Boot-Managern bietet es sich an, die Wartezeit beim zweiten auf einen niedrigeren Wert herabzusetzen. (amü)

Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.

Druckerfreundliche Version | Feedback zu dieser Seite | Datenschutz | © 2012 Linux New Media AG | Last modified: 2007-01-25 17:25

[Linux-Magazin] [LinuxUser] [Linux-Community] [Admin-Magazin] [Ubuntu User] [Smart Developer] [Linux Events] [Linux Magazine] [Ubuntu User] [Admin Magazine] [Smart Developer] [Linux Magazine Poland] [Linux Community Poland] [Linux Magazine Brasil] [Linux Magazine Spain] [Linux Technical Review]