Copyright © 1995 by O'Reilly/International Thomson Verlag

Bitte denken Sie daran: Sie dürfen zwar die Online-Version ausdrucken, aber diesen Druck nicht fotokopieren oder verkaufen.

Wünschen Sie mehr Informationen zu der gedruckten Version des Buches "Linux - Wegweiser zur Installation & Konfiguration", dann klicken Sie hier.


Kapitel 4
Das System booten

Es gibt verschiedene Möglichkeiten, Linux auf Ihrem System zu booten. Die gebräuchlichsten sind das Booten von der Festplatte und mittels einer Boot-Diskette. Oft hat die Installationsprozedur bereits eine oder beide dieser Möglickeiten für Sie konfiguriert. Auf jeden Fall ist es wichtig, daß Sie verstehen, wie Sie den Boot-Vorgang selbst konfigurieren können.

Von einer Diskette booten

Im allgemeinen enthält eine »Boot-Diskette« für Linux einfach eine Kopie des Kernels (kernel image), die beim Booten des Systems in den Arbeitsspeicher geladen wird. (2)

Meistens ist die Kopie des Kernels komprimiert, wobei dieselben Algorithmen benutzt werden, mit denen auch das Komprimierungsprogramm gzip arbeitet (mehr dazu im Abschnitt » Den Kernel kompilieren «). Dadurch ist es möglich, den Kernel, der mehr als ein Megabyte groß sein kann, auf wenige Hundert Kilobytes zu reduzieren. Ein Teil des Kernel-Codes wird nicht komprimiert -- dieser Teil enthält die Routinen, die zum Entkomprimieren und Laden der Kernel-Kopie in den Speicher benötigt werden. Der Kernel bereitet sich also beim Booten selbst vor, indem er sich in den Arbeitsspeicher entpackt.

In der Kopie des Kernels ist eine Reihe von Parametern enthalten, u.a. der Gerätename, der beim Booten des Kernels als Root-Dateisystem benutzt werden soll. Ein anderer Parameter bezeichnet den Textmodus für die Systemkonsole. Alle diese Angaben können mit dem Befehl rdev geändert werden, den wir weiter unten in diesem Kapitel besprechen werden.

Nach dem Booten des Kernels versucht dieser, auf dem Gerätenamen, der in der Kernel-Kopie als Root fest einprogrammiert ist, ein Dateisystem aufzusetzen. Dieses Dateisystem wird das Root-Dateisystem sein, d.h., das Dateisystem auf / . Im Abschnitt » Mit Dateisystemen arbeiten « gehen wir genauer auf Dateisysteme ein. Im Augenblick genügt es zu wissen, daß das Kernel-Image den Gerätenamen für das Root-Dateisystem enthalten muß. Falls der Kernel auf diesen Namen kein Dateisystem aufsetzen kann, wird er aufgeben und eine »kernel panic«-Meldung anzeigen. (Eine Kernel-Panik ist ein nicht behebbarer Fehler, der vom Kernel selbst gemeldet wird. Eine Panik wird immer dann auftauchen, wenn der Kernel endgültig durcheinander geraten ist und nicht weiterarbeiten kann. Falls der Kernel z.B. einen Fehler enthält, könnte eine Panik entstehen, wenn er versucht, auf nicht vorhandenen Speicher zuzugreifen. Wir werden im Abschnitt » Die Rettung in der Not « noch genauer auf die Kernel-Panik eingehen.)

Der Root-Gerätename in der Kernel-Kopie ist der Name des Root-Dateisystems auf der Festplatte. Das bedeutet, daß der Kernel beim Booten eine Partition der Festplatte als Root-Dateisystem aufsetzt und die Kontrolle dann auf die Festplatte übergeht. Sobald der Kernel in den Speicher geladen wurde, bleibt er dort stehen -- die Boot-Floppy wird dann nicht mehr benötigt (bis zum nächsten Booten).

Viele Linux-Distributionen legen bei der Installation des Systems eine solche Boot-Diskette an. Die Boot-Floppy bietet eine einfache Methode Linux zu booten, wenn Sie nicht von der Festplatte booten möchten. (So sind z.B. die Boot-Manager von OS/2 und Windows NT nicht ganz problemlos so einzurichten, daß sie Linux starten. Im nächsten Abschnitt erfahren Sie mehr darüber.) Sobald der Kernel von der Diskette gebootet hat, können Sie das Diskettenlaufwerk für andere Zwecke benutzen.

Mit einer Kopie des Kernels können Sie Ihre eigene Boot-Floppy erstellen. Auf vielen Linux-Systemen wird der Kernel in einer Datei namens /boot/vmlinuz abgelegt. (3)

Dies ist allerdings keine allgemeingültige Regel; andere Linux-Systeme speichern den Kernel in /vmlinuz oder /vmlinux , wieder andere z.B. in /Image . (Falls Sie mehrere Kernel-Kopien haben, können Sie mittels LILO bestimmen, welcher Kernel gebootet werden soll. Lesen Sie dazu den nächsten Abschnitt.) Beachten Sie auch, daß neu installierte Linux-Systeme eventuell keine Kopie des Kernels auf die Festplatte geschrieben haben, wenn eine Boot-Floppy erstellt wurde. Sie können aber auf jeden Fall Ihren eigenen Kernel erstellen. Dies ist immer eine gute Idee -- dabei können Sie den Kernel so »anpassen«, daß nur die Treiber für die tatsächlich vorhandene Hardware eingebunden werden. Lesen Sie hierzu den Abschnitt » Den Kernel kompilieren « weiter unten in diesem Kapitel.

Los geht's. Nehmen wir an, daß eine Kopie des Kernels in der Datei /boot /vmlinuz steht. Der erste Schritt zur Erstellung einer Boot-Diskette ist, mittels rdev als Root-Gerätenamen den Namen Ihres Linux-Root-Dateisystems anzugeben. (Falls Sie den Kernel selbst erstellt haben, sollte dies schon geschehen sein, aber es kann nicht schaden, wenn Sie das mit rdev überprüfen.)

Wir haben das Anlegen des Root-Dateisystems in den Abschnitten » Laufwerke und Partitionen unter Linux « und » Linux-Partitionen anlegen « in Kapitel 2, Linux besorgen und installieren beschrieben.

Geben Sie als root den Befehl rdev -h ein, und Sie bekommen eine Online-Hilfe angezeigt. Sie werden feststellen, daß es eine ganze Reihe von Optionen gibt, mit denen Sie die Gerätedateien für Root (dabei sind wir gerade) und Swap, die Größe der RAM-Disk usw. bestimmen können. Meistens brauchen Sie sich an dieser Stelle mit den anderen Optionen nicht zu befassen.

Wenn Sie den Befehl rdev /boot/vmlinuz eingeben, wird das Root-Verzeichnis angezeigt, das im Kernel /boot/vmlinuz einprogrammiert ist:

courgette:/# rdev /boot/vmlinuz 
Root device /dev/hda1

Falls dies nicht korrekt ist und sich das Linux-Root-Dateisystem in Wirklichkeit auf /dev/hda3 befindet, sollten Sie das mit:

courgette:/# rdev /boot/vmlinuz /dev/hda3 
courgette:/#

ändern. rdev gehört zu den eher schweigsamen Befehlen -- bei der Festlegung des Root-Verzeichnisses wird keinerlei Meldung ausgegeben. Führen Sie deshalb rdev /boot/vmlinuz noch einmal aus, um den letzten Schritt zu überprüfen.

Jetzt sind Sie soweit, daß Sie die Boot-Diskette erstellen können. Nehmen Sie dazu am besten eine neue, formatierte Diskette; sie kann unter DOS oder mit fdformat unter Linux formatiert worden sein. Mit fdformat werden auch die Informationen zu Spuren und Sektoren auf der Diskette abgelegt, so daß das System die Kapazität der Floppy selbst erkennt. (Im Abschnitt » Mit Dateisystemen arbeiten « weiter unten finden Sie mehr zum Gebrauch von Floppies.)

Mit dem Befehl dd können Sie das Kernel-Image auf eine Floppy kopieren, um eine Boot-Diskette zu erstellen:

courgette:/# dd if=/boot/vmlinuz of=/dev/fd0 bs=8192

Falls es Sie interessiert: Sie finden eine ausführliche Beschreibung von dd in der Man-Page. Hier nur soviel: Sie kopieren damit die Eingabedatei (Option if ) namens /boot/vmlinuz in die Ausgabedatei (Option of ) /dev/fd0 , d.h. das erste Diskettenlaufwerk. Die Blockgröße ist 8192 Bytes. Natürlich ließe sich das auch mit dem Prolo-Befehl cp erledigen, aber wir UNIX-Systemverwalter benutzen lieber kryptische Befehle, auch um relativ einfache Dinge durchzuführen. Das ist der Unterschied zwischen uns und Normalsterblichen!

Damit sollte Ihre Boot-Diskette fertig sein. Fahren Sie das System herunter (mit shutdown; lesen Sie dazu den Abschnitt » Das System herunterfahren « ) und booten Sie mit dieser Diskette. Wenn alles klappt, wird Ihr Linux-System starten wie immer. Vielleicht ist es eine gute Idee, eine zweite Boot-Floppy als Reserve anzulegen. Im Abschnitt » Die Rettung in der Not « beschreiben wir, wie Sie sich mit Hilfe einer Boot-Diskette aus einem Systemabsturz retten können.

LILO benutzen

LILO (der Linux Loader ) ist ein Boot-Manager, der beliebige Betriebssysteme einschließlich Linux booten kann, die auf Ihrem System installiert sind. Es gibt Dutzende von Möglichkeiten, LILO zu konfigurieren. Wir wollen hier die beiden am häufigsten eingesetzten Methoden beschreiben -- die Installation des LILO im Master-Boot-Record Ihrer Festplatte sowie LILO als sekundärer Boot-Loader nur für Linux.

LILO ist die übliche Methode, Linux von der Festplatte zu booten. (Mit »booten von der Festplatte« meinen wir, daß der Kernel von vornherein auf der Festplatte steht und keine Boot-Floppy benötigt wird. Erinnern Sie sich aber daran, daß auch beim Booten von einer Diskette die Kontrolle an die Festplatte abgegeben wird, sobald der Kernel in den Speicher geladen wurde.) Wenn LILO im Master-Boot-Record (MBR) Ihrer Festplatte steht, ist dies der erste Programmcode, der beim Laden der Festplatte ausgeführt wird. LILO ist in der Lage, anschließend andere Betriebssysteme zu booten -- etwa Linux oder DOS. Dabei können Sie während des Boot-Vorgangs entscheiden, welches Betriebssystem geladen werden soll.

Allerdings benutzen sowohl OS/2 als auch Windows NT ihren eigenen Boot-Manager, der den MBR belegt. Wenn Sie mit einem dieser Systeme arbeiten, werden Sie LILO als »sekundären« Boot-Loader speziell für Linux installieren müssen, falls Linux von der Festplatte gestartet werden soll. In diesem Fall wird LILO nur im Boot-Record der Linux-Root-Partition installiert und die Boot-Manager von OS/2 oder NT rufen dann LILO auf, wenn Sie Linux booten möchten.

Wir werden allerdings noch feststellen, daß die Boot-Manager von OS/2 und NT sich irgendwie unkooperativ verhalten, wenn sie LILO aufrufen sollen. Dies wäre deshalb eine ungünstige Systemkonfiguration. Wenn Sie unbedingt einen dieser beiden Boot-Manager benutzen müssen, könnte es einfacher sein, Linux von einer Diskette zu starten. Lesen Sie weiter.

Bevor wir weitermachen, sollten wir noch darauf hinweisen, daß einige Linux-Distributionen beim Einspielen der Software auch LILO installieren und konfigurieren. Manchmal ist es allerdings günstiger, LILO selbst zu konfigurieren, damit wirklich alles korrekt eingerichtet wird.

Die Datei /etc/lilo.conf

Der erste Schritt zur Einrichtung von LILO ist das Erstellen der Konfigurationsdatei, die oft /etc/lilo.conf heißt. (Auf manchen Systemen kann das auch /boot /lilo.conf oder /etc/lilo/config sein.)

Wir werden uns eine beispielhafte lilo.conf -Datei Zeile für Zeile ansehen. Sie können diese Datei als Grundlage für Ihre eigene lilo.conf benutzen und sie an Ihr System anpassen.

Im ersten Teil der Datei werden einige grundlegende Parameter gesetzt.

boot = /dev/hda
compact
install = /boot/boot.b
map = /boot/map

Die boot-Zeile gibt den Gerätenamen an, in dessen Boot-Record LILO sich selbst installieren soll. In diesem Beispiel wollen wir LILO im Master-Boot-Record von /dev/hda einrichten, der ersten Nicht-SCSI-Festplatte. Falls Sie von einer SCSI-Platte booten, geben Sie statt dessen einen Gerätenamen wie etwa /dev/sda an. Wenn Sie den Namen einer Partition (z.B. /dev/hda2 ) statt des Namens einer Festplatte angeben, wird LILO als sekundärer Boot-Loader in der angegebenen Partition installiert. Wir werden das etwas weiter unten noch genauer besprechen.

Die Zeile compact läßt LILO einige Optimierungen durchführen; geben Sie diese Zeile immer an, es sei denn, daß Sie ernsthaft mit der Konfiguration von LILO experimentieren wollen. Ebenso sollten Sie auf jeden Fall die install- und map-Zeilen angeben. install bezeichnet die Datei, die den Boot-Sektor enthält, der im MBR benutzt werden soll. map gibt die »Map-Datei« an, die LILO bei der Installation erstellt. Diese Dateien sollten im Verzeichnis /boot stehen, obwohl sie auf einigen Systemen auch unter /etc/lilo zu finden sind. Die Datei /boot/map wird erst bei der Installation von LILO angelegt.

Anschließend fügen wir für jedes Betriebssystem, das LILO booten soll, noch eine »Strophe« in /etc/lilo.conf ein. Eine Linux-Strophe könnte z.B. so aussehen:

# Strophe für Linux mit Root-Partition auf /dev/hda2.
image = /boot/vmlinuz   # Lage des Kernels
   label = linux        # Name des Betriebssystems (für
LILO-Boot-Menü)
   root = /dev/hda2     # Lage der Root-Partition
   vga = ask            # VGA-Text-Modus beim Booten abfragen

Die image-Zeile gibt den Namen der Kernel-Kopie an. Untergeordnete Felder sind z.B. label, das diese Strophe mit einem Namen versieht, der auch im Boot-Menü von LILO erscheint (mehr dazu weiter unten); root benennt die Root-Partition von Linux; und vga bezeichnet den zu wählenden Textmodus für die Systemkonsole.

Gültige Einträge in der vga-Zeile sind normal (für normale 80x25-Bildschirme), extended (für erweiterte Textmodi wie 132x44 oder 132x60), ask (bewirkt, daß der Textmodus beim Booten abgefragt wird) oder ein Intergerwert (1, 2 usw.). Dieser Wert entspricht der Nummer des Modus, den Sie bei der Option ask auswählen. Es hängt von Ihrer Grafikkarte ab, welche Textmodi vorhanden sind; mit vga = ask erhalten Sie eine Liste der Optionen.

Falls Sie mehrere Linux-Kernel haben, die Sie booten möchten -- z.B. zum Debuggen des Kernels -- können Sie für jeden Kernel eine image-Strophe einfügen. Nur der Unterpunkt label muß vorhanden sein. Wenn Sie root oder vga nicht angeben, werden die Voreinstellungen benutzt, die mittels rdev in der Kernel-Kopie selbst abgelegt wurden. Falls Sie root oder vga angeben, haben diese Angaben Vorrang vor denen, die Sie eventuell mit rdev eingestellt haben. Wenn Sie Linux unter Benutzung von LILO starten, besteht deshalb keine Notwendigkeit mehr, rdev zu benutzen; die LILO-Konfiguration setzt diese Parameter für Sie.

Eine Strophe für das Booten von MS-DOS würde so aussehen:

# Strophe für MS-DOS-Partition auf /dev/hda1.
other = /dev/hda1    # Lage der Partition
   table = /dev/hda  # Lage der Partitionstabelle für /dev/hda2
   label = msdos     # Name des Betriebssystems (für das Boot-Menü)

Mit einer ähnlichen Strophe können Sie auch OS/2 von LILO aus booten (die label-Zeile muß natürlich anders lauten).

Wenn Sie ein DOS booten wollen, das auf der zweiten Festplatte steht, sollten Sie die Zeile:

   loader = /boot/any_d.b

im Punkt other der DOS-Strophe einfügen. Bei OS/2-Partitionen auf der zweiten Festplatte geben Sie ein:

   loader = /boot/os2_d.b

Es gibt viele weitere Optionen zur Konfiguration von LILO. Die LILO-Distribution selbst (gibt es bei den meisten Linux-FTP-Servern und -Distributionen) enthält eine ausführliche Beschreibung aller Optionen. Die hier besprochenen Hinweise sollten allerdings für die meisten Systeme ausreichen.

Nachdem Sie Ihre /etc/lilo.conf erstellt haben, können Sie als root den Befehl:

/sbin/lilo

ausführen lassen. Danach sollte etwa folgende Information angezeigt werden:

courgette:/# /sbin/lilo 
Added linux
Added msdos
courgette:/#

Mit dem Schalter -v gibt lilo weitere Informationen aus, die hilfreich sind, wenn etwas nicht geklappt hat. Die Option -C erlaubt die Benutzung einer anderen Konfigurationsdatei als /etc/lilo.conf .

Nach diesem Schritt sind Sie soweit, daß Sie das System herunterfahren können (lesen Sie ggf. den Abschnitt » Das System herunterfahren « zu diesem Thema), um es anschließend neu zu starten und weiter zu erforschen. Als Voreinstellung werden die Befehle in der Strophe zum ersten Betriebssystem in /etc/lilo.conf ausgeführt. Wenn Sie einen anderen Kernel oder ein anderes Betriebssystem aus /etc/lilo.conf auswählen möchten, drücken Sie die SHIFT-, ALT- oder CTRL-Taste, während das System bootet. Das sollte den LILO-Boot-Prompt auf den Bildschirm bringen:

boot:

An dieser Stelle erhalten Sie durch Drücken von TAB eine Liste der vorhandenen Boot-Optionen:

boot: tab-taste 
linux msdos

Dies sind die Namen, die in den label-Zeilen in /etc/lilo.conf angegeben wurden. Geben Sie den Namen des entsprechenden Labels ein, und dieses Betriebssystem wird starten. In unserem Beispiel würde nach der Eingabe von msdos von /dev /hda1 aus MS-DOS gebootet -- wie wir es in der Datei lilo.conf vorgesehen haben.

LILO als sekundärer Boot-Loader

Wenn Sie den Boot-Manager von OS/2 oder NT benutzen oder nicht möchten, daß LILO den Master-Boot-Record Ihrer Festplatte belegt, können Sie LILO als sekundären Boot-Loader konfigurieren, der nur im Boot-Record Ihrer Linux-Partition steht.

Dazu ändern Sie einfach die Zeile boot = ... in /etc/lilo.conf so, daß sie den Namen der Linux-Root-Partition enthält. Ein Beispiel:

boot = /dev/hda2

installiert LILO im Boot-Record von /dev/hda2 , so daß nur Linux gebootet wird. Beachten Sie, daß dies nur in primären Partitionen (also nicht in erweiterten oder logischen Partitionen) funktioniert.

Damit Linux auf diesem Wege gebootet werden kann, sollte seine Root-Partition in der Partitionstabelle als »active« markiert werden. Das können Sie mit fdisk unter Linux oder DOS erledigen. Beim Booten des Systems wird das BIOS den Boot-Record der »aktiven« Partition lesen und Linux starten.

Wenn Sie den Boot-Manager von OS/2 oder Windows NT benutzen, sollten Sie LILO auf diese Weise installieren. Teilen Sie dann dem Boot-Manager mit, daß er ein weiteres Betriebssystem aus dieser Partition der Festplatte heraus booten kann. Es hängt vom betreffenden Boot-Manager ab, wie Sie ihm das mitteilen; lesen Sie die Details dazu in der Dokumentation nach.

Obwohl LILO mit dem Boot-Manager von OS/2 zusammenarbeitet, ist es manchmal schwierig, alles korrekt einzurichten. Das Problem liegt darin, daß der Boot-Manager von OS/2 die Partitionen nicht erkennt, die Sie mit dem fdisk von Linux angelegt haben. Der Ausweg aus dieser Situation ist das Einrichten der Linux-Partitionen mit dem fdisk von OS/2 mit anschließender Formatierung z.B. als Partition mit einer DOS-FAT.

OS/2 wird diese Partitionen erkennen und Sie können anschließend mit dem fdisk von Linux die Partitionstypen Linux native und Linux swap einstellen, wie wir das im Abschnitt » Linux-Partitionen anlegen « in Kapitel 2 beschrieben haben. Anschließend können Sie Linux in diesen Partitionen installieren und dabei LILO im Boot-Record der Linux-Root-Partition unterbringen; dann wird (hoffentlich) alles funktionieren.

Warum erzählen wir Ihnen das jetzt? Weil der Boot-Manager von OS/2 nicht korrekt funktioniert, wenn es um das Booten von ihm unbekannten Betriebssystemen geht. Statt des OS/2-Boot-Managers können Sie aber auch LILO im MBR Ihrer Festplatte installieren und auf diesem Wege auch OS/2 booten. Fügen Sie dazu für OS/2 eine weitere other...-Strophe in der Datei /etc/lilo.conf ein, wie Sie es auch für MS-DOS getan haben. Eine andere Möglichkeit ist es, Linux einfach von einer Diskette zu starten -- oder, noch besser, auf OS/2 zu verzichten. Aber wir wollen nicht vom Thema abkommen.

Die Boot-Optionen festlegen

Die Wahrscheinlichkeit ist groß, daß Sie bei der Linux-Installation von einer Diskette gebootet haben und dann den inzwischen bekannten Boot-Prompt von LILO sahen.

An diesem Prompt können Sie eine Reihe von Boot-Optionen eingeben, z.B.:

hd= zylinder,köpfe,sektoren

Damit geben Sie dem System die Geometrie der Festplatte bekannt. Es kann sein, daß Sie bei jedem Booten diese Parameter angeben müssen, damit Ihre Hardware korrekt erkannt wird, wie wir das im Abschnitt » Linux booten « in Kapitel 2 beschrieben haben.

Wenn Sie LILO benutzen, um Linux von der Festplatte zu booten, können Sie diese Parameter auch in /etc/lilo.conf spezifizieren, statt Sie immer wieder am Boot-Prompt einzugeben. Fügen Sie dazu in lilo.conf im Linux-Abschnitt eine Zeile wie:

append = "hd=683,16,38"

ein. Damit bewirken Sie, daß sich das System gerade so verhält, als ob Sie hd=683,16,38 am LILO-Boot-Prompt eingegeben hätten. Sie können in einer append-Zeile mehrere Boot-Optionen angeben, etwa so:

append = "hd=683,16,38 hd=64,32,202"

In diesem Beispiel haben wie die Geometrien für die erste bzw. zweite Festplatte bekanntgegeben.

Beachten Sie, daß Sie solche Boot-Optionen nur dann angeben müssen, wenn der Kernel Ihre Hardware beim Booten nicht korrekt erkennt. Sie werden aufgrund der Erfahrungen bei der Installation von Linux bereits wissen, ob dies notwendig ist. Im allgemeinen gilt, daß eine append-Zeile in lilo.conf nur dann nötig ist, wenn Sie auch beim Booten vom Linux-Installationsmedium bereits solche Angaben machen mußten.

Es gibt noch einige weitere Boot-Optionen. Die meisten werden zur Erkennung von Hardware benötigt, die wir bereits in Kapitel 2 besprochen haben. Vielleicht finden Sie aber auch einige der folgenden Optionen ganz nützlich:

single
Das System startet im Single-User-Modus (Ein-Benutzer-Modus); die Systemkonfiguration wird übersprungen und es wird eine Root-Shell auf der Konsole gestartet. Weitere Hinweise hierzu finden Sie im Abschnitt » Die Rettung in der Not « .

root=partition
Versucht, die angegebene Partition als Linux-Root-Dateisystem aufzusetzen. Diese Option hat Vorrang vor den Einträgen in /etc/lilo.conf .

ro
Setzt das Root-Dateisystem als read-only (nur lesbar) auf. Dies geschieht in der Regel vor der Ausführung von fsck ; lesen Sie dazu den Abschnitt » Dateisysteme prüfen und reparieren « .

ramdisk=größe
Gibt die Größe der RAM-Disk in Bytes an. Hat Vorrang vor Einträgen in /etc /lilo.conf . Die meisten Benutzer brauchen sich über die Benutzung der RAM-Disk keine Gedanken zu machen, da Sie in erster Linie bei der Installation benötigt wird.

vga=modus
Bestimmt den VGA-Modus. Dies hat Vorrang vor Einträgen in /etc/lilo.conf . Gültige Modi sind normal, extended, ask oder ein Integerwert. Diese Werte entsprechen den vga = -Werten, die in lilo.conf eingetragen werden; lesen Sie den Abschnitt » Die Datei /etc/lilo.conf « weiter oben.

Diese Optionen können alle sowohl am LILO-Boot-Prompt von Hand eingegeben als auch mit der Option append in /etc/lilo.conf eingetragen werden.

LILO wird mit vollständiger Dokumentation ausgeliefert, in der alle Optionen beschrieben sind. Auf vielen Linux-Systemen findet sich diese Dokumentation in /usr/src/lilo . Falls Sie überhaupt keine Beschreibung auftreiben können, sollten Sie sich die LILO-Distribution von einem der Linux-Server holen oder Ihren Händler bitten, den Quellcode und die Dokumentation von LILO zu besorgen. Zur Dokumentation gehören ein Handbuch, in dem die Konzepte rund um LILO im Detail beschrieben werden sowie eine README -Datei mit Ausschnitten aus diesem Handbuch in Form von ASCII-Text.

LILO entfernen

Wenn Sie LILO im Master-Boot-Record installiert haben, führt der schnellste Weg zum Entfernen über den Befehl FDISK von DOS. Mit:

FDISK /MBR

starten Sie FDISK und überschreiben den MBR mit einem gültigen DOS-Boot-Record.

LILO speichert Sicherungskopien Ihres Original-Boot-Records in den Dateien /boot/boot.0300 (bei IDE-Laufwerken) und /boot/boot.0800 (bei SCSI-Laufwerken). Diese Dateien enthalten den MBR im Zustand vor der Installation von LILO. Mit dd können Sie den Boot-Record auf der Festplatte durch diese Kopie ersetzen. Der Befehl:

dd if=/boot/boot.0300 of=/dev/hda bs=446 count=1

kopiert die ersten 446 Bytes der Datei /boot/boot.0300 nach /dev/hda . Obwohl die Dateien 512 Bytes lang sind, sollten nur die ersten 446 Bytes auf den MBR zurückkopiert werden.

Seien Sie sehr vorsichtig , wenn Sie diesen Befehl ausführen lassen! Dies ist eine der Stellen, an denen das gedankenlose Eintippen von Befehlen aus einem Buch wirklich Schaden anrichten kann, wenn Sie nicht wissen, was Sie eigentlich tun. Wenden Sie diese Methode nur als letzten Ausweg an -- und nur wenn Sie sicher sind, daß /boot/boot.0300 oder /boot/boot.0800 genau den Boot-Record enthält, den Sie brauchen. Viele Linux-Distributionen enthalten unbrauchbare Versionen dieser Dateien; vielleicht ist es eine gute Idee, sie vor der Installation von LILO zu löschen.

In der Dokumentation zu LILO finden Sie weitere Hinweise zum Entfernen und Debuggen Ihrer LILO-Konfiguration.


Fußnoten

(2)
Unter Linux kann eine Boot-Floppy auch einen LILO-Boot-Record enthalten, der dann das System von der Festplatte startet. Wir werden im nächsten Abschnitt darauf eingehen, wenn wir LILO besprechen.
(3)
Woher stammt der merkwürdige Name? Auf vielen UNIX-Systemen steht der Kernel in der Datei /vmunix. Natürlich muß Linux wieder anders sein: deshalb nennt man seine Kernel-Kopien vmlinux und speichert sie im Verzeichnis /boot, um sie aus dem Root-Verzeichnis herauszuhalten. Der Name vmlinuz wurde gewählt, um komprimierte Kernel-Kopien von den unkomprimierten zu unterscheiden. Eigentlich spielen Name und Speicherort des Kernels absolut keine Rolle, solange Sie entweder eine Boot-Floppy mit Kernel benutzen oder aber LILO mitteilen, wo er ein Kernel-Image findet.


Inhaltsverzeichnis Vorherige Abschnitt Nächste Abschnitt