Migrando o Windows 7 do BIOS-MBR para o BIOS + GPT

0

Eu tenho um sistema baseado em BIOS executando o Windows 7 em um disco rígido de 1 TB particionado por MBR. Este HDD é particionado da seguinte forma:

  • P0: 60 GB de NTFS para Windows e arquivos de programa
  • P1: 940 GB de NTFS para dados

Como este disco estará cheio, meu objetivo é migrar a instalação existente para um novo HDD de 3 TB, com as seguintes partições:

  • P0: 60 GB NTFS iguais a 1B / P0
  • P1: 2940 GB NTFS com o conteúdo de 1TB / P1, além de mais espaço livre

Como esta partição é > 2TB, MBR não pode manipulá-los e eu mudo a tabela de partição de 3TB HDD para GPT mas:

  • O Windows 7 não pode ser inicializado a partir de sistemas BIOS + GPT

Então eu investiguei aqui e parece que o GRUB é capaz de inicializar o Windows 7 a partir de discos GPT com um truque: um arquivo MBD virtual (VHD) formatado em MBR que contém os arquivos de inicialização do Windows que, uma vez carregados, carregam o Windows da partição GPT. >

Então eu fiz o seguinte:

  • P0: partição especial do GRUB de 1 MiB para sistemas GPT (consulte aqui , instalado por grub-install a partir de uma imagem do Linux ao vivo)
  • Partição
  • P1: 120MiB ext2 para hospedar arquivos GRUB (grub.cfg f.e.) e os arquivos bootmgr.vhd
  • P3: partição de 60 GB NTFS em que copiei todos os arquivos de 1 TB / Partição 0
  • P4: 2940 GB (ou um pouco menos) da partição NTFS em que copiei todos os arquivos de 1 TB / Partição 1

No VHD, há uma partição MRB NTFS com os arquivos de inicialização do Windows gerados com comandos:

bootsect /nt60 b: /mbr
bcdboot c:\Windows /s b: (NOT with /mbr flag as it's a GPT disk)

em que B é o arquivo VHD e C é uma instalação do Windows 7 x64 em execução em uma VM. A partição VHD é definida como primária e ativa.

Para evitar também alguns outros problemas, eu também gerou nos novos 3TB / P3 os arquivos de inicialização com:

bootsect /nt60 e:
bcdboot c:\Windows /s e:

Onde E é a partição 3TB / P3.

Eu tentei inicializar com o grub usando este grub.cfg editado manualmente:

menuentry "Win7 root+chain" {
    set root=(hd0,gpt3)
    chainloader +1
}

menuentry "Win7 vhd+chain" {
    loopback loop (hd0,gpt2)/boot/bootmgr.vhd
    chainloader +1
}

O primeiro me dá uma mensagem do Gerenciador de inicialização do Windows:

"Error 0xc000000e File:\Boot\BCD Message: An error occoured while attempting to read the boot configuration data"

O segundo parece uma mensagem do Grub

"Invalid signature"

Você pode por favor me ajudar? Estou fazendo algo errado com o Grub?

    
por Fuzzo 12.12.2016 / 14:34

1 resposta

2

Esta resposta resume os comentários no post de uma maneira mais ordenada.

Embora nenhuma resposta tenha sido recebida por fazer o Grub funcionar nesse contexto, Eu descobri que o BIOS da placa-mãe em questão, MOPNV10J, suporta UEFI, como respondido ( link ) por uma pessoa da Intel chamada Dan.

Com o suporte a UEFI, o disco de 3 TB pode ser formatado como GPT e o disco inteiro então se torna endereçável.

Como o BIOS do pôster não oferece suporte a UEFI, a questão agora se torna como atualizá-lo para a última Versão 0542 .

Acontece que a atualização para essa versão precisa ser feita em duas etapas:

  1. Atualize o BIOS para Versão 0400
  2. Atualize o BIOS para Versão 0542

Antes de começar, verifique primeiro se você tem a mídia de instalação para o seu versão atual do BIOS, chamada "Recovery BIOS Update" nas notas de lançamento. Caso contrário, uma atualização modificada do BIOS pode bloquear o computador.

    
por 15.12.2016 / 21:47