O Windows 8 não aparece no Grub

0

Estou tentando fazer com que o Windows 8 apareça no meu menu do Grub.

  • CPU: Intel 4790k
  • MB: BIOS do UEFI do Asus Hero VII
  • GPU: EVA 970GTX
  • SSD 250G 850 Samsung Evo
  • SSD 120G 850 Samsumg Evo

Eu tenho o Windows instalado em /dev/sda e o Ubuntu 14.0.4.02 em /dev/sdb .

O Ubuntu também foi configurado com uma partição de inicialização EFI.

Eu corri o reparo de inicialização com a partição de inicialização EFI ativada e o Ubuntu como o sistema operacional padrão.

    
por Elliot 23.04.2015 / 15:02

2 respostas

1

Você tem dois discos:

  • /dev/sda é um disco MBR que contém o Windows e possui o carregador de inicialização do BIOS do Windows no MBR.
  • /dev/sdb é um disco GPT com uma partição de sistema EFI (ESP). O ESP possui o GRUB e o carregador de boot do Windows EFI, e o MBR contém o carregador de inicialização do GRUB de primeiro estágio.

Observe que você tem carregadores de inicialização BIOS e EFI para Windows e Linux, portanto, não está claro como um dos seus sistemas operacionais está sendo inicializado - no modo BIOS ou no modo EFI. Dado que o Windows está instalado em um disco MBR, meu palpite é que ele foi instalado (e deve inicializar) no modo BIOS; mas é possível que ele esteja inicializando no modo EFI, já que você parece ter um gerenciador de inicialização do Windows EFI no seu ESP, mesmo que esteja no outro disco. (OTOH, esses arquivos podem ter sido colocados lá pelo Boot Repair, que às vezes "seqüestra" esses nomes para cópias do GRUB.) Tanto o seu Boot Repor quanto suas saídas do Boot Info Script incluem efibootmgr runs, o que indica que eles foram executados uma inicialização no modo EFI; mas parece que eles podem ter sido executados a partir de um live CD, então isso não é necessariamente um diagnóstico de como sua instalação normal é inicializada. Seu arquivo grub.cfg possui alguns recursos específicos da EFI, o que também sugere uma instalação no modo EFI do Ubuntu, mas isso pode ser enganoso.

Desvendar esta configuração é possível, mas seria bastante complicado. Existe um atalho em potencial:

  1. Faça o download da unidade flash USB ou da versão em CD-R do meu gerenciador de inicialização do rEFInd.
  2. Prepare uma mídia de inicialização a partir dos arquivos que você baixa.
  3. Inicialize o meio rEFInd. Seu menu deve aparecer, mostrando opções para o Ubuntu e o Windows. Note que o ponto de usar o rEFInd até aqui (e nos próximos passos) é garantir que o Ubuntu inicialize no modo EFI e não no modo BIOS / CSM / legado.
  4. Teste as opções de inicialização. Espero que pelo menos uma opção do Ubuntu seja inicializada normalmente, mas o Windows está no ar. (A opção pode iniciar e depois travar ou apresentar uma mensagem de erro.)
  5. Se o rEFInd puder inicializar o Ubuntu normalmente, e especialmente se ele também puder inicializar o Windows, instale o pacote rEFInd PPA ou Debian no Ubuntu.
  6. Reinicialize com a unidade USB redirecionada ou o CD-R removido. rEFInd deve aparecer, inicializado em seu disco rígido.
  7. Inicialize o Ubuntu a partir do rEFInd.
  8. Se o rEFInd não inicializar o Windows, edite o arquivo /boot/efi/EFI/refind/refind.conf : Remova o comentário da linha scanfor e assegure-se de que hdbios esteja entre as opções. Esta ação ativa o suporte do rEFInd para alternar do modo de inicialização EFI para o modo de inicialização do BIOS. A idéia é fazer com que o rEFInd mostre uma opção para inicializar o Windows no modo BIOS / CSM / legado.
  9. Ao reiniciar, você verá uma nova opção em forma de diamante cinza com um emblema de disco rígido. Com alguma sorte, isto irá inicializar o Windows (no modo BIOS / CSM / legado).
  10. Se a nova opção do BIOS / CSM / herdado não inicializar o Windows, remova o comentário da opção uefi_deep_legacy_scan de refind.conf e tente novamente.

Observe que você pode atrasar a instalação do rEFInd em seu disco rígido e editar o arquivo EFI/refind/refind.conf na unidade flash USB se quiser testar a capacidade do rEFInd de inicializar o Windows no modo BIOS / CSM / legado. Você pode fazer isso se quiser ter certeza de que o rEFInd pode inicializar ambos os sistemas operacionais antes de instalá-lo.

O resultado final é que você inicializará o Ubuntu no modo EFI e o Windows no modo EFI ou no modo BIOS, o que for usado para sua instalação. Você pode ter opções extras de inicialização no menu do rEFInd, mas você pode apará-las com mais edições em refind.conf . Em particular, você usaria dont_scan_files , dont_scan_dirs ou dont_scan_volumes . Você também pode excluir arquivos de inicialização sem sentido, como, por exemplo, se os arquivos de inicialização "Windows" ( /boot/efi/EFI/Microsoft/Boot/*.efi ) forem cópias do GRUB criadas pelo Reparo de inicialização.

    
por Rod Smith 23.04.2015 / 19:20
0

Eu consegui descobrir isso, mas tive que reinstalar o Windows 8.1 e o Ubuntu 14.04. Eu tinha que garantir que ambos os sistemas operacionais estivessem instalados no UEFI desabilitando o CSM e inicializando do modo UEFI.

Eu também segui este guia:

link

Muito obrigado pela ajuda de todos, especialmente pela @Rod Smith por esclarecer minha situação de bootloader.

    
por Elliot 24.04.2015 / 12:45