Как восстановить утерянный MBR/загрузочный сектор?

Как восстановить утерянный MBR/загрузочный сектор?

У меня был VDI (VirtualBox Virtual Disk Image) с установленной на нем Ubuntu 11.10 (64-битной, я думаю). Ранее, запуская GParted Live CD на моей виртуальной машине, чтобы стереть таблицу разделов другого диска, я случайно удалил таблицу разделов моего Ubuntu VDI вместо другого диска (я знаю, было глупо с моей стороны не быть на 100% уверенным в том, с каким диском я работаю, прежде чем продолжить, но я делал это так много раз, что даже не подумал проверить).

Собравшись с мыслями, я попытался найти способ восстановиться после повреждения. Мне удалось восстановить /dev/sda1раздел и раздел подкачки (хотя он теперь был вне расширенного раздела, в котором он был раньше) с помощьюТестДиск.

Проблема в том, что теперь при загрузке VDI я вижу просто черный экран без каких-либо подсказок и признаков жизни.

Я попытался установить MBR TestDisk на диск, и теперь, когда я запускал VM, она отображала приглашение TestDisk MBR. Однако, когда я сказал ему загрузиться в мой раздел Ubuntu, он продолжал отображать этот черный экран.

Есть ли способ преодолеть эту ситуацию?Я думаю, что проблема может быть в загрузочном секторе раздела (и теперь мне придется переустанавливать GRUB или что-то еще поверх MBR).


EDIT: Вот некоторая дополнительная информация.

fdisk:

user@debian:~$ sudo fdisk -l /dev/sda

Disk /dev/sda: 75.0 GB, 75019321344 bytes
255 heads, 63 sectors/track, 9120 cylinders, total 146522112 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: 0x000e56c7

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   129746943    64872448   83  Linux
/dev/sda2       129746944   146518015     8385536    5  Extended
/dev/sda5       129748992   146518015     8384512   82  Linux swap / Solaris

Я не совсем уверен в этом (и прошу прощения за мою неосведомленность, если я не прав), но я думаю, что это может быть аномалия, которая /dev/sda1начинается в 2048. Разве она не должна начинаться в 0?

решение1

Я нашел решение этой проблемы. Вот шаги, которые я предпринял для справки в будущем и в надежде, что это поможет тем, кто столкнется с той же проблемой.

  • Я загрузил Live CD-версию Ubuntu 11.10(убедитесь, что вы загрузили amd64 Live CD, если у вас 64-битная система).
  • Я загрузился с Live CD, попросил попробовать Ubuntu и открыл новое окно терминала.
  • Вольно следуя опубликованному руководствуздесь, я выполнил следующие команды:
    • sudo mount /dev/sda1 /mnt
    • sudo mount --bind /dev /mnt/dev
    • sudo mount --bind /proc /mnt/proc
    • sudo mount --bind /etc /mnt/etc
    • sudo mount --bind /sys /mnt/sys
      (некоторые из них могут быть излишними, но я обнаружил, что некоторые программы выдают ошибки, если их не запустить)
    • sudo chroot /mnt
  • Когда я был вкорень, я побежал:
    grub-install /dev/sda.

Последняя команда сказала, что все в порядке и работает. Я перезагрузил виртуальную машину и вернулся в свою установку Ubuntu, как будто ничего и не произошло.

Связанный контент