GRUB - Error 2

Hallo zusammen,

ich habe heute mal probiert, auf meiner externen USB-Festplatte Debian 5.0 zu installieren. Habe dabei zur Sicherheit die andere, normale Festplatte mal abgekoppelt, habe keine Lust auf Stress mit dem MBR.
Jedenfalls, die Installation hat auch soweit gut geklappt. Danach wollte ich Debian starten - aber GRUB gibt mir jetzt nur "Error 2" aus. Habe mal danach gegooglet, und das hier gefunden:
2 : "Selected disk doesn't exist"

This error is returned if the device part of a device- or full filename refers to a disk or BIOS device that is not present or not recognized by the BIOS in the system.
Jetzt habe ich die Platte mal unter meinem normalen System angeschlossen, und mir die menu.lst angesehen:
Code:
title		Debian GNU/Linux, kernel 2.6.26-1-686
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.26-1-686 root=/dev/sda1 ro quiet
initrd		/boot/initrd.img-2.6.26-1-686

title		Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode)
root		(hd0,0)
kernel		/boot/vmlinuz-2.6.26-1-686 root=/dev/sda1 ro single
initrd		/boot/initrd.img-2.6.26-1-686
Was genau stimmt denn da jetzt nicht? Kann mir jemand weiterhelfen?

Mit freundlichen Grüßen,
mcf
 
Hast du im Bios eingestellt, dass er von der USB-Festplatte starten soll?
Also die USB-Platte als erstes Boot-Device ausgewählt?
 
Ja, habe ich, beziehungsweise habe ich es jetzt immer so gemacht, dass ich beim Start "F8" drücke, und dann die USB-Platte als Boot-Device auswähle. Sollte ja den gleichen Effekt haben.
 
Ich wage irgendwie zu bezweifeln, dass die USB-Platte noch als hd0 adressiert wird, sobald eine andere Platte an einem IDE-, SCSI- oder SATA-Bus des Mainboards hängt.
 
Jetzt wo du es sagst... :rolleyes:
Aber das Problem tritt ja auch auf, wenn ich die andere Platte komplett abnehme - und als Schlussfolgerung, so dachte ich mir, ist die USB-Platte hd0.

Was sollte ich denn stattdessen eintragen?
 
Das rauszubekommen ist das Problem. Du kannst es eigentlich nur durchprobieren. Mir fällt zumindest spontan kein anderer Weg ein. Im übrigen wirst du aber auch Probleme mit deinen Kernel-Zeilen bekommen. Wenn man von USB booten will, sollte man Partition-Labeling verwenden, so dass die Root-Partition mit einem Label und nicht mit einem Device dem Kernel übergeben werden kann.
 
Danke für eure Antworten erstmal.

Also, was ich bis jetzt probiert habe:

1. Anstatt 'hd0' 'hd1' eingetragen, geht aber auch nicht, sowohl mit anderer Platte dran als auch ab. Was mir aber immer noch unklar ist, ist dass die USB-Platte ja hd0 sein sollte, sobald sie die einzige Platte ist? :rolleyes:
2. Durch das Forum bin ich auf die Idee gekommen, mal eine Live-CD zu benutzen. Also, normale Platte ab, Knoppix rein, USB-Platte dran - und sie wird auch da als sda1 erkannt, das sollte also schonmal stimmen. (sda1 sollte die root-Partition sein)
3. Im Forum war die Lösung des Problems ja das deaktivieren von EHCI-Handoff im BIOS. Allerdings war das bei mir schon deaktiviert, auch ein testweises Aktivieren hat nichts gebracht.

Langsam weiß ich nicht mehr weiter... hat jemand noch Ideen für mich? ;)
 
So, gerade mal 'hd1,1' probiert - geht aber auch nicht. Habe jetzt auch 'hd0,1' und 'hd1,0' probiert - hilft alles nichts. Langsam bin ich am verzweifeln, mir erschließt sich die Logik dahinter einfach nicht. ?(
Zumindest während der Debian-Installation ging doch alles reibungslos, warum sollte Debian falsche Einträge erzeugen...
 
Könntest ja auch, wenn du mehr Zeit hast, alle Möglichkeiten durchprobieren also (hd0,0) \ (hd0,1) und so weiter .... was gescheiteres fällt mir gerade nicht ein ...
 
Die Logik dahinter ist doch ganz simpel:

Error 2 = "Keine Festplatte gefunden!"

So, nun bleibt die Frage wieso... GRUB spricht die einzelnen Partitionen mittels folgendem System an: hd(x,y). Wobei x für die Nummer der Festplatte und y für die Nummer der Partition auf dieser Festplatte. hd(1,3) wäre also die 4. Parition auf der 2. Festplatte (er beginnt bei 0 zu zählen).

Soweit so gut... nun muss GRUBb aber ja irgendwo seine Informationen bezüglich der Festplatte herhaben. Die bekommt er direkt vom BIOS.

Und nun kommen wir zu einem der Knackpunkte!
Linux richtet sich mit der Anordnung der Festplatten-Partitionen nach einer bestimmten Datei, diese Datei wird bei der Installtion erstellt und enthält den aktuellen Stand. Nach einem Systemstart muss das aber nicht wieder so aussehen. Bspw könnte dein BIOS deine USB-Platte zuerst initialisieren, aber dein Linux erwartet an dieser Stelle eine andere Platte/Partition... schon haben wir den Salat (das war der Fall, den bitmuncher angesprochen hatte).

Was aber momentan wohl eher dein Problem ist: Das BIOS liefert falsche oder keine Daten über deine USB-Platte und daher kann GRUB nicht starten...

Ein Ratschlag stand in dem Link, den ich dir schon gepostet hab:

Since your BIOS is at least trying to boot your USB drive at this point, that's at least something, so I wouldn't give up on your USB drive just yet. But given the type of Grub behavior you are seeing, it definitely sounds like you have a BIOS issue with your USB drive at this point, so I think tweaking your BIOS HDD settings would be the best thing to try now.

Go into your BIOS and let me know what settings you have related to your USB drive; go ahead and try changing the related settings one at a time, reboot, and see what happens. Be sure to write down the original settings of anything that you change so you can get back to where you started if need be. Let me know how it goes.
 
So, danke erneut für die Tipps.
Ich habe jetzt mal mehrere Einstellungen, was die Festplatten in der menu.lst angeht, durchprobiert, und zwar 'hd0'-'hd4' und dort jeweils die Partitionen 0-4. Hat aber alles leider nichts geholfen, weiterhin: 'Error 2'.
Dann habe ich mich mal ein bisschen im BIOS umgeschaut, und diese USB-Einstellungen gefunden:
Code:
USB-Function - Enabled
Legacy USB-Support - Enabled
USB 2.0 Controller - Enabled
USB 2.0 Controller Mode - HiSpeed
BIOS EHCI Handoff - Disabled
Unter dem Menüpunkt 'USB Mass Storage Device Configuration' gibt es noch diese Einstellung:
Code:
Emulation Type - Auto
Testweise habe ich mal 'EHCI Handoff' aktiviert, hat aber nichts gebracht - nun ist es also wieder deaktiviert. Was die anderen Einstellungen angeht - die haben meines Wissens nach eigentlich nichts direkt damit zu tun, also USB-Support (+Controller) sollten aktiviert bleiben, Legacy ist für USB-Festplatten/Mäuse, und 'Emulation Type' hat laut BIOS etwas mit kleineren Festplatten zu tun.
Fällt euch noch etwas ein? Könnte das Problem nicht auch ganz woanders liegen, beispielsweise in der 'device.map'-Datei?

mfg,
mcf
 
Die device.map ist nur beim Installieren von Grub relevant. Sie legt fest wo der Grub überall installiert wird. Mir stellt sich allerdings gerade die Frage ob du den Grub im MBR der USB-Platte oder auf der Boot-Partition installiert hast.
 
Original von mcf

ich habe heute mal probiert, auf meiner externen USB-Festplatte Debian 5.0 zu installieren. Habe dabei zur Sicherheit die andere, normale Festplatte mal abgekoppelt, habe keine Lust auf Stress mit dem MBR.

Ich gehe also mal davon aus, dass er Grub in den MBR der USB-Platte installiert hat. Er wählt dann beim Systemstart mit F8 aus, von welcher Platte er booten will.
Grub beginnt ja auch zu starten um dann mit der Fehlermeldung abzubrechen, dass er keine Festplatte findet...


@ mcf:
Hast du mal versucht an einem anderen Rechner von der Platte zu booten?
Und hast du nun mal versucht die USB-Platte im BIOS als 1. Boot-Device anzugeben ohne das über F8 zu machen?
 
Original von Knoxx
Ich gehe also mal davon aus, dass er Grub in den MBR der USB-Platte installiert hat.
So habe ich es bei der Installation ausgewählt - 'fdisk -lu' gibt das hier aus:
Code:
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *          63   307275254   153637596   83  Linux
/dev/sdb2       307275255   312576704     2650725    5  Extended
/dev/sdb5       307275318   312576704     2650693+  82  Linux swap / Solaris
Original von Knoxx
Hast du mal versucht an einem anderen Rechner von der Platte zu booten?
Und hast du nun mal versucht die USB-Platte im BIOS als 1. Boot-Device anzugeben ohne das über F8 zu machen?
Das Ändern der Reihenfolge habe ich auch schon probiert, dummerweise noch nicht mit allen "Konfigurationen". Werde ich später noch machen, ebenso krame ich jetzt mal einen anderen PC raus. :)

/edit
So, ich habe es jetzt mal mit einem Laptop probiert, und da lädt er den GRUB einwandfrei, mit den Einstellungen 'hd(0,0)' - auch unabhängig von der Bootreihenfolge im BIOS. Auf meinem eigenen PC geht es allerdings auch mit veränderter Bootreihenfolge nicht - liegt wohl am BIOS selbst, aber noch mehr Trial-and-Error, ich weiß ja nicht, ob das noch viel bringen wird.
Hat jemand vielleicht noch eine Idee?

mfg,
mcf
 
Zurück
Oben