GRUB não está carregando para inicialização dupla

2

Estou executando um Windows 10 de inicialização dupla e o Ubuntu 15.10 no meu HP Spectre X360. Tudo funcionou bem até que eu atualizei o Ubuntu e ele me pediu para reiniciar o sistema. Após a reinicialização, o GRUB não apareceria mais e meu computador inicializaria imediatamente no Windows.

Eu tentei o seguinte:

  • mantendo o turno durante a inicialização: nada acontece
  • Alterando a ordem de inicialização: somente o gerenciador de inicialização do Windows é exibido, portanto não posso alterar nada
  • fazendo um reparo de inicialização: depois de executá-lo, obtive este log link , mas isso não resolveu meu problema.

Até agora não sei mais o que tentar.

Editar: Eu posso bater esc, em seguida, "Boot Device Options", em seguida, "Boot do arquivo EFI", em seguida, "EFI", em seguida, "Ubuntu", em seguida, "grubx64.efi" e boot Ubuntu dessa forma.

Agora as entradas interessantes em /var/log/apt/history.log são

Install: 
linux-headers-4.2.0-23-generic:amd64 (4.2.0-23.28, automatic)
linux-signed-image-4.2.0-23-generic:amd64 (4.2.0-23.28, automatic)
linux-image-extra-4.2.0-23-generic:amd64 (4.2.0-23.28, automatic)
linux-headers-4.2.0-23:amd64 (4.2.0-23.28, automatic)
linux-image-4.2.0-23-generic:amd64 (4.2.0-23.28, automatic)

Upgrade: 
linux-headers-generic:amd64 (4.2.0.22.24, 4.2.0.23.25)
grub-efi-amd64-bin:amd64 (2.02~beta2-29ubuntu0.2, 2.02~beta2-29ubuntu0.3)
grub-efi-amd64:amd64 (2.02~beta2-29ubuntu0.2, 2.02~beta2-29ubuntu0.3)
grub-common:amd64 (2.02~beta2-29ubuntu0.2, 2.02~beta2-29ubuntu0.3)
grub2-common:amd64 (2.02~beta2-29ubuntu0.2, 2.02~beta2-29ubuntu0.3)
linux-signed-generic:amd64 (4.2.0.22.24, 4.2.0.23.25)
grub-efi-amd64-signed:amd64 (1.55.2+2.02~beta2-29ubuntu0.2, 1.55.3+2.02~beta2-29ubuntu0.3)
linux-signed-image-generic:amd64 (4.2.0.22.24, 4.2.0.23.25)
linux-image-generic:amd64 (4.2.0.22.24, 4.2.0.23.25)
linux-generic:amd64 (4.2.0.22.24, 4.2.0.23.25)
    
por Stefan Brunecker 09.01.2016 / 11:49

5 respostas

0

Você terá que alterar o bootorder no seu BIOS. Na inicialização, você terá que pressionar um botão para entrar. Na maioria das vezes F2 ou del. Lá você terá que escolher a sua partição do Ubuntu como primeira prioridade para inicializar. Tudo depende da sua placa-mãe e da versão do seu bios. Procure sua placa-mãe se você não conseguir descobrir qual botão apertar na inicialização.

    
por Durgolias 09.01.2016 / 13:26
0

Parece que sua máquina está usando o UEFI. Eu suponho que o novo bootloader grub não está sendo reconhecido pelo BIOS e, portanto, ele inicializa o Windows. Eu observei esse comportamento em um laptop que se recusou a inicializar no Linux (GRUB), a menos que "boot legado" fosse selecionado.

Isso oferece duas opções:

  • tente abrir o menu de inicialização único na inicialização pressionando F12 ou Esc (pode ser algum outra chave, por exemplo, F9 ) e selecione algo como legacy boot
  • abra as configurações da BIOS com F2 , Del (ou alguma outra chave), navegue para a inicialização resp. gerenciamento de boot e procure por uma opção "enable legacy boot" ou comparável lá e ative-a

Se uma dessas etapas funcionar, você sabe que se trata de um problema UEFI e seu bootloader ainda está intacto e funcionando.

A outra abordagem seria verificar por que a UEFI agora se recusa a inicializar no Ubuntu, embora tenha funcionado antes. Isso pode ser causado por:

  • configuração de prioridade de inicialização no BIOS
  • A impressão digital / assinatura do GRUB deve ser adicionada ao UEFI para ser aceita como um legítimo gerenciador de inicialização
  • seu GRUB está danificado e você pode reinstalar o gerenciador de inicialização a partir de um Live CD do Ubuntu
por MarkWatney 09.01.2016 / 13:42
0

O Windows 10 adora se ver como o único sistema operacional instalado em seu computador, tornando-o incapaz de inicializar em outros. O que você precisa fazer é definir o GRUB como o gerenciador de inicialização padrão no Windows por meio de um prompt de comando do administrador ou do PowerShell.

Execute este comando:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

Se você usa o PowerShell, execute este comando:

bcdedit /set "{bootmgr}" path \EFI\ubuntu\grubx64.efi

Reinicie o computador e depois o grub deve aparecer depois do logotipo da HP.

    
por Vin 09.01.2016 / 13:43
0

Aqui está o problema, das linhas 1220-1221 no seu log de Reparo de inicialização:

efibootmgr: Could not set variable Boot0002: No such file or directory
efibootmgr: Could not prepare boot variable: No such file or directory

Traduzido para o inglês, o utilitário efibootmgr (uma parte importante da instalação de um carregador de inicialização EFI do Linux) tentou criar uma nova variável ( Boot0002 ), mas quando tentou definir essa variável como padrão, tinha desaparecido da memória do firmware. Basicamente, isso indica um bug no firmware (ou possivelmente em efibootmgr ), ou pelo menos algum tipo de falha de firmware ou configuração incorreta. Existem várias soluções possíveis e soluções alternativas, como:

  • Atualize seu firmware (o que o fabricante provavelmente chama de "BIOS") e tente novamente. Isso pode corrigir o bug.
  • Localize a opção de firmware para redefinir tudo para os padrões de fábrica, use essa opção e tente novamente. Isso pode limpar o armazenamento de dados do firmware, fazendo com que as coisas funcionem de maneira mais suave.
  • Registre o GRUB com o firmware de alguma outra forma, como:
    • Usando bcdedit no Windows, conforme descrito na minha resposta para esta questão.
    • Usando a ferramenta EasyUEFI da GUI no Windows.
    • Usando um shell EFI, conforme descrito em wiki do Arch Linux.
    • O ponto de todas essas opções é que é possível que pelo menos parte do problema esteja em efibootmgr , portanto, usar outra ferramenta pode funcionar melhor.
  • Se o computador for novo o suficiente, devolva-o à loja para um reembolso e compre um que não esteja quebrado por design.
  • Use a opção de reparo de inicialização "Avançado" para fazer o backup e renomear os carregadores de inicialização. Isso colocará o GRUB no lugar do carregador de inicialização do Windows, sequestrando a entrada do Windows em funcionamento e colocando uma cópia do carregador de inicialização do Windows em outro lugar. Esse é um truque feio de uma solução alternativa que provavelmente retornará e o incomodará mais tarde, já que a maioria das ferramentas não saberá sobre o estado altamente irregular que essa solução alternativa cria. No entanto, pode ser a única solução em alguns casos extremos.

Eu tentaria as soluções aproximadamente nessa ordem até que uma delas funcionasse, embora você possa experimentá-las na ordem que desejar.

    
por Rod Smith 09.01.2016 / 16:16
0

Problema semelhante: Win 7 e Xubuntu 15.10 - > Grub nunca começou. Quando tentei restaurar o grub recebi uma mensagem parecida:

Could not set variable Boot000B: No such file or directory

Então usei (no Windows como Admin) bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi como escrito acima. Grub agora está funcionando bem, mas sem o Windows selecionável.

Adicionando o Windows ao grub: Eu segui o link (alemão) - > Crie um skrip executável "29_windows" em "/etc/grub.d"

#!/bin/bash
# EFI-Partition suchen und auswerten
if [ -f /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi ]; then
    EFI_UUID=$( grub-probe -t fs_uuid /boot/efi/EFI )
    echo "Menüeintrag für Windows eingefügt" >&2

cat <<EOF
menuentry "Windows 7 Pro (UEFI)" {
    insmod fat
    insmod chain
    search --no-floppy --fs-uuid --set=root ${EFI_UUID}
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
EOF
fi

e execute

sudo grub-mkconfig
sudo update-grub

O Grub encontrou o Windows via script e automaticamente. Ambos estão trabalhando, então você pode não precisar do script extra

    
por Tom Peters 22.01.2016 / 13:26