linux-l: LiLo findet Kernel nicht

Jens Dreger jens.dreger at physik.fu-berlin.de
Mi Mär 14 19:46:38 CET 2001


On Wed, Mar 14, 2001 at 06:21:19PM +0100, Sebastian Slania wrote:
> Hi,
> Ich benutze auch drive mapping in lilo.conf
> Leider sitzte ich im augenblick noch nicht zuhause an meinem 
> rechner und kann die lilo.conf deshalb nicht einsehen.
> Sobald ich zuhause bin poste ich meine conf.
> Aber es sollte heissen:
> 
>   map-drive=0x80
>     to=0x81
>   map-drive=0x81
>     to=0x80
> 
> die zahlen 80 und 81 sind dabei werte die das bios beeinflussen.

Nein. Diese Zahlen beeinflussen nicht das BIOS. Sie sagen etwas
darueber aus, welche Sicht der Dinge das BIOS hat. Wenn man im BIOS
sowas auswaehlen kann wie "Boot order: C:,D:,E:", dann entscheidet
dies darueber, welchem Laufwerk das BIOS 0x80 und welchem 0x81 usw
zuordnet. Wenn man zum Beispiel "Boot SCSI first" auswaehlen kann,
wird das BIOS 0x80 an eine SCSI-Festplatte vergeben. Wenn man dann
noch die Boot-Reihenfolge im SCSI-Adapter BIOS aendern kann, kann es
sein, dass man effektiv von /dev/sdc als 0x80 bootet.

Wenn nun Linux laeuft, hat es das BIOS und seine mappings laengst
eliminiert und kann nicht wissen, welches Laufwerk das BIOS als 0x80
anspricht bevor der kernel Fuss fasst. Um LILO ueber diese Sicht der
Dinge durch das BIOS zu informieren gibt es diese map-drive Eintraege.


> Wieso benutzt du noch einen weiteren bootloader?
> boot=/dev/hdd2 ? bei mir steht hda

Ja, das mit dem /dev/hdd2 ist nicht ganz ohne. Das bedeutet, dass Du
dem bootloader auf /dev/hda (dem mit Mausunterstuetzung) erstmal
beibringen musst, bei Auswahl von Linux auf /dev/hdd2 weiterzumachen.

In einer anderen Mail stand, dass die jetzige /dev/hdd-Platte vorher
als /dev/hda eingabaut war. Wenn das stimmt, ist wahrscheinlich ein
Lilo auf /dev/hdd, also im MBR der hdd-Platte, installiert. Wenn jetzt
der neue Mausklick-Bootloader an den MBR von hdd uebergibt, kommt die
alte LILO-Installation zur Ausfuehrung, die dann auf /dev/hda
weitersucht. Dies wuerde die Fehlermeldung "LI" produzieren (second
stage loader successfully loaded).

Du muss in jedem Fall erstmal sicher gehen, dass der Mausklick-Loader
ueberhaupt den neuen LILO unter /dev/hdd2 erreicht.

> > Die lilo.conf sieht folgendermaßen aus.
> > 
> > boot=/dev/hdd2
> > root=/dev/hdd3

Macht in meinem Augen nicht viel Sinn. Was ist denn hdd2 fuer eine Patition? 

> > Ich darf LiLo nicht im MBR der Platte /dev/hdd installieren, da ein
> > anderer Bootloader das System übernehmen soll.

Von wo bootet denn das BIOS? Von /hda oder /hdd ? Das waere dann die
Einstellung "Boot order C:,D:,E:...". Was steht da?

> > Fehler im BIOS schließe ich aus.

Aha. Warum?

> > sobald ich lilo ausführe, bekomme ich die Warnung "Gerät 0x82 nicht
> > gefunden" -> nicht ganz wörtlich, aber ich habe den Rechner leider
> > nicht hier.

Du bekommst wahrscheinlich die Warnung 
   "Warning: BIOS drive 0x82 may not be accessible"

Es ist absolut nicht selbstverstaendlich, dass das BIOS vom zweiten
IDE-Controller (hdc,hdd) booten kann. Daher die Meldung. Wenn Du einen
SCSI-Controller ohne eigenes BIOS hast und LILO sagt, es solle mal von
/dev/sda booten, dann wird das sicher nix. Der Controller kann ja gar
nicht booten, aber das kann LILO bei der Installation nicht wissen.

> > könnte das in dieser Art auch die Lösung für mein Problem sein?
> > Ich nehme an, das Lilo versucht auf die Platte am ersten Controller
> > zugreifen zu wollen.
> > Leider (oder zum Glück) darf ich nicht "wild" an diesem Rechner
> > herumprobieren.
> > 
> > Meine Lösung würde wie folgt aussehen. (never tested)
> > 
> > disk = /dev/hdd
> >   bios = 0x80
> > disk = /dev/hda
> >   bios = 0x81
> > 
> > Könnte das funktionieren?

Das haengt von den Einstellungen im BIOS ab.

> > Hat schon jemand damit Erfahrungen gesammelt?

Ja. Das funktioniert, wenn es richtig konfiguriert ist. Damit kann man
auf drei Platten Windows installieren und alle denken, sie seien auf C:

> > Danke, für jeden Tipp.

Rug mal lilo mit "-v -v -v" oder so auf und schick' mir den
output. Dann sieht man vielleicht, was los ist.

Gruss,

Jens.



Mehr Informationen über die Mailingliste linux-l