GRUB2 lässt sich nicht einrichten

gorko122

Cadet 4th Year
Registriert
Juli 2005
Beiträge
104
Hallo!
Ich habe auf meinem Notebook zusätzlich zu Windows 7 und Windows XP Ubuntu 11.10 installiert.

Leider funktioniert die Einrichtung von GRUB nicht korrekt (schon mehrmals versucht). GRUB startet immer im Recovery-Modus und sagt "No such partition".

Ubuntu ist bei mir auf /dev/sda5 installiert (ist eine logische Partition, ich hoffe, das ist kein Problem...). In der Datei grub.cfg wird /dev/msdos5 als root-Partition angegeben.

Auch wenn ich update-grub aufrufe (via chroot) funktioniert es nicht.

Habt ihr Tipps für mich? Bzw. welche Infos werden noch benötigt?

EDIT
Anbei noch der BootInfoScript output
 

Anhänge

Zuletzt bearbeitet:
ah, danke fuer die Antwort.

Ich meine zwar wo gelesen zu haben, dass man auch von einer logischen Partition booten kann, aber das erklaert wohl einiges.

Nur stelle ich mir die Frage, weshalb Ubuntu bei der Installation dies nicht bemerkt?
Kennt jemand ein Tool um eine primaere Partition ohne Datenverlust in eine logische Partition umzuwandeln?
 
So ein Quatsch, sicher kann man ein Linux auch von einer erweiterten Partition booten.
Was ich nicht ganz verstehe warum /dev/msdos5 als Rootpartition angegeben ist wenn es doch /dev/sda5 ist, oder ist das verlinkt miteinander?
 
OK, GRUB kann eine logische Partition booten, wobei logische Partition != erweiterte Partition.
 
Mach mal per chroot ein "grub-install /dev/sda" oder einfach so ohne chroot "grub-install --boot-directory=/mountpoint/boot /dev/sda", solange denn die festplatte unterm aktuellen OS auch sda ist.

Sonst fällt mir noch ein blick in die /boot/grub/device.map ein.

Dann hörts aber auch bei mir auf. Dein GRUB2 kann schon ext4, oder?
 
Warum msdos5 angegeben wird kann ich leider nicht sagen, aber derartige Angaben habe ich beim Suchen nach div. GRUB-Konfigs schon öfters gesehen.

@enteon:
Per chroot grub neu zu installieren habe ich zwar schon öfters versucht, aber ich werde es nochmal machen. Was sollte man in der device.map sehen?

Ob mein GRUB ext4 booten kann weiß ich leider nicht, aber sollte er schon können, da es sich ja immerhin um eine recht aktuelle Version handelt (wurde mit Ubuntu 11.10 ausgeliefert).
 
Also ich seh da nirgens /dev/msdos5, sondern immer nur hd0,msdos5, was ganz einfach die erste logische partition nach MBR-schema auf festplatte 0 und die normale GRUB2-notation ist.

Wichtig ist ob hd0 in der device.map mit sda oder sdb (oder ...) gleichgesetzt wird. Wenn GRUB sich selbst nicht findet obwohl die config korrekt ist lohnt es sich mal die zuordnung zu vertauschen.

Mir fällt noch ein, dass "linux" noch nicht so gut mit UEFI klarkommen soll, wenn du also ein UEFI hast könnte es daran liegen. Dann wäre z.b. auch msdos falsch, es müsste gpt heißen.
Aber da du auch windows XP am laufen hast dürfte es sich nicht um ein UEFI handeln?!
GPT kann der glaub auch nicht.
 
Ich würde das probieren was enteon vorgeschlagen hat, also chroot und versuchen grub2 mit seinen eigenen Mitteln wieder richtig zu konfigurieren.

Im Wiki von ubuntuusers.de ist eine sehr gute Anleitung zum booten in ein Livesystem daraus mit chroot ins installierte System wechseln und Bootloader wiederherstellen. Evtl. ist während der Installation etwas schiefgelaufen beim schreiben der configs.

Das ist zwar etwas aufwändiger, aber bevor das Gefrickel losgeht würde ich dem Ansatz eine Chance geben. Ich glaube da kommst du noch am ehesten zum Ziel.

http://wiki.ubuntuusers.de/GRUB_2/Reparatur?highlight=grub#chroot-Methode

Wenn das nichts hilft bitte noch mal melden evtl bringts was anstatt der UUIDs die normale /dev/sdXX konfiguration zu benutzen, aber du musst in beiden Fällen ins chroot, da fällt ein
Code:
sudo grub-install /dev/sda
nicht weiter ins Gewicht.
 
Danke für die vielen Tipps - leider kann ich nichts positives berichten.

Die Anleitung auf ubuntuusers.de bin ich bereits mehrfach durchgegangen - immer ohne Erfolg.

Bei meinem Rechner handelt es sich um kein UEFI-Gerät, wie enteon bereits erkannt hat. Die Datei /boot/grub/device.map ist leider auch nicht vorhanden?

Wenn ich nun nach chroot versuche "sudo grub-install /dev/sda" kommt folgende Meldung:
/usr/sbin/grub-probe: error: cannot find a device for /boot/grub (is /dev mounted?).
Die selbe Meldung kommt auch beim Aurfur mit --root-directory, etc.

EDIT:
nach einem erneuten Versuch in einer "frischen" shell funktionierte der Aufruf mit --root-directory. Die Datei device.map ist aber leider immer noch nicht vorhanden.

EDIT2:
Ich denke ich weiß nun worin der Fehler liegt:
Habe einen Eintrag gefunden, der für mich passt. Anscheinend erkennt mein BIOS meine Festplatte nicht ganz, im BIOS wird nämlich 137GB angezeigt, obwohl die Festplatte eigentlich größer ist und die Ubuntu-Partition dahinter liegt.

Werde nun wie vorgeschlagen eine kleine /boot-Partition am Anfang wo erstellen und dann berichten.
Ergänzung ()

Es funktioniert nun!
Das Problem war, dass mein BIOS die Partitionen hinter 137GB nicht erkannte und somit nicht davon booten konnte. Habe nun eine kleine Partition innerhalb der 137GB erstellt und davon kann ich problemlos booten.

Danke für die Mithilfe!
 
Zuletzt bearbeitet:
:lol:
x86 ist doch tatsächlich auch legacy-bug-kompatibel :D

Darf man fragen wie alt (sprich antik) dein notebook ist?

Ich bin zwar kein fan von partitionen, aber eine 500MB ext3 boot-partition hab ich auch! Spart viel viel ärger wenn ich mal wieder das dateisystem wechsle oder mit LVM oder md rumspiele. Eine swap-partition ist dagegen verschenkte liebesmüh ;)
 
Bei meinem Notebook handelt es sich um ein Dell Inspiron 9300, welches ich ca. 09/2005 erworben habe.
 
Das sieht man mal wieder dass PC-hersteller nichtmal 1 jahr in die zukunft entwickeln, so alt ist es ja noch gar nicht. Wir haben immernoch das chaos mit MBR/BIOS und GPT/UEFI und es wird dank UEFI-class 3 geräten ohne BIOS-kompatibelität ab nächstem jahr noch schlimmer. (woran windows dank diverser unnötiger extrawürste auch nicht wirklich unschuldig ist)

Spaßig wird vielleicht auch IPv6.
 
Ja, ich habe mich auch gewundert, dass mein Notebook bzw. mein BIOS tatsächlich derart "veraltet" ist. Mit der ursprünglichen Konfiguration hätte ja noch alles funktioniert, da im Auslieferungszustand eine 100GB-Festplatte eingebaut war, aber ich habe diese vor einiger Zeit durch eine größere ersetzt.

Nun hat sich UEFI endlich sozusagen druchgesetzt (da nun alle Mainboard-Hersteller darauf setzen) und somit fallen in nächster Zeit einige Probleme weg. Aber wie du schon geschrieben hast, gibt es dann Probleme mit älteren Betriebssystemen und der Umstieg auf IPv6 wird auch spaßig werden.

Uns wird also sicher nicht langweilig^^
 
Zumal windows UEFI nur in 64bit mag und einen UEFI-legacy-bootloader setzt der dank wahrscheinlich fehlerhaften UEFI-firmware andere bootloader blockiert, obwohl diese krücke mit dem einen und einzigen MBR-bootloader eigentlich mit UEFI ein ende hätte haben sollen. Dazu kommt secure boot das nicht signierte bootloader oder gar noch mehr einfach nicht ausführt, was sich je nach implementierung nicht ändern lässt.

So ganz optimal ist UEFI vom prinzip her auch nicht, es könnten sich voll internet-fähige trojaner darin einnisten und keinem virenscanner würde es jemals auffallen. Spätestens seit stuxnet ist auch klar, dass sowas nicht zu aufwändig ist um auch gemacht zu werden.

-> Wenn ich auf ruhe stünde wäre ich BWLer geworden :lol:

IPv6 wird aber theoretisch wenig wellen schlagen, ist es doch schon seit 10 jahren in modernen systemen implementiert und dual-stack fähig.
 
Zurück
Oben