Completamente bagunçado grub / efi / gpt dual boot

3

Parece que eu quase estraguei tudo na minha máquina. Eu estava tentando instalar um liveusb do Ubuntu no meu disco rígido externo, mas no processo eu estraguei minha configuração interna. O externo funciona;)

É um sistema de dual boot, e originalmente veio com o win8 mais um monte de partições de recuperação do Lenovo / windows. Tem um híbrido SSD de 24GB também. Eu tinha o safeboot desativado antes, e instalei o Ubuntu 13.04, e recentemente atualizei para o 14.04. Estava funcionando bem até minha pequena desventura. Todos os meus sinalizadores de inicialização parecem estar mudando constantemente agora também. Eu não tenho certeza do porquê.

Saída do boot-repair (que não me permite escolher / dev / sda2 ou / dev / sda11, apenas sda8 (que é minha partição inicial?). Eu tentei mesmo assim. Ela disse que foi bem sucedida, mas não faça qualquer coisa obviamente.

link

Minhas (muitas) partições são as seguintes:

/ dev / sda1 - WINRE_DRV (1000 mb ntfs, flags: oculto, diag)

/ dev / sda2 - essa foi a minha partição EFI original, eu acho (originalmente rotulada como SYSTEM_DRV e formatada como fat32, mas agora é um sistema de arquivos não reconhecido).

/ dev / sda3 - desconhecido, msftres ??

/ dev / sda4 - SO Windows8 (68GB ntfs, sinalizadores: msftdata)

/ dev / sda11 - Eu criei isso como fat32 com o sinalizador 'boot', na esperança de criar outra partição efi e movê-la, mas ela não parece ser reconhecida por boot-repair.

/ dev / sda5 (350 mb, sinalizadores ntfs: hidden, diag) - Não tem ideia do que é isso.

/ dev / sda6 (20GB ext4, flags: oculto?) - minha partição do sistema para o Ubuntu. Não sei por que agora tem uma bandeira "oculta".

/ dev / sda7 - troca de 4 GB

/ dev / sda8 - minha partição inicial para o Ubuntu (75gb ext3, flags: msftdata)

/ dev / sda10 - partição de dados compartilhados ntfs de 290 GB (flags: msftdata)

/ dev / sda9 - Recuperação da Lenovo (10GB ntfs, flags: hidden, diag)

Algo está seriamente estragado aqui. Eu prefiro preferir não reformatar. Eu li a maioria dos artigos sobre UEFI e GPT, etc, mas não consigo consertar o meu problema e, na verdade, parece estar piorando ainda mais.

Também é possível que o livecd grub não esteja usando os arquivos corretos? Ele tenta instalar com i386-pc, quando eu pensei que deveria estar usando algo como x86_64-efi-assinado ou algo assim.

Alguém poderia me ajudar a passar por isso?

Editar:

Ok, então eu baixei e instalei o rEFInd no windows e fiz um USB inicializável com ele, o que me permitiu inicializar no meu sistema operacional Linux atual e não no LiveCD. A partir daí eu pude usar o boot-repair corretamente para instalar o grub (para / dev / sda11) e para inicializar / dev / sda6.

O problema com o reparo de inicialização antes era que ele não detectou minha partição EFI, então ele estava tentando instalar o non-efi em meu / dev / sda6 (provavelmente porque eu estava fazendo isso de um liveecd). Parece ser um problema com o grub que vem com o Ubuntu14.04, porém, que não tem suporte EFI ou algo assim?

De qualquer forma, agora tenho o EFI em / dev / sda11, mas tenho duas partições desconhecidas (sda2 e sda3). O que foi sda3 em primeiro lugar? E o que posso fazer com o sda2 e os arquivos nele (como para o material de recuperação da Lenovo)? Posso simplesmente excluir essas partições ou isso causará mais problemas?

Finalmente, é só uma questão de executar a recuperação do Windows agora ? Eu imagino que vai quebrar meu Ubuntu e grub novamente.

Obrigado!

    
por Jordan 22.04.2014 / 05:03

1 resposta

1

Primeiro, você está perdendo uma partição do sistema EFI (ESP), que é usada para manter os carregadores de inicialização EFI. A maioria dos computadores fornecidos com o Windows 8 usa /dev/sda2 como o ESP, e seu /dev/sda2 tem o tamanho certo para isso; mas seu /dev/sda2 possui um sistema de arquivos Linux e não possui carregadores de inicialização EFI. Meu palpite é, portanto, que você acidentalmente destruiu seu ESP, tornando o computador não inicializável.

Relacionado ao primeiro ponto, você parece não ter nenhum programa de gerenciador de inicialização EFI no seu disco rígido ou no seu SSD.

Seu /dev/sda11 é do tamanho certo para ser um ESP e tem um sistema de arquivos FAT (que um ESP deve ter), mas está marcado como Partição de inicialização do BIOS.

Como primeiro passo, você deve criar um ESP apropriado. Existem duas maneiras relativamente fáceis de fazer isso:

  • Ajuste o código do tipo em /dev/sda11 . No GParted, você pode fazer isso removendo o "sinalizador bios_grub" e definindo o "sinalizador de inicialização". Em gdisk , você faria isso definindo o código de tipo como EF00 .
  • Ajuste o código do tipo em /dev/sda2 e torne-o FAT32. No GParted, você faria isso definindo um "boot flag" e criando um sistema de arquivos FAT32. Em gdisk , você definiria o código de tipo como EF00 e, em seguida, usaria o utilitário mkdosfs separado para criar um sistema de arquivos FAT32 na partição.

Uma vez feito isso, você pode começar a recuperação. Em teoria, você pode usar o Boot Repair para executar a tarefa, pelo menos para o Linux; mas como parece que o levou ao caminho errado antes, você pode querer fazer algo diferente:

  1. Faça o download e prepare uma unidade flash USB inicializável ou uma versão em CD-R do meu gerenciador de inicialização do rEFInd.
  2. Inicialize com o rEFInd. Ele deve mostrar pelo menos uma opção para inicializar o Linux.
  3. Inicialize no Linux.
  4. Abra uma janela do Terminal.
  5. Edite seu arquivo /etc/fstab para montar seu ESP ( /dev/sda2 ou /dev/sda11 ) em /boot/efi .
  6. Digite sudo mount -a .
  7. Digite df -h e verifique se há uma linha para /boot/efi , mostrando a partição correta montada. Se não, volte para o passo 5.
  8. Baixe e instale a versão do pacote Debian do rEFInd.

Neste ponto, o rEFInd deve permitir que você inicialize o Linux. Sua instalação do Windows permanecerá não inicializável até que você execute uma ferramenta de recuperação do Windows. Você deve ser capaz de baixar algo do site da Microsoft para reparar o gerenciador de inicialização do Windows, mas por acaso não tenho um URL ou instruções úteis. Eu recomendo que você pergunte em um site do Windows se você tiver problemas com esta parte da tarefa. Observe que, depois de terminar, o carregador de inicialização do Windows será definido como padrão, portanto, será necessário alterá-lo. Você pode seguir as etapas 2 e 10-11 em este procedimento ou usar a unidade flash USB para inicializar Linux e reinstale o rEFInd de lá. Como alternativa, você pode reparar o Windows antes de reparar o Linux, mas será necessário corrigir o ESP antes de executar um reparo específico do sistema operacional.

    
por Rod Smith 22.04.2014 / 15:01