Fix Windows MBR mit Ubuntu Live CD und MS-Sys Tool


12

Ich versuche, den MBR mit Ubuntu Live-CD zu reparieren. Ich habe die ms-sys bereits installiert, aber von den Threads, die ich gesehen habe, bin ich nicht ganz sicher, in welcher / dev ich den Befehl ausführen soll:

sudo ms-sys --mbr7 /dev/???

(Ist mbr7 die richtige Option, wenn Sie Windows 7 verwenden?)

ubuntu@ubuntu:~$ sudo fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x1f205b1f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          38          38           0    0  Empty
/dev/sda2   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda3          206848   155854847    77824000    7  HPFS/NTFS/exFAT
/dev/sda4       155854848   625137663   234641408    7  HPFS/NTFS/exFAT
ubuntu@ubuntu:~$ 

Warum ist /dev/sda1leer?

Ich versuche, den MBR zu reparieren, da beim Laden des Betriebssystems ein schwarzer Bildschirm angezeigt wird.

Antworten:


7

Zum Wiederherstellen des MBR wird eine Windows-CD akzeptiert. Wir hatten diesen Luxus nicht. Zum Glück hatten wir einen Ubuntu Live USB in der Hand.

Die Methode zur Behebung des MBR ist:

  1. Booten Sie den Computer über die Live-USB / CD.
  2. Installieren Sie lilo sudo apt-get install lilo
  3. Beheben Sie den MBR mit lilo mit dem folgenden Befehl: sudo lilo -M /dev/sda mbr

Klappt wunderbar!


1
BG-Rescue Linux hat auch LILO und ist nur 4 MB
Steven Penny

4

Erstens scheint Ihre Partitionstabelle über zwei aktive Partitionen zu verfügen, die möglicherweise den Start Ihres Computers verhindern, selbst wenn Sie das Problem des MBR beheben.

Der MBR-Start von Windows ist etwas unkonventionell, da ein "Standard" -MBR zum Laden des MBR der aktiven Partition verwendet wird. Versuchen Sie vor dem Ändern der Startdatensätze, die Markierung einer der Partitionen aufzuheben und den Computer zu starten.

Wenn das nicht funktioniert, ist das Paket mbrmöglicherweise einen Blick wert. Es ist in der Lage, den "Standard" MBR auf Ihrer Festplatte zu installieren, wodurch nur der Boot-Code von der aktiven Partition geladen wird.

Lesen / befolgen Sie diese Punkte gemäß Ihrer Frage auf eigenes Risiko. Dieses Zeug hat die Fähigkeit, Ihre Partitionstabelle durcheinander zu bringen. Sichern Sie es zuerst mit dd if=/dev/sda of=table.bin bs=512 count=1. Ich würde auch empfehlen, alle Ihre Dateien zu sichern. Wenn ich die Dokumente richtig verstehe, kann das Ausführen dieser Befehle -wohne zusätzliche Benutzereingriffe dazu führen, dass sie nichts schreiben.

  • ms-sys /dev/sda prüft die Festplattenpartitionen
  • Bitte lesen Sie die Dokumentation hier . Soweit ich weiß, ms-syskann dies ziemlich gefährlich sein und wurde entwickelt, um Ihren gesamten MBR zusammen mit der Partitionstabelle in verschiedenen Situationen auszulöschen. Anscheinend verwenden Sie das falsche Dienstprogramm für den Job.
  • ms-sys --ntfs /dev/sdaXWo sdaXbefindet sich Ihre Partition mit Windows 7 darauf? Dies könnte tun, was Sie erwarten, aber wahrscheinlich nicht.

Ich denke, Sie haben das falsche Dienstprogramm für den Job hier. Dadurch werden MBRs nicht "repariert", sondern zerstört und erstellt. Sie können sich glücklich schätzen und die neue Partitionstabelle mit der neuen Partitionstabelle ausrichten lassen, aber ich würde nicht damit rechnen. Versuchen Sie, eine Grub-CD zu booten, geben Sie chainloader (hd0,<win7 partition>)+1an der Eingabeaufforderung ein und prüfen Sie, ob sie startet. Dies hilft bei der Diagnose, wo sich Ihr Problem befindet. Wenn dies nicht möglich ist, beheben Sie den MBR mit Ihrer Windows-Installation dist.


2

Hier sind die beiden Lösungen, die für mich gearbeitet haben.

Booten Sie Linux und stellen Sie sicher, dass Sie eine funktionierende Internetverbindung haben. Geben Sie auf dem Terminal Folgendes ein.

1. Lösung

sudo apt-get install syslinux

Wenn das Paket installiert wurde, schreiben Sie den MBR mit dem folgenden Befehl:

sudo dd if=/usr/lib/syslinux/mbr.bin of=/dev/sda

2. Lösung

sudo apt-get install mbr

Wenn das Paket installiert wurde, schreiben Sie den MBR wie folgt.

sudo install-mbr -i n -p D -t 0 /dev/sda

Gemeinsam für beide

Ersetzen Sie sda, wenn Sie den MBR auf einem anderen Laufwerk installieren möchten. Legen Sie nicht sda1, sda2oder sda3. Legen Sie es einfach wie sdafür die Festplatte. Schließlich neu starten und Ihr Windows sollte booten.


Wird dddie gesamte löschen sdaPlatte?
Pavel Vlasov
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.