Como posso recuperar um setor MBR / boot perdido?

2

Eu tinha um VDI (VirtualBox Virtual Disk Image) com o Ubuntu 11.10 (64bit, eu acho) instalado nele. Anteriormente, enquanto rodava um CD ao vivo do GPart na minha máquina virtual para apagar a tabela de partições de outro disco, acabei removendo inadvertidamente a tabela de partições do meu Ubuntu VDI em vez do outro disco (eu sei, foi estupidez da minha parte não ser 100% de certeza de qual disco eu estava trabalhando antes de prosseguir, mas eu tinha feito isso muitas vezes antes que eu nem sequer pensei em verificar).

Depois de me recompor, tentei encontrar uma maneira de me recuperar do dano. Consegui recuperar minha partição /dev/sda1 e a partição swap (embora estivesse fora da partição estendida em que estava antes) usando TestDisk .

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

Eu tentei instalar o MBR do TestDisk no disco e agora, quando eu executava a VM, ele exibia o prompt MBR do TestDisk. Quando eu disse para iniciar a minha partição do Ubuntu, no entanto, ele continuou exibindo essa tela preta.

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

EDIT: 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 absoluta disso (e, por favor, desculpe minha ignorância se estiver errado), mas acho que pode ser uma anomalia que /dev/sda1 comece em 2048 . Não deveria começar em 0 ?

    
por Gabriele Cirulli 29.05.2012 / 20:28

1 resposta

3

Eu encontrei uma solução para esse problema. Aqui estão os passos que tomei para referência futura e na esperança de que isso possa ajudar aqueles que encontram o mesmo problema.

  • Eu baixei uma versão Live CD do Ubuntu 11.10 (certifique-se de baixar o amd64 Live CD se o seu sistema for de 64 bits) .
  • Eu iniciei no Live CD, pedi para experimentar o Ubuntu e abri uma nova janela de terminal.
  • Seguindo vagamente o guia publicado aqui , Eu corri 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 causariam alguns erros se não fossem executados)
    • sudo chroot /mnt
  • Quando eu estava em root , eu corria:
    grub-install /dev/sda .

O último comando disse que tudo estava bem e funcionando. Eu reiniciei a máquina virtual e estava de volta na minha instalação do Ubuntu, como se nada tivesse acontecido.

    
por 30.05.2012 / 00:33