SuSE GmbH

SuSE Support-Datenbank

Titel: LILO: Die "linear" Option

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel
English

----------

LILO: Die "linear" Option

Bezieht sich auf

SuSE Linux: Alle Versionen

Symptom:

LILO kann die Bootkernels beim Booten von einer Festplatte nicht finden und bleibt bei LI - oder einem anderen unvollständigen Anfangsstück des Wortes LILO - stehen (siehe LILO startet nicht: Fehlermeldungen und Deutung (kgw_lilo_errmsg.html)). Dies geschieht, obwohl Sie die 1024-Zylinder-Grenze ( Linux über 1024 Zylinder und LILO (1024_Zylinder.html)) berücksichtigt haben.

Das kommt besonders "gerne" vor in Fällen, wo Sie am Anfang Ihrer Festplatte ein anderes Betriebssystem (z. B. Windows NT) installiert haben.

Ursache:

Eine mögliche Ursache: LILO wurde mit aktivierter Option "linear" installiert.

Lösung:

Deaktivieren Sie die Option "linear" in der /etc/lilo.conf durch Löschen oder Auskommentieren:
# linear
Installieren Sie dann LILO erneut durch Aufruf von

# /sbin/lilo

Hintergrund:

Wirkung der linear Option: Sämtliche Referenzen (Zeiger) auf Plattensektoren von /boot/boot.b, /boot/map, Kernel usw. werden im LILO-Bootsektor und in /boot/map als logische Sektoradressen anstatt von physikalischen (Zyl-Kopf-Sektor) Adressen abgelegt.

Beim Booten stellt der LILO-Bootsektor dann durch Aufruf einer BIOS-Funktion die Festplattengeometrie fest und rechnet damit die logischen Sektoradressen wieder in physikalische um. Der tatsächliche Zugriff auf die Festplatte(n) erfolgt dann mit den physikalischen Sektoradressen.

Zweck: Die "linear" Option hilft, wenn das BIOS die fragliche Festplatte mit einer anderen Geometrie "sieht" als das laufende Linux. Die logischen Sektoradressen bleiben korrekt, unabhängig von der Festplattengeometrie.

Dies ist recht selten, daher ist die "linear" Option meist nicht erforderlich. Sie wurde dennoch für alle Fälle bei der Installation von LILO mit YaST standardmäßig aktiviert (in S.u.S.E. Linux bis Version 5.2).

Update: Die folgende Einschränkung bezieht sich nur auf LILO-Versionen älter als v21 (SuSE Linux 6.0 und früher). LILO v21 führt die Adresskonvertierung so durch, daß 16-Bit Overflow vermieden wird.

Schwierigkeit: Bei Verwendung von "linear" ist neben der 1024-Zylinder-Grenze eine weitere (bisher undokumentierte) Einschränkung zu beachten, die vor allem bei modernen, großen Festplatten wirksam wird: "linear" funktioniert nur

    bei 16 Sektoren/Spur    unterhalb von       512 MB
    bei 32 Sektoren/Spur    unterhalb von         1 GB
    bei 63 Sektoren/Spur    unterhalb von   knapp 2 GB
Diese Grenze ist bei Geometrien mit über 64 Heads restriktiver als die 1024-Zylinder-Grenze. Heutzutage sind 128 oder 255 Heads alltäglich.

Der Grund: eins der Zwischenergebnisse bei der Umrechnung in physikalische Adressen zum Bootzeitpunkt ist die Spur des betreffenden Sektors, und die Umrechnung erfolgt mit 16-Bit Arithmetik. Daher muß Spur < 65536 sein.

----------

Siehe auch:

----------

Stichwörter: BOOTEN, BOOTPROBLEME, LILO, LINEAR, 1024, ZYLINDER, INSTALLATION

----------

Kategorien: LILO

----------

Übersicht o Stichwortsuche o History o Versionen o Kategorien o Alle Artikel
English

----------

SDB-kgw_lilo_linear, Copyright SuSE GmbH, Nuremberg, Germany - Version: 20. Apr 1998
SuSE GmbH - Zuletzt generiert: 14. Jan 2000 18:36:05 by kgw with sdb_gen 1.00.0