Adiciona o Windows 10 ao bootloader Grub2

0

Eu passei pelas etapas usuais para adicionar o Windows às opções do gerenciador de inicialização, modificando o 40_custom e adicionando o seguinte:

menuentry "Windows 10" {
     insmod part_gpt
     insmod chain
     set root='(hd0,msdos2)'
     chainloader +1
     }

No entanto, quando seleciono o Windows no bootloader, ele diz "Erro: assinatura inválida. Pressione qualquer tecla para continuar". Eu não sei porque estou recebendo este erro. Como posso consertar isso? EDIT: diz que há erros de sintaxe aqui, mas não consigo ver nenhum. if [ "${grub_platform}" == "pc" ]; then menuentry "Microsoft Windows Vista/7/8/8.1/10 BIOS/MBR" { insmod part_msdos insmod ntfs insmod search_fs_uuid insmod ntldr
search --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 XXXXXXXXXXXXXXXX ntldr /bootmgr } fi

EDIT2: Saída do sudo fdisk -l

~$ sudo fdisk -l
Disk /dev/sda: 298.1 GiB, 320072933376 bytes, 625142448 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
Disklabel type: dos
Disk identifier: 0x71b1e4fb

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1              63     80324     80262  39.2M de Dell Utility
/dev/sda2  *    223580160 286285823  62705664  29.9G 83 Linux
/dev/sda3        30801920 223580159 192778240  91.9G  7 HPFS/NTFS/exFAT
/dev/sda4       286287870 625141759 338853890 161.6G  5 Extended
/dev/sda5       571742208 573741055   1998848   976M 82 Linux swap / Solaris
/dev/sda6       573743104 625141759  51398656  24.5G 83 Linux
/dev/sda7       286287872 345180159  58892288  28.1G 83 Linux

Partition table entries are not in disk order.


Disk /dev/sdb: 7.5 GiB, 8004829184 bytes, 15634432 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
Disklabel type: dos
Disk identifier: 0x037cbc77

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1  *     2048 15634431 15632384  7.5G  c W95 FAT32 (LBA)
    
por Christopher Russell 03.07.2018 / 01:56

2 respostas

0

Você deve instalar os-prober e executá-lo uma vez

sudo apt-get install os-prober
sudo os-prober

Gerar arquivo de configuração do grub

sudo grub-mkconfig -o /boot/grub/grub.cfg

Não edite o arquivo manualmente

    
por 03.07.2018 / 06:13
0

Parece que você seguiu um guia antigo que espera que o Windows use o particionamento do MBR.

O erro "assinatura inválida" sugere que a inicialização segura está ativada. Quando a Inicialização Segura está habilitada, todos os carregadores de inicialização devem ser assinados com uma chave privada e uma chave pública correspondente deve ser incluída nas variáveis de Inicialização Segura na NVRAM de firmware. O GRUB está respeitosamente lendo o primeiro setor da partição que você especificou, mas como ele não contém a assinatura Secure Boot apropriada, o firmware se recusa a executá-lo.

O Secure Boot exige inicialização no estilo UEFI nativa como um pré-requisito. Você pode desativar o Secure Boot no seu sistema, mas como o GRUB já é iniciado para você, provavelmente não há necessidade de fazer isso.

Seu insmod part_gpt sugere que você espere que o disco tenha um particionamento no estilo GPT que normalmente combina com o estilo de inicialização UEFI, mas, por outro lado, set root=(hd0,msdos2) espera uma partição MBR.

No meu sistema Debian com particionamento GPT, a linha set root diz: set root='hd0,gpt1' . Se o seu sistema usar o particionamento GPT, use os identificadores de partição gptN em vez de msdosN .

Também chainloader +1 diz ao GRUB para ler o bloco de inicialização do primeiro bloco da partição; na inicialização nativa da UEFI, não existe tal coisa. Para inicializar o Windows no modo UEFI, a linha set root deve apontar para a partição do sistema EFI que contém o carregador de inicialização do Windows, e a linha do carregador de corrente deve ser chainloader /EFI/Microsoft/Boot/bootmgfw.efi .

    
por 03.07.2018 / 22:39