lilo.conf(5) Konfigurationsfile für lilo

BESCHREIBUNG

Diese Datei, gewöhnlich als /etc/lilo.conf zu finden, wird vom LILO Installationsprogramm eingelesen (siehe lilo(8)).

Sie sieht wie folgt aus:

boot = /dev/hda
delay = 40
compact
vga = normal
root = /dev/hda1
read-only
image = /zImage-1.5.99
        label = try
image = /zImage-1.0.9
        label = 1.0.9
image = /tamu/vmlinuz
        label = tamu
        root = /dev/hdb2
        vga = ask
other = /dev/hda3
        label = dos
        table = /dev/hda

Diese Konfigurationsdatei veranlaßt LILO den Master Boot Record auf /dev/hda zu benutzen. (Für eine Diskussion LILO anders zu benutzen und das Zusammenspiel mit anderen Betriebssystemen, siehe unter user.tex von der LILO Dokumentation.)

Beim booten wird der bootlader vier Sekunden auf Ihr Drücken der Shift-Taste warten. Falls Sie nicht drücken, wird der erste oben genannte Kernel (/zImage-1.5.99, den Sie hoffentlich vorher installiert haben) geladen. Falls Sie Shift gedrückt haben, wird Sie der Bootlader fragen, welchen Kernel Sie laden wollen. Sollten Sie die Auswahlmöglichkeiten vergessen haben, drücken Sie [TAB] (oder [?], falls Sie eine US-Tastatur haben). Daraufhin wird Ihnen ein Auswahlmenü präsentiert. Sie haben nun die Wahl den neusten Kernel, einen sicheren Kernel, einen Kernel auf einem anderen Dateisystem (nur im Falle, dass Sie auf Ihrer rootfs Unsinn trieben) oder ein anderes Betriebssystem zu booten. Es können bis zu 16 Einträge in lilo.conf vorgenommen werden.

Wie man oben sehen kann, beginnt eine Konfigurationsdatei mit einer Anzahl von globalen Optionen (die ersten 6 Zeilen im Beispiel), gefolgt von Beschreibungen für die verschiedenen Einträge. Eine Option in einer Eintragsbeschreibung überschreibt eine globale Option.

GLOBALE OPTIONEN

Es gibt viele mögliche Schlüsselwörter. Die folgende Beschreibung ist nahezu komplett von user.tex übernommen (nur ein bischen gekürzt).
backup=backup-file
Kopiert den orginalen Bootsektor zum backup-file (welches ebenso ein Gerät sein darf, z.b. /dev/null) anstatt von /boot/boot.NNNN.
boot=boot-device
Setzt den namen des Gerätes (eine HD-Partition), welches den Bootsektor trägt. Falls dieses Schlüsselwort fehlt, wird der Bootsektor von dem Gerät gelesen (und evtl. geschrieben), welches gerade als root gemountet ist.
compact
Versucht mehrere Lesezyklen für benachbarte Sektoren in einem einzelnen Lesezyklus abzuarbeiten. Dies reduziert die Ladezeit erheblich und hält die Abbildung kleiner. Die Benutzung von `compact' ist besonders beim booten von Floppydisk zu empfehlen.
default=name
Benutzt das genannte Abbild als Standard. Falls `default' fehlt, so wird das erste erscheinende Abbild im Konfigurationsfile benutzt.
delay=tsecs
Spezifiziert die Anzahl der zehntel Sekunde die der Bootlader warten soll, bevor er das erste Abbild bootet. Dies ist auf Systemen nützlich, die sofort von der Festplatte booten, nachdem die Tastatur freigegeben wurde. Der Bootlader wartet nicht, wenn `delay' fehlt oder zu Null gesetzt ist.
disk=device-name
Definiert nicht-standard Parameter für das angesprochene Laufwerk. Siehe Kapitel "Disk geometry" in user.tex für Einzelheiten.
disktab=disktab-file
Spezifiziert den Namen der Laufwerksparametertabelle. Der Abbildungsinstallierer sucht nach /etc/disktab, falls `disktab' fehlt. Dem Gebrauch von disktabs ist abzuraten.
fix-table
Dies erlaubt LILO 3D Adressen in der Partitionstabelle einzustellen. Jeder Partitionseintrag enthält eine 3D (Sektor/Kopf/Zylinder) und eine lineare Adresse des ersten und letzten Sektors einer Partition. Wenn eine Partition nicht Spur-verbunden ist und wenn gewisse andere Betriebssysteme (z.B. PC/MS-DOS or OS/2) die gleiche Disk benutzen, können sie die 3D Adresse verändern. LILO kann seinen Bootsektor nur auf Partitionen sichern, wo beide Adresstypen korrespondieren. Lilo stellt falsche 3D Startadressen zurück, falls `fix-table' gesetzt ist.

WARNUNG: Dies ist keine Garantie, dass andere Betriebssysteme nicht zu einem späteren Zeitpunkt versuchen die Adresse zurückzusetzen. Es ist ebenso möglich, dass diese Änderung andere unerwartete Seiteneffekte hervorruft. Die korrekte Lösung ist, das Laufwerk mit einem Program neu zu patitionieren, welches die Partitionen zu den Spuren ausrichtet. Des weiteren kann es unter einigen Umständen mit einigen Laufwerken (z.B. große EIDE-Festplatten mit eingestellter Adressübersetzung) unvermeidbar sein, in Konflikt geratene Partitionstabelleneinträge zu haben.         

force-backup=backup-file
Wie `backup', aber überschreibt ein altes Backupfile, sofern es exestiert.
ignore-table
fordert LILO auf, defekte Partitionstabellen zu ignorieren.
install=boot-sector
Installiert das angegebene file als den neuen Bootsektor. Falls `install' fehlt, wird /boot/boot.b als Standard benutzt.
linear
generiert lineare Sektoradressen anstatt von Sektor/Kopf/Zylinder Adressen. Lineare Adressen werden zur Laufzeit übersetzt und sind unabhängig von der Plattengeometry. Merke, dass Bootdisketten nicht übertragbar sind, falls `linear' benutzt wurde, da einige BIOS-Dienste zum Ermittlung der Diskettengeometry nicht zuverlässig arbeiten. Wenn Sie `linear' mit großen Disketten benutzen, wird /sbin/lilo Hinweise auf nicht erreichbare Bereiche der Diskette verweisen, da 3D Sektoradressen vor dem Booten unbekannt sind.
lock
schaltet die automatische Aufnahme von Bootkommandozeilen als Standard für zukünftige Bootvorgänge ein. Auf diese Weise sperrt "locks" LILO eine Auswahl, bis sie manuell überschrieben wird.
map=map-file
spezifiziert den Ort des Abbildungsdatei. Falls `map' fehlt, wird /boot/map benutzt.
message=message-file
spezifiziert eine Datei mit einer Meldung, die vor dem Bootbereitschaftszeichen angezeigt wird. Während des Wartens auf die Shift-Taste nach Anzeige von "LILO", wird keine Meldung angezeigt. Ein FF-Zeichen ([Ctrl L]) in der Meldung löscht den lokalen Bildschirm. Die Größe der Meldungsdatei ist auf 65553 bytes limitiert. Die Abbildungsdatei muss neu aufgebaut werden, falls die Meldungsdatei verändert oder verschoben wurde.
nowarn
schaltet Warnungen über mögliche zukünftige Gefahren aus.
optional
Die Pro-Eintrag Option `optional' (siehe unten) richtet sich an alle Einträge.
password=password
Die Pro-Eintrag Option `password=...' (siehe unten) richtet sich an alle Einträge.
prompt
erzwingt das sofortige Anzeigen des Bereitschaftszeichens ohne jeglich zuvor gedrückte Taste abzuwarten. Unerwartetes neu booten ist unmöglich, falls `prompt' gesetzt ist und `timeout' nicht gesetzt ist.
restricted
Die Pro-Eintrag Option `restricted' (siehe unten) richtet sich an alle Einträge.
serial=parameters
schaltet die Kontrolle auf einen seriellen Eingang. Der angegebene serielle Eingang ist initialisiert und der Bootlader erwartet eine Eingabe darüber und über die PC-Tastatur. Ein Stoppsignal auf dem seriellen Eingang gleicht dem Drücken einer Shift-Taste auf der Konsole, um die Aufmerksamkeit des Bootladers zu erhalten. Alle Booteinträge sollten passwortgeschützt sein, falls ein serieller Zugriff so unsicherer ist, wie ein Zugriff über die Konsole, z.B. wenn ein Eingang über ein Modem angeschlossen ist. Die Parameterkette hat die folgende Syntax:

    <port>[,<bps>[<parity>[<bits>]]]

<port>: Die Nummer des seriellen Eingangs, nullbasiert. 0 gleicht COM1 alias /dev/ttyS0, usw. Alle vier Eingange können benutzt werden (falls vorhanden).

<bps>: Die Übertragungsrate des seriellen Eingangs. Die folgenden Übertragungsraten werden unterstützt: 110, 150, 300, 600, 1200, 2400, 4800 und 9600 bps. Standard ist 2400 bps.

<parity>: Die benutzte Parität auf seriellen Eingängen. Der Bootlader ignoriert die Eingabeparität und kürzt das 8te bit. Das folgende Zeichen (Groß oder Kleinschrift) wird benutzt, um die Art der Parität zu beschreiben. n für keine Parität, e für gerade Parität und o für ungerade Parität.

<bits>: Die Anzahl der bits in einem Zeichen. Nur 7 und 8 bits werden unterstützt. Standard ist 8, falls Parität auf "keine" ist, 7 falls Parität "gerade" oder "ungerade" ist.

Falls `serial' gesetzt ist, wird der Wert von `delay' automatisch auf 20 erhöht.

Beispiel: serial=0,2400n8 initialisiert COM1 mit den Standardparameter.

timeout=tsecs
setzt eine Zeitüberschreitung (in zehntel Sekunden) für die Tastatureingabe. Falls für diese Zeit keine Taste gedrückt wird, wird das erste Abbild automatisch gebootet. Ebenso wird die Passworteingabe abgebrochen, falls der Benutzer für diese Zeit zu lange untätig ist. Die Standardzeitüberschreitung ist unendlich.
verbose=level
stellt eine Menge von Fortschreitungsmeldungen an. Höhere Nummern geben wortreichere Ausgaben aus. Falls -v zusätzlich in der LILO Kommandozeile angegeben wird, wird das Ausgabeniveau dementsprechend erhöht. Das Maximum des wortreichen Ausgabeniveaus ist 5.

Zusätzlich können die Kernel-Konfigurationsparameter ramdisk , read-only , read-write , root und vga im globalen Optionsabschnitt gesetzt werden. Sie werden als Standard benutzt, falls sie nicht im Konfigurationsabschnitt der jeweiligen Kernelabbildungen angegeben werden.

PRO-EINTRAG ABSCHNITT

Ein pro Eintrag Abschnitt beginnt mit entweder einer Zeile

image=pathname

(um eine Datei oder Gerät mit dem Bootabbild eines Linuxkernels anzugeben), oder einer Zeile

other=pathname

um ein willkürliches System zu booten.

In früheren Fällen, wenn eine image Zeile das booten von Gerät angab, musste man den Bereich der Sektoren die abgebildet werden sollten mit

range=start-end

angeben.

Im letzten Fall (ein anderes System booten) sind dort die drei Optionen

loader=Kettenlader
Dies gibt den Kettenlader an, der benutzt werden soll. Als Standard wird /boot/chain.b benutzt. Der Kettenlader muss angegeben werden, falls von einem anderen Gerät als der ersten Festplatten- oder Diskettenlaufwerk gebootet wird.
table=Gerät
Dies gibt das Gerät an, welches die Partitionstabelle enthält. Der Bootlader wird keine Informationen der Partition an das bootende Betriebssystem geben, falls diese Variable fehlt. (Einige Betriebssysteme haben andere Mittel, um festzustellen von welcher Partition sie gebootet haben. Z.B. speichert MS-DOS gewöhnlich die Geometry der Bootdiskette oder Partition in seinem Bootsektor.) Merke, dass /sbin/lilo neu gestartet werden muss, falls eine Partitionstabelle abgebildet durch `table' verändert worden ist.
unsafe
greift während der Abbildungsentstehung nicht auf den Bootsektor zu. Dies verhindert einige gewöhnliche Kontrollen, einschließlich einer Partitionstabellenkontrolle. Wenn der Bootsektor auf einem fest-formatierten Diskettenlaufwerk ist, verhindert `UNSAFE' den Gebrauch eine lesbare Diskette ins Laufwerk zu stecken, während der Abbildungsinstallierer läuft. `unsafe' und `table' sind gemeinsam unverträglich.

In beiden Fällen gelten die folgenden Optionen.

label=Name
Der Bootlader benutzt den Hauptdateinamen (ohne den Pfad) von jeder Abbildungsangabe um das Abbild zu identifizieren. Ein anderer Name kann durch das Setzen der Variablen `label' angegeben werden.
alias=Name
Ein zweiten Name für den gleichen Eintrag kann durch einen alias angegeben werden.
lock
(Siehe oben.)
optional
lässt das Abbild weg, falls es zur Abbildungentstehung nicht vorhanden ist. Dies ist nützlich, um Test-kernels anzugeben, die nicht immer vorhanden sind.
password=Passwort
schütz das Abbild mit einem Passwort
restricted
Ein Passwort wird nur zum Booten des Abbilds abgefragt, wenn Parameter in der Kommandozeile angegeben werden (z.B. single).

KERNEL OPTIONEN

Wenn das gebootete Abbild ein Linuxkernel ist, so darf man diesem Kommandozeilenparameter angeben.
append=Zeichenkette
hängt die angegebene Option an die Parameterzeile, um sie an den Kernel weiterzureichen. Dies wird üblicherweise angewendet, um Hardwareparameter anzugeben, die nicht ganz automatisch erkannt werden oder dessen Probe gefährlich sein könnte. Hier ein Beispiel:

     append = "hd=64,32,202"

literal=Zeichenkette
Wie `append', aber es entfernt alle anderen Optionen (z.B. das Setzen des root-gerätes). Da wesentliche Optionen mit `literal' unabsichtlich entfernt werden können, kann diese Option nicht im globalen Optionsabschnitt gesetzt werden.
ramdisk=Größe
Dies gibt die Größe einer optionalen Ram Diskette an. Ein Wert von Null besagt, dass keine Ram Diskette erstellt werden soll. Falls diese Variable fehlt, wird die Ram Diskettengröße, die im Bootabbild konfiguriert ist, benutzt.
read-only
gibt an, dass das root-Dateisystem nur-lesbar gemounted werden soll. Üblicherweise wird das root-Dateisystem zu einem späteren Zeitpunkt der Systemstartprozedur als lesbar-schreibbar neu gemounted. (z.B. nachdem fsck abgelaufen ist).
read-write
gibt an, dass das root-Dateisystem lesbar-schreibbar gemounted werden soll.
root=root-Gerät
gibt das Gerät an, dass als root gemounted werden soll. Wenn der spezielle Name current benutzt wird, so wird das root-Gerät gesetzt, welches gerade als root- Dateisystem gemounted ist. Wenn root mit -r geändert wurde, wird das besondere Gerät benutzt. Falls die Variable `root' fehlt, wird das root-Gerät auf dem das Kernelabbild liegt benutzt. (Und dies wird zur Kompilierzeit im Makefile des Kernels mit der Variablen ROOT_DEV gesetzt und kann später mit dem rdev(8) Programm geändert werden.)
vga=Modus
gibt den VGA Textmodus an der beim booten benutzt werden soll. Die folgenden Werte werden erkannt (Groß- oder Kleinschrift):

normal: selektiert normalen 80x25 Textmodus.

extended (oder ext) selektiert 80x50 Textmodus.

ask: stoppt und fragt nach einer Benutzereingabe (zur Bootzeit).

<number>: benutzt den entsprechenden Textmodus. Eine Liste der möglichen Modies kann beim booten mit vga=ask und drücken der [Enter]-Taste angezeigt werden.

Falls diese Variable fehlt, wird der VGA Modus gesetzt, der im Kernelabbild angegeben ist. (Und dies wird zur Kompilierzeit im Makefile des Kernels mit der Variablen SVGA_MODE gesetzt, und kann später mit dem rdev(8) Programm geändert werden.)