MBR verschieben/neu einrichten

caniac

Newbie
Registriert
Aug. 2006
Beiträge
6
Hallo!

folgendes Problem: habe gerade Windows XP installiert und den ganzen Tag damit verbracht es einzurichten. Um meine Daten der externen Festplatte schneller zu sichern, habe ich sie direkt im Rechner angeschlossen (ist sonst nur in einem Case!).

Folgende Platten im Rechner:
sdb1 - sATA II Festplatte mit OS drauf (@25GB)
sdb2 - sATA II Festplatte mit Daten (@210GB)
sda1 - IDE leere Partition
sda2 - IDE leere Partition
sda3 - IDE angeblich Systempartition
sda4 - IDE leere Partition

Schließe ich meine normalerweise externe Festplatte sda nun ab kann der Rechner nicht mehr booten.
Heißt das nun der MBR befindet sich auf sda3?
Wie kann ich den MBR auf sdb1 kopieren? (Testdisk?)

Ich hoffe es gibt da eine geeignete Möglichkeit das Problem zu beheben und meine sdb1 als primäre Disk mit MBR zu betreiben, ohne das ich die andere Festplatte angeschlossen lassen muss.

Vielen Dank für Eure Mühe und Hilfe!

Viele Grüße

Tim
 
AW: MBR verschieben/neu einrichten (!?)

Was hast du für Vorstellungen vom MBR ? Jede Platte hat ihren eigenen MBR.Das heißt es gibt einen für sda und einen für sdb.

Der MBR liegt nicht auf einer Partition; d.h., er befindet sich weder auf sda3, noch kann man ihn auf sdb1 kopieren.

Ist denn auf der Festplatte sdb die OS-Partition überhaupt aktiv gesetzt ? Poste mal die Partitionstabelle von sdb.
 
AW: MBR verschieben/neu einrichten (!?)

Du musst die Bootdateien von Windows (Ntldr, Ntdetect.com und Boot.ini) rüberkopieren und eventuell die Boot.ini entsprechend anpassen. Dann solltest du von dieser Platte booten können, wenn im BIOS das richtige Laufwerk als 1st-Boot-Device ausgewählt ist.
 
@Kuhni Lingus
Hatte tatsächlich etwas falsche Vorstellungen!
@Madnex
Wo finde ich die Bootdateien? Wie gesagt, die anderen Festplatten sind augenscheinlich leer. Da sind die Dateien nirgends drauf. Weil auf der Festplatte (sdb) wo ich vorher das System drauf hatte die Partitionen gelöscht sind (noch nichts formatiert).
Danke!
 
Also in Testdisk ist es tatsächlich so, dass meine sda garnicht bootfähig ist. Nur die sdb ist bootfähig. Kann ich mit Testdisk die sdb deleten (soll ja danach formatiert werden) und der sda 'nen neuen MBR schreiben?
 
Der Bootvorgang startet vom BIOS (bootorder) über den MBR (bootcode) und die Startdateien (NTLDR, Boot.ini und NTDETECT.COM). Die genannten Dateien finden sich auf C:\ und sind im Explorer i.d.R. nicht sichtbar (unter den Einstellungen Systemdateien anzeigen lassen). Ein NT also auch XP läßt sich von nahezu jedem Laufwerk starten, dazu muß die Partition noch nicht einmal eine primäre sein. Selbst mit den drei genannten dateien auf einer Floppy läßt sich ein NT (also auch XP) von einer beliebigen Partition booten. Bis zum NT4 konnte man das ganze installierte OS auf eine beliebige Partition kopieren, den ARC-Path in Boot.ini anpassen und schon lief es auch von dieser Partition (im Kern geht es noch immer). NTLDR ist der eigentliche Loader für das NT, er 'interpretiert' die Boot.ini den 'Ort' des OS. Ntdetect ist quasi der Treiber und kann z.B. bei 'exotischen' Mass-Storage-Controllern den Treiber dafür enthalten.
 
Hey, danke für die Erklärung! Nur was muss ich denn jetzt genau tun, um ohne meine "externe" HDD starten zu können? Die ist ja schließlich auch nicht immer angeschlossen!

Die Dateien kopieren geht nicht, weil die sich auf den anderen Platten nicht auffinden lassen!
 
Öffne den Explorer (Nicht Internet Explorer!), dann klicke auf "Extras -> Ordneroptionen... -> Ansicht" und entferne das Häkchen bei "Geschützte Systemdateien ausblenden (empfohlen)". Unter "Versteckte Dateien und Ordner" musst du noch "Alle Dateien und Ordner anzeigen" auswählen. Nach der Übernahme der neuen Einstellung solltest du die Dateien sehen können.

/Edit
Die Ntldr und die Ntdetect.com findest du auch auf deiner Windows CD im i386 Ordner.
 
Zuletzt bearbeitet:
[boot loader]
timeout=1
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect /NoExecute=OptIn

So, die hab ich jetzt zusammen mit den beiden anderen auf C: kopiert. Hier fehlen nur noch die Anpassungen, da kenn ich mich unter Windows leider garnicht mit aus.
Also booten funktioniert jetzt noch nicht.

Danke schonmal :)
 
Der Master Boot Record steht normal in den ersten 468 Bytes Plus 64Bytes Offset mit Bootloader. Wenn du aber mit Grub oder sontigen Programmen den MBR auf eine "Partition gelegt hast" ist das schlecht aber normalerweise ist nur ein Startrecord der auf die Partition verweißt. Sprich der MBR auf sda müsste auf den von sdb aber da ist das Problem den jede Platte hat eine differentielle Anzahl C/H/S und Blockgröße. Wenn du von sdb1 starten willst und du Linux verwendest, installiere Grub und den Kernel dort hin und installiere Grub im MBR von sdb und stelle grub ein das er sdb1 bootet...
 
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect /NoExecute=OptIn

Hab diese Änderung vorgenommen und nun funktioniert es. Grub o. Lilo sind nicht installierst!

Vielen Dank für Eure Hilfe!!
 
Was du genau ändern musst, kann ich dir auch nicht sagen (evtl. experimentieren). Aber das geht auch anders.

Als erstes solltest du die IDE Festplatte entfernen. Boote von deiner Windows CD und lade die Wiederherstellungskonsole. Mit dem Befehl bootcfg (+ Paramter) kannst du eine neue Boot.ini erstellen lassen, nach installierten Windows Versionen suchen lassen und diese in die Boot.ini eintragen lassen.

Mit den Befehlen FixMBR und Fixboot kannst du fehlende Dateien hinzufügen und fehlerhafte Einträge korrigieren lassen.

Nähere Informationen über die Wiederherstellungskonsole findest du hier: klick!

/Edit
ok, zu spät...
 
Zuletzt bearbeitet:
caniac schrieb:
und nun funktioniert es.

Das ist dann ja schon mal gut gelaufen. Die Recovery-Shell (vom Installationsmedium boten, bzw. via <LW>:\i386\Winnt(32).exe /cmdcons auf die Platte installieren) biete ein paar nütliche Tools um sich ein Überblick zu verschaffen bzw. sogar die Boot.ini zu erzeugen. Mit Bootcfg (plus entsprechenden Options) kann man sie sie lesen, anzeigen und erneuern etc.. Im Zusammenhang mit Bootcfg ist auch noch das Kommando Map hilfreich.
 
@Mueli

Der Bootvorgang startet vom BIOS (bootorder) über den MBR (bootcode) und die Startdateien (NTLDR, Boot.ini und NTDETECT.COM)...

Im Prinzip gute Beschreibung.Aber ein Zwischenschritt fehlt noch; der MBR-Bootcode sucht in der Partitionstabelle nach der aktiven Partition und ruft den ersten logischen Sektor dieser Partition auf.Das ist der Bootsektor des jeweiligen Systems, indem - bei XP- wiederum ein Aufruf der ntldr enthalten ist.

@Madnex

Mit den Befehlen FixMBR und Fixboot kannst du fehlende Dateien hinzufügen und fehlerhafte Einträge korrigieren lassen

fixmbr schreibt den Bootcode des MBR neu, fixboot den Bootsektor des NT-Systems.Dateien werden dabei aber nicht hinzugefügt.
 
Kuhni Lingus schrieb:
Aber ein Zwischenschritt fehlt noch; der MBR-Bootcode sucht in der Partitionstabelle nach der aktiven Partition
Naja, es fehlt schon noch mehr, z.B. das bereits in dem Stadium Teile der Registry (Hardware Profiele etc.) gelesen werden und u.U. auch eine Datei Namens Ntbootdd.sys unter C:\ zu finden sein könnte und deren Ausgabe. Wer da weitere Informationen sucht, wird sie im Technet finden, M$ stellt da ja so gut wie alles Online.
 
Naja, es fehlt schon noch mehr, z.B. das bereits in dem Stadium Teile der Registry (Hardware Profiele etc.) gelesen werden
Welches Stadium meinst du ?

Das Einlesen der Teile aus der Registry wird durch ntldr ausgelöst.

Mir ging es nur um den Startprozess bis zum Laden von ntldr.
 
Zurück
Oben