10.5. Den neuen Kern installieren, den Betriebssystemstarter aktualisieren

Nun müssen Sie den Kern nur noch installieren. Sie sollten eine gewisse Disziplin bei der Namensgebung einhalten. Wenn Sie also beispielsweise einen Kern der Version 2.2.17 installieren wollen, lauten die Befehle wie folgt:

$ make install

Jetzt müssen Sie aber noch den Linux-Starter konfigurieren. Sie haben in Ihrer Linux-Mandrake-Distribution zwei Möglichkeiten: grub und LILO, wobei allerdings grub voreingestellt wird.

10.5.1. grub aktualisieren

Editieren Sie die Datei /boot/grub/menu.lst. Bewahren Sie sich immer die Möglichkeit Ihren momentan laufenden Kern starten zu können. Es folgt eine typische Datei /boot/grub/menu.lst nach der Installation von Linux-Mandrake und vor irgendwelchen Veränderungen.

timeout 5
color black/cyan yellow/cyan
i18n (hd0,4)/boot/grub/messages
keytable (hd0,4)/boot/de-latin1.klt
default 0

title linux
kernel (hd0,4)/boot/vmlinuz root=/dev/hda5  

title failsafe
kernel (hd0,4)/boot/vmlinuz root=/dev/hda5  failsafe 

title Windows
root (hd0,0)
makeactive
chainloader  +1 

title floppy
root (fd0)
chainloader +1

Wie Sie sehen, besteht diese Datei aus zwei Blöcken: dem Kopf mit allgemeinen Optionen (die ersten fünf Zeilen) und den Einträgen, die jeweils zu einem Linux-Kern oder einem sonstigem Betriebssystem gehören. timeout 5 setzt die Zeit, die Sie zur Auswahl eines Betriebssystems haben auf fünf Sekunden fest. Nach Ablauf dieser Zeit wird das voreingestellte geladen. Dieses wird mit der Zeile default 0 festgelegt (hier wird also der erste Eintrag voreingestellt). Die Zeile color setzt die Farben des Menüs, die Zeile i18n wo die Willkom­mens-Meldung zu finden ist (hier: auf der vierten Partition der ersten Festplatte). Die Option keytable (hd0,4)/boot/de-latin1.klt sagt grub welche Tastatur-Belegung verwendet werden soll.

Nun zum Eintrags-Abschnitt. Wie Sie sehen, haben wir vier verschiedene Einträge: linux, failsafe, windows und floppy.

Anmerkung

In Abhängigkeit zur Sicherheits-Ebene, die Sie ein­gestellt haben, sind eventuell einige der oben beschriebenen Einträge in Ihrer Datei nicht vorhanden.

Aber zurück zum eigentlich Thema. Wir wollen nun einen weiteren Eintrag mit dem neuen Kern hinzufügen. In diesem Beispiel werden wir ihn vor alle anderen Einträge setzen, Sie können ihn aber auch an einer anderen Stelle eintragen.

title linux-experimental
kernel (hd0,4)/boot/vmlinuz-2.2.17 root=/dev/hda5  

Vergessen Sie nicht die Datei nach Ihren Anforderungen anzupassen. Beispielsweise muss Ihre Verzeichnisbaum-Wurzel ja nicht auf /dev/hda5 zu finden sein. Nachdem Sie die Datei gespeichert haben, können Sie ihr System neu starten und mit Ihrem nagelneuen Kern glücklich werden.

Doch halt! Haben Sie vielleicht Ihren Kern mit Framebuffer-Unterstüt­zung kompiliert? Dann wollen Sie diese doch wahrscheinlich auch nutzen. Fügen Sie also eine Anweisung an den Kern hinzu, aus der hervorgeht, in welcher Auflösung er starten soll. Die Liste aller möglichen Modi finden Sie in /usr/src/linux/Documentation/fb/vesafb.txt oder in den Ihrer Konfiguration entsprechenden Dateien. Für den Modus 800x600 und 32 Bit[1] geben Sie also folgenden Befehl an:
vga=0x315
und der Eintrag sieht folgendermaßen aus:
title linux-experimental
kernel (hd0,4)/boot/vmlinuz-2.2.17 root=/dev/hda5 vga=0x315 

Für weitere Informationen lesen Sie bitten in den Info-Seiten zu grub nach (info grub).

10.5.2. LILO aktualisieren

Bei LILO müssen Sie die Datei /etc/lilo.conf anpassen. Eine typische lilo.conf sieht zu Anfang so aus:

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.14-19mdk
        label=linux
        root=/dev/hda1
        read-only
other=/dev/hda2
        label=dos
        table=/dev/hda

Warnung

Dieses Beispiel nimmt an, dass Sie LILO verwenden. Wenn Sie den System Commander verwenden wird die ,,boot=``-Zeile anders lauten und die Datei wird keinen Abschnitt namens other haben.

lilo.conf besteht aus einer Hauptsektion, gefolgt von einem Abschnitt für jedes zu startende Betriebssystem. Bei der oben gezeigten Datei besteht die Hauptsektion aus folgenden Anweisungen:

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50

,,boot=`` sagt LILO, wohin er sich installieren soll. In unserem Fall ist das der MBR (Master Boot Record) der ersten IDE-Festplatte. Möchten Sie eine LILO-Diskette erstellen, ersetzen Sie /dev/hda durch /dev/fd0. prompt teilt LILO mit, beim Start die Eingabeaufforderung anzuzeigen und ,,timeout=50``, das Standardsystem nach 5 Sekunden zu starten. Wenn Sie timeout= entfernen, wartet LILO solange, bis Sie etwas eingegeben haben.

Es folgt eine linux-Sektion:

image=/boot/vmlinuz-2.2.14-19mdk
        label=linux
        root=/dev/hda1
        read-only

Eine ,,linux``-Sektion beginnt immer mit ,,image=``, gefolgt vom vollständigem Pfad zu einem gültigen Linux-Kern. Wie jede Sektion enthält sie ein ,,label=`` zur eindeutigen Identifikation. ,,root=`` legt fest, welche Partition die Verzeichnisbaum-Wurzel enthält. Dieser Eintrag kann bei Ihnen anders lauten. ,,read-only`` weist LILO an, dieses Dateisystem beim Start als schreibgeschützt einzuhängen. Diese Anweisung ist wichtig.

 

 

Es folgt die Windows-Sektion:

other=/dev/hda2
        label=dos
        table=/dev/hda

Ein Abschnitt um andere Betriebssysteme zu starten, wird eingeleitet durch das Wort ,,other=``. Das Argument bezeichnet den Bootsektor des Systems, hier den eines Windows-Systems. Um den Startsektor für dieses System zu finden, muss LILO noch wissen, wo sich die Partitionstabelle der betreffenden Festplatte befindet (,,table=``). ,,label=`` dient wiederum zur Identifikation.

Bevor Sie Ihren neuen linux-Abschnitt hinzufügen, haben Sie noch die Möglichkeit, zwei Fliegen mit einer Klappe zu schlagen :-). Sie können nämlich eine Startnachricht erstellen, die den Gebrauch von LILO erklärt:

$ cat >/boot/message <<EOF
> Willkommen, dies ist LILO (LInux LOader).
> druecken Sie die TAB Taste fuer eine Liste aller Boot-Images.
>
> Sie haben:
>
> * exp : startet Linux-Mandrake mit Ihrem neuen Kernel
> * linux : der Original Linux-Mandrake Kernel
> * dos : Windows
>
> Druecken der ENTER-Taste ohne Eingabe eines Image-Namens
> startet den ersten Eintrag der Liste, hier: exp.
> EOF
$

Um diese Nachricht beim Start anzuzeigen, fügen Sie noch folgende Anweisung hinzu:

message=/boot/message

und zwar zum Hauptabschnitt der Datei lilo.conf. Fügen Sie nun den neuen Linux-Abschnitt hinzu. Hier wird er wiederum ganz zu Anfang plaziert, Sie können dies aber ganz nach Ihrem Geschmack handhaben.

image=/boot/vmlinuz-2.2.17
        label=exp
        root=/dev/hda1
        read-only

Wenn Sie Ihren Kern mit Unterstützung für den Framebuffer kompiliert haben, richten Sie sich nach dem obigen Abschnitt. Der Unterschied besteht darin, dass die Anweisung eine eigene Zeile bekommt:

vga=0x315

Nach all diesen Änderungen, sollte Ihre lilo.conf (mit einigen zusätzlichen Kommentaren versehen, eingeleitet durch #) in etwa so aussehen:

#
# Hauptteil
#
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
# Unsere Prompt-Meldung
message=/boot/message
# Zeige den Prompt an...
prompt
# ... warte 5 Sekunden
timeout=50
#
# Unser neuer Kernel: Standard-Image
#
image=/boot/vmlinuz-2.2.17
        label=exp
        root=/dev/hda1
        read-only
# Falls der VESA Framebuffer verwendet wird:
        vga=0x315
#
# Der Original-Kernel
#
image=/boot/vmlinuz-2.2.15-19mdk
        label=linux
        root=/dev/hda1
        read-only
#
# Windows-Teil
#
other=/dev/hda2
        label=dos
        table=/dev/hda

Passen Sie diese Datei Ihrer Konfiguration an! Hier ist die Linux-Verzeichnisbaum-Wurzel auf /dev/hda1, sie kann sich aber auf Ihrem System auch woanders befinden. Das gleiche gilt für Windows. Jetzt müssen Sie LILO noch mitteilen, dass sich seine Konfigurations­datei verändert hat:

$ lilo
Added exp *
Added linux
Added dos
$

Auf diese Weise können Sie so viele Kerne kompilieren wie Sie wollen: fügen Sie einfach so viele Sektionen hinzu wie Sie benötigen. Wenn Sie möchten, können Sie Ihr System jetzt neu starten, um Ihr Gesellenstück zu testen :-)

Fußnoten

[1]

8 Bit bedeutet 28 also 256 Farben, 16 Bit 216, also 65536 und 24 bzw. 32 Bit jeweils 224, also mehr als 16 Millionen Farben.


Tux on Star from MandrakeSoft Linux ist ein eingetragenes Warenzeichen von Linus Torvalds. Alle anderen Warenzeichen und Copyrights sind das Eigentum ihrer Inhaber.
Sofern nichts anderes Angaben ist, unterliegen die Inhalte der Seiten sowie alle Bilder dem Copyright von MandrakeSoft S.A. und MandrakeSoft Inc. 2000.
http://www.linux-mandrake.com/