Wie kann ich den Bootcode eines MBR auf Null setzen?

Wie kann ich den Bootcode eines MBR auf Null setzen?

Ich habe zwei Laufwerke in meinem Windows-System:

  • Laufwerk 1, System und Boot.
  • Laufwerk 2, Datenspeicher.

Vor einiger Zeit hatte ich Windows auf dem zweiten Laufwerk installiert. Jetzt, da ich das aktuelle Setup habe, möchte ich den Bootcode von Windows aus dem Bootsektor auf Laufwerk 2 entfernen. Genauer gesagt möchte ich die Partitionstabelle oder irgendetwas anderes nicht löschen, sondern nur den kleinen Code loswerden (auf Null setzen), der nach NTLDR sucht.

Gibt es hierfür eine Software oder einen Befehl?

Antwort1

Der MBR ist bei Partitionstabellen im DOS-Stil immer als sehr kleine Sammlung von Sektoren am Anfang des Laufwerks auf dem Laufwerk vorhanden.

Es ist nichts, was man loswerden kann, da es neben dem Bootcode auch die Partitionstabelle Ihres Laufwerks enthält. Wenn Sie diese verlieren, ist es plötzlich viel schwieriger, an die Daten auf Ihrer Festplatte zu gelangen, obwohl sie intakt sind (die meisten Betriebssysteme, die ich kenne, melden eine fehlerhafte Formatierung und Windows fragt, ob Sie das Laufwerk formatieren möchten, wenn es die Partitionstabelle nicht versteht).

Mehr Info:http://technet.microsoft.com/en-us/library/cc976786.aspx

Bearbeiten: Da Sie die Frage bearbeitet haben, werde ich meine Antwort aktualisieren. dd kann sie löschen. Booten Sie eine Linux-Live-CD und führen Sie auf Ihrem nicht gemounteten Datenlaufwerk Folgendes aus:

dd if=/dev/<path to data drive> of=/dev/<somewhere safe on windows drive>/mbr.img bs=512 count=1

Dadurch erhalten Sie ein 512 Byte großes Backup des MBR einschließlich der Partitionstabelle, falls etwas schief geht.

So löschen Sie den 446-Byte-Bootstrap:

dd if=/dev/zero of=/dev/<path of data drive> bs=446 count=1 seek=0

Je nachdem, was Sie erreichen möchten, möchten Sie möglicherweise nur die ersten 440 Bytes des MBR löschen. Die 4 Bytes nach den ersten 440 Bytes enthalten die eindeutige Windows-Datenträgersignatur, die Sie möglicherweise beibehalten möchten. Um nur die ersten 440 Bytes zu löschen, verwenden Sie diesen Befehl:

dd if=/dev/zero of=/dev/<path of data drive> bs=440 count=1 seek=0

Antwort2

Es sollte in Ihrer Situation völlig ausreichen, es in der Datenträgerverwaltung als nicht aktiv zu markieren.

Antwort3

Ich bitte schon mal um Entschuldigung für die etwas komplizierte Antwort, aber ich verstehe nicht ganz, was Sie machen wollen (oder besser: Warum).

Ich glaube, Sie suchen nach dem FDISK /CMBRBefehl. Es gibt auch Dienstprogramme, die dieselbe Aufgabe ausführen, z. B. Paragon Partition Magic oder Boot/Partition Editor.

Was Sie tun möchten, ist, den MBR neu zu schreibenUndStellen Sie die Partition D: aufNicht-System(nicht aktiv, nicht bootfähig, kein B-Flag usw.).

Beachten Sie, dass FDISK /CMBR nur auf Nicht-Systemplatten ausgeführt werden sollte. Viele Bootloader installieren Code, dererforderlichum die Festplatte anschließend im richtigen Format oder mit der richtigen Geometrie zu „sehen“. Das Ersetzen durch einen Standardlader (was /CMBR tut) kann dazu führen, dass die Festplatte dann nicht mehr zugänglich ist, bis der vorherige Code wiederhergestellt ist.

Wenn Sie die Festplatte nicht mehr bootfähig machen müssen, weil sie die Startreihenfolge stört oder aus anderen Gründen (und beispielsweise statt des Bootvorgangs die Fehlermeldung „NTLDR nicht gefunden“ anzeigt), wäre es besser, die BIOS-Parameter für die Startgerätereihenfolge zu ändern oder ein FDISK-ähnliches Dienstprogramm zu verwenden, um alle Partitionen auf dieser Festplatte als Nicht-Systempartitionen zu markieren. Im Notfall sollte das Austauschen zweier Festplatten dasselbe Ergebnis erzielen.

Andernfalls gibt es „selektive Bootloader“ (z. B. GRUB), die Ihnen bei der Implementierung einer flexiblen Boot-Option helfen können (z. B. das Booten von Linux, Windows oder einem anderen Windows über einen Startmenübildschirm).

verwandte Informationen