UEFI de inicialização dupla Windows 7 e Ubuntu 12.04 (ambos de 64 bits). A entrada W7 não aparece no GRUB

8

Depois de tentar instalar os dois sistemas operacionais durante 2 dias, estou confuso e ficando bravo ... Tenho SSD 128 GB e HDD 500 GB ambos vazios. Meu laptop é o Asus K55VM. Suporte a BIOS UEFI.

O que eu fiz:

  1. Instale o novo SSD (Samsung 830 128GB)

  2. Use GParted no liveCD para criar uma nova tabela de partições (GPT) e criar 3 partições (no SSD) para diferentes propósitos:

    • Partição 1: 80 GB (w7);
    • Partição 2: 30 GB (Ubuntu 12.04 -Just / -);
    • Partição 3: 10 GB não utilizados (para extinção futura das outras partições)
  3. Instale o Windows 7 (com UEFI) na partição 1. Isso cria:

    • / dev / sda1 -> 100 MB para sistema (inicialização UEFI, eu acho) - FAT32
    • / dev / sda2 -> 100 MB aprox. para MSR
    • / dev / sda3 -> 79.800 MB aprox. para dados do Windows7

Neste ponto, tudo funciona bem. Eu tenho W7. Agora eu instalo o Ubuntu 12.04 amd64 (com UEFI) da seguinte maneira:

  1. Instale / na Partição 2 -> / dev / sda4 ext4 de 30 GB e no disco rígido eu instalo / home e troco.

  2. Seleciono o gerenciador de inicialização em / dev / sda1 (onde deveria ser a inicialização UEFI).

  3. Eu instalo atualizações e reinicializo.

Problema: Agora apenas aparece o menu grub com entradas do Ubuntu e não o Windows 7.

Solução alternativa encontrada : Quando ligo o laptop, antes de carregar o GRUB, pressione a tecla ESC e apareço a inicialização do BIOS, para que eu possa optar por inicializar a partição do Windows, a partição Ubuntu, o DVD, o USB, etc ... mas acho que não é o melhor maneira de inicializar diferentes sistemas operacionais.

Eu tentei: sudo update-grub2 sem sucesso.

O que eu posso fazer??

Joe
fonte

Respostas:

6

Encontre onde o carregador de inicialização do Windows reside, montando a partição efi:

sudo mount -t vfat /dev/sdx1 /mnt/efi/

E procure por bootmgfw.efi. Em seguida, encontre o UUID da unidade:

sudo grub-probe --target=fs_uuid /mnt/efi/EFI/Microsoft/Boot/bootmgfw.efi

Adicione este UUID a /etc/grub.d/40_custom:

menuentry "Windows x86_64 UEFI-GPT" {
    search --fs-uuid --no-floppy --set=root UUID
    chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

Finalmente corra update-grub.

jarondl
fonte
Você é meu herói sangrento !! Muito obrigado que funcionou muito bem. Você fez o meu dia =)
Joe
1
Para obter informações, o Boot-Repair teria adicionado a entrada em 1 clique. help.ubuntu.com/community/Boot-Repair
LovinBuntu
Exceto Boot-reparo não funciona no meu sistema ...
fccoelho
3

A solução do jarondl é perfeitamente boa, mas outra é usar um programa gerenciador de inicialização separado para selecionar entre o GRUB e o carregador de inicialização do Windows. Conheço três gerenciadores de inicialização EFI que você pode instalar:

  • rEFIt , que está disponível nos repositórios do Ubuntu. Observe que a versão do site da rEFIt não funciona em PCs baseados em UEFI, pois usa um formato de arquivo específico do Mac. Até a versão do Ubuntu tem várias pequenas falhas nos PCs baseados em UEFI. Idealmente, o rEFIt apresenta um bonito menu de inicialização da GUI (embora também tenha um modo de texto).
  • O rEFInd , que é uma versão atualizada do rEFIt, com correções para as várias falhas e extensões da UEFI, para trabalhar com o carregador de inicialização EFI interno de um kernel 3.3.0. Observe que bifurquei / mantenho o refEnd.
  • gummiboot, que é um gerenciador de inicialização somente em texto. (Este site continua esquecendo quem eu sou e se recusa a me deixar postar mais de dois hiperlinks como resultado, ou eu teria fornecido um.)

O rEFIt e o rEFInd detectam automaticamente outros carregadores de inicialização; portanto, depois de configurá-los, eles devem detectar o carregador de inicialização de qualquer sistema operacional e fornecer um menu. Ainda não experimentei o gummiboot, então não sei como é simples configurar, mas é conceitualmente semelhante ao rEFIt / rEFInd. O uso de qualquer um desses programas adiciona complexidade ao processo de inicialização; portanto, se o GRUB funcionar e você estiver satisfeito com isso, não há muito sentido em usar qualquer um desses programas. Eles são mais úteis se o GRUB for temperamental ou simplesmente não funcionar, como é o caso do GRUB 2 em sistemas UEFI, na minha experiência. Em tal situação, você pode abandonar o GRUB 2 em favor do ELILO ou de um stub loader EFI do kernel 3.3.0 ou posterior. Esses carregadores de inicialização não podem redirecionar o processo de inicialização para o Windows, tornando muito útil um gerenciador de inicialização separado.

Rod Smith
fonte
Não Refind não suporta partições NTFS ...
fccoelho
1
O fato de o rEFInd não vir com um driver NTFS é irrelevante. O carregador de inicialização EFI do Windows reside na EFI System Partition (ESP), que é FAT, portanto, o rEFInd não precisa acessar um volume NTFS. Além disso, é injusto destacar o refE nessa pontuação; nem o rEFIt nem o gummiboot vêm com um driver NTFS.
Rod Smith
0

PAY ATENTION: somente para x64

grub-probe --target=fs_uuid /boot/efi/efi/Microsoft/Boot/bootmgfw.efi

Adicione isto a /etc/grub.d/40_custom:

menuentry "Boot bootx64.efi, generated by Boot-Repair" {
search --fs-uuid --no-floppy --set=root UUID

**chainloader (${root})/EFI/Boot/bootx64.efi**
}

O outro código não funciona.

Testado em ASUS N56V

Cristiano Zanca
fonte