Como posso recuperar um setor MBR/boot perdido?

Como posso recuperar um setor MBR/boot perdido?

Eu tinha um VDI (VirtualBox Virtual Disk Image) com Ubuntu 11.10 (64 bits, eu acho) instalado nele. Anteriormente, ao executar um live CD GParted em minha máquina virtual para apagar a tabela de partição de outro disco, acabei removendo inadvertidamente a tabela de partição do meu Ubuntu VDI em vez do outro disco (eu sei, foi estúpido da minha parte não ser 100% de certeza de qual disco eu estava trabalhando antes de continuar, mas já tinha feito isso tantas vezes antes que nem pensei em verificar).

Depois de me orientar, tentei procurar uma maneira de me recuperar dos danos. Consegui recuperar minha /dev/sda1partição e a partição swap (mesmo que agora estivesse fora da partição estendida em que estava antes) usandoTestDisk.

O problema é que agora, quando inicializo o VDI, recebo uma tela preta sem avisos nem sinais de vida.

Tentei instalar o MBR do TestDisk no disco e agora, quando executei a VM, ele exibiria o prompt do MBR do TestDisk. Quando eu disse para inicializar na minha partição do Ubuntu, ele continuou exibindo aquela tela preta.

Existe uma maneira de superar essa situação?Acho que o problema pode estar no setor de inicialização da partição (e agora também terei que reinstalar o GRUB ou algo no MBR).


EDITAR: Aqui estão algumas informações adicionais.

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

Não tenho certeza sobre isso (e desculpe minha ignorância se estiver errado), mas acho que pode ser uma anomalia que /dev/sda1começa em 2048. Não deveria começar em 0?

Responder1

Eu encontrei uma solução para este problema. Aqui estão as etapas que segui para referência futura e na esperança de que possam ajudar aqueles que enfrentam o mesmo problema.

  • Baixei uma versão Live CD do Ubuntu 11.10(certifique-se de baixar o Live CD amd64 se o seu sistema for de 64 bits).
  • Inicializei no Live CD, pedi para experimentar o Ubuntu e abri uma nova janela de terminal.
  • Seguindo vagamente o guia publicadoaqui, executei os seguintes comandos:
    • 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
      (alguns deles podem ser redundantes, mas descobri que alguns programas apresentariam alguns erros se não fossem executados)
    • sudo chroot /mnt
  • Quando eu estava comoraiz, eu corri:
    grub-install /dev/sda.

O último comando dizia que tudo estava bem e funcionando. Reiniciei a máquina virtual e voltei à instalação do Ubuntu, como se nada tivesse acontecido.

informação relacionada