comportamento errático do grub. Reinstale o linux na inicialização dupla!

1

Eu tinha o boot duplo do Ubuntu e do Windows 10, funcionando perfeitamente bem. Devido ao desempenho lento do Ubuntu na minha máquina, eu queria substituí-lo com o Elementary OS, mantendo a inicialização dual. Ativei o EO iso, escolhi outra coisa, removi a partição do ubuntu e criei uma nova e instalei nela elementarmente. Teoricamente, deveria ter funcionado. Quando reiniciei, inicializei diretamente no Windows 10. Sabia que o BIOS poderia ter colocado as janelas como inicialização de prioridade mais alta que o Linux. Então fui ao BIOS e mudei o pedido. Agora, isso me colocou no grub prompt. Eu usei este comando para inicializar no Elementary:

set prefix=(hd0,7)/boot/grub
set root=(hd0,7)
insmod normal
normal

E fui recebido no SO Elementary. Agora eu corri:

sudo update-grub

Tudo correu bem e eu reiniciei o laptop, achando que funcionava! A próxima coisa, fui novamente descartado. Quando eu entrei no comando acima para inicializar no Elementary, o menu do grub apareceu! Ele funcionou com todas as entradas (eu poderia inicializar no Windows e no Elementary)

Eu fiz uma pesquisa no google e terminei de descobrir que não executei sudo grub-install /dev/sda . Então fui ao Elementary novamente e o executei. Ele me deu um erro, dizendo que 'partição GPT rotulado' bios boot 'não pôde ser encontrado' (similar). Novamente googling por algum tempo resultou com, eu precisava criar uma nova partição com o sinalizador 'bios_grub'. (Por que? Ele costumava trabalhar mais cedo sem tal coisa.) Fiz isso. Ainda problema permanece mesmo. (Eu ainda posso inicializar no Windows usando o BIOS ou digitando o comando no prompt do grub e inicializando em dois!)

Editar: Eu vi esta resposta enquanto escrevia esta questão e pensava em experimentá-la. Mas, eu não tenho um grubx64.efi no meu diretório / boot / grub! Eu pensei que talvez eu não tenha instalado o sistema operacional no modo EFI, mas executando dmesg | grep "EFI v" %código%.

    
por Popcorn 07.01.2018 / 15:47

1 resposta

2

A partição com o sinalizador bios_grub é apenas para situações em que você deseja usar um carregador de inicialização estilo MBR herdado em um disco particionado por GPT.

Você deve verificar o arquivo /boot/grub/device.map e certificar-se de que ele identifique como (hd0) o disco que realmente será (hd0) quando você estiver inicializando o SO Elementary. Faça isso antes de reinstalar a versão UEFI do GRUB (veja abaixo).

O arquivo do carregador de inicialização UEFI não é necessariamente denominado grubx64.efi : pode ser apenas grub.efi ou basicamente anything.efi. Execute efibootmgr -v para ver o nome do caminho exato usado pela UEFI para carregar o carregador de inicialização do UEFI GRUB. O nome do caminho será relativo à raiz da partição de sistema EFI (também conhecida como partição ESP): é uma pequena partição FAT32 que também contém o bootloader do Windows. O comando efibootmgr normalmente exibirá os nomes de caminho do arquivo de inicialização usando a convenção de barra invertida do Windows, em vez de usar barras normais no estilo Unix / Linux.

Algumas distribuições Linux não montam a partição ESP por padrão; eles só irão montá-lo sempre que necessário para reinstalar o bootloader. Outros montam a partição ESP em /boot/efi . Se a partição ESP estiver montada lá, o nome completo do caminho do carregador de inicialização UEFI do Windows, como visto do Linux, seria /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi .

O padrão UEFI exige que o carregador de inicialização esteja localizado no subdiretório /EFI/<vendor name> da partição ESP. Portanto, o carregador de inicialização do UEFI GRUB para o Elementary deve estar em /boot/efi/EFI/<something>/<something>.efi .

Parece que o comando grub-install no seu sistema tenta instalar um carregador de inicialização GRUB no estilo legado, pelo menos por padrão. Talvez você precise usar a opção --target como sudo grub-install --target=x86_64-efi /dev/sda para especificar explicitamente que você está (re) instalando uma versão UEFI do gerenciador de inicialização?

    
por 07.01.2018 / 16:57