Folgendes Szenario: Ein Computer mit einem Dual-Boot-System mit Windows Vista und openSUSE 11.1, gemanagt durch den Grub-Manager. openSUSE bootet weiterhin über Grub, nur Windows stellt sich quer. Die Reparieren-Routine der Windows DVD hilft auch nicht weiter.
Der Boot-Vorgang wird entweder wegen folgendem Fehler abgebrochen:
File: \Boot\BCD
Status: 0xc000000fDann ist der Vista Bootmanager in der BCD-Datenbank beschädigt. Oder dieser Fehler erscheint:
File: \Boot\BCD
Status: 0xc0000098Dann fehlt die zum Booten benötigte BCD-Datenbank vollständig.
Achtung: Ich übernehme keine Garantie dafür, dass der hier beschriebene Vorgang funktioniert. Es sind tiefe Eingriffe in das System möglich/nötig, wo unter Umständen ein großer Datenverlust entstehen kann. Deswegen vorher unbedingt ein Backup anlegen!
Hintergrund: Wenn der Grub-Bootloader Windows Vista startet, ruft er zuerst den Vista-Bootmanager auf. Wenn dieser normal funktioniert, bekommt man ihn gar nicht zu Gesicht, da er direkt Windows startet. In unserem Fall ist der Bootmanager aber durch irgendeinen Grund beschädigt. Das Problem ist, dass die Windows DVD, die den Bootmanager eigentlich reparieren kann, die Windowsinstallation nicht findet, weil der Grub-Bootloader davor geschaltet ist.
Ein Lösungsweg, den ich hier beschreibe, ist:
- Grub entfernen
- Mit der Windows DVD den Vista Bootmanager reparieren
- Grub wieder installieren
Dieser Weg hat bei mir einwandfrei funktioniert.
Grub entfernen
Ich habe mein openSUSE gebootet und mir erst einmal den Partitionsmanager
GParted runtergeladen (einfach per YAST). Dort habe ich dann das Boot-Flag anstatt bei der Linux Partition bei der Windows Partition gesetzt.

Beim Booten wird Grub nun ignoriert und direkt Windows gestartet (was aber in einer Fehlermerldung endet).
Mit der Windows DVD den Vista Bootmanager reparieren
Dies ist relativ einfach. Man muss nur von der Vista DVD booten,
Computerreparation den Computer automatisch reparieren lassen und neustarten. Anschließend sollte Windows wieder normal starten (nur Grub fehlt, das openSUSE-System ist also nicht bootbar).
Grub wieder installieren
Hierzu booten wir den Computer von der openSUSE-Installations-DVD, mit der das System auch installiert wurde. Unter dem Menüpunkt
Installiertes System reparieren wählen wir
Automatische Reparatur aus. Nun werden alle installierten Komponenten überprüft, auch der Bootloader. An dem Punkt findet die Reparaturroutine einen Fehler und fragt, ob der Bootmanager repariert werden soll. Nach der Bestätigung wird die Grub-Bootmanager-Konfiguration angezeigt, bei welcher aber eventuell die Windows-Installation fehlt. Diese muss noch hinzugefügt werden. Mit
Hinzufügen und der Auswahl von
Chainloader-Abschnitt kann Windows hinzugefügt werden. Bei Abschnitsname tragen wir beispielsweise "Windows Vista" ein und bei
Anderes System muss die Windowspartition ausgewählt werden (z.B.
\dev\sda1, wenn Windows auf der ersten Partition installiert ist).
Nachdem der Booteintrag mit
OK hinzugefügt wurde, führt man die Reparatur noch zu Ende aus und startet das System neu. Jetzt müsste alles funktionieren.
Der beschriebene Weg hat bei mir nach vielem Tüfteln am einfachsten funktioniert. Mein System konnte ich mit den Windowskommandos
bootrec.exe,
bootsect.exe und
bcdedit.exe in der Windows-Eingabeaufforderung der Windows DVD nicht reparieren. Falls der obige Lösungsweg nicht funktioniert, wären diese Kommandos aber vielleicht einen Versuch wert.