Usar o Boot Repair, como o MariusMatutiae sugere, pode funcionar; No entanto, esse programa às vezes faz mais do que é sábio, então eu prefiro evitá-lo. Existem pelo menos três soluções menos radicais:
Solução 1: Use o Firmware
Muitas EFIs fornecem um gerenciador de inicialização integrado que permite ajustar a ordem de inicialização. Sua entrada Ubuntu / GRUB provavelmente ainda existe, então tudo que você precisa fazer é ajustar a ordem de inicialização usando o firmware. O problema com essa abordagem é que os utilitários de configuração EFI variam tanto que é impossível fornecer instruções universalmente aplicáveis sobre como fazer isso. Se o seu firmware suportar esse recurso, é provável que seja a maneira mais simples de fazê-lo - uma vez que você descubra como chegar à opção!
Solução 2: use bcdedit
no Windows
A ferramenta bcdedit
do Windows pode adicionar um carregador de inicialização não-Windows à lista de inicialização. O truque é descobrir o que é o arquivo. Você pode fazer assim:
- Inicialize no Windows
- Abra uma janela do prompt de comando Administrador . (Não use um shell de terceiros para isso. Eu vi relatórios que
bcdedit
não funcionam corretamente com alguns deles.) - Digite
mountvol S: /S
para montar o ESP comoS:
. (Você pode alterarS:
para outra coisa, se quiser.) - Usando o Prompt de Comando, verifique
S:
para localizar o seu carregador de boot do Ubuntu. É provavelmenteS:\EFI\ubuntu\grubx64.efi
ouS:\ubuntu\shimx64.efi
. Se você vir o último, deve ser seguro usá-lo, e pode ser necessário usá-lo - shim é como o Ubuntu lida com o Secure Boot (SB), mas em um computador que não seja SB, ele terá pouco efeito. Se a Inicialização Segura estiver inativa, os ajustes poderão ou não ser instalados, portanto, talvez você precise consultargrubx64.efi
diretamente. - Digite
bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi
, alterandoshimx64.efi
paragrubx64.efi
seshimx64.efi
não estiver presente. Mude o caminho se for outra coisa, o que é improvável. - Opcionalmente, digite
bcdedit /set {bootmgr} description "Ubuntu"
para definir o nome que aparece na própria lista de gerenciadores de inicialização da EFI. AltereUbuntu
para o que você quiser.
Se você já conhece o nome do arquivo do seu gerenciador de inicialização, pode pular as etapas 3 e 4. (O ESP não precisa ser montado para usar bcdedit
dessa maneira.)
Esse método tem a vantagem de impedir que o Windows mexa na ordem de inicialização - às vezes o Windows tentará ajustar a ordem de inicialização sem ser solicitado. Não sei se isso impediria a repetição desse problema se / quando você atualizar para o que vier depois do Windows 8.1, no entanto.
Solução 3: inicialize no Linux e use efibootmgr
Provavelmente, você pode inicializar no Linux usando o gerenciador de boot do próprio firmware, que pode ser acessado na maioria dos computadores pressionando-se Esc ou uma tecla de função no momento da inicialização, embora a chave varie de um computador para outro. Como alternativa, você pode usar rEFInd em uma unidade flash USB ou CD-R como gerenciador de inicialização se o seu é inadequado. Você também pode inicializar usando um live CD ou disco de emergência do Linux, mas certifique-se de inicializar no modo EFI - uma inicialização no modo BIOS não será adequada. Quando estiver no Linux, você pode usar efibootmgr
para ajustar a ordem de inicialização:
- Abra uma janela do Terminal.
- Digite
sudo efibootmgr -v
para obter uma lista de programas de inicialização. Um será para o Linux e iniciará o shim ou o GRUB. Observe a listaBootOrder
. As chances são de que a entrada do Windows agora seja a primeira, e a entrada do Ubuntu venha depois na lista. Algumas entradas podem ser confusas. Apenas ignore-os; concentre-se em encontrar a entrada do Ubuntu e identificar seu número (na entradaBoot####
no início da linha). - Digite
sudo efibootmgr -o {list}
, alterando{list}
para uma lista separada por vírgula de números de inicialização, como emsudo efibootmgr -o 5,0
ifBoot0005
é para o Ubuntu eBoot0000
é para o Windows. Você pode adicionar mais entradas se quiser, mas a primeira é a mais importante, pois é isso que será inicializado primeiro.
Se uma entrada do Ubuntu não não existir, você pode criar uma com efibootmgr
, como em:
efibootmgr -c -d /dev/sda -p 1 -l '\EFI\ubuntu\shimx64.efi' -L "Ubuntu"
Altere -d /dev/sda
para apontar para o seu dispositivo de disco inteiro e -c 1
para especificar o número da partição. (Na verdade, /dev/sda
e 1
são os padrões, então você realmente precisa deles apenas se o seu ESP não for /dev/sda1
.)