Primeiro, jogue fora suas suposições do BIOS! Sob o EFI, a unidade de inicialização é um arquivo de carregador de inicialização, não um disco rígido. Ou seja, você não "escolhe o HDD para o qual está instalado como o dispositivo de inicialização"; você escolhe o arquivo load loader para um sistema operacional. Isso pode parecer um assunto sutil, mas é fundamental para entender - e, portanto, manipular adequadamente - o processo de inicialização do EFI.
A primeira coisa que você deve fazer é ler o manual do seu computador, examinar seus avisos de inicialização, ou simplesmente experimentar para descobrir como você pode acessar o gerenciador de boot interno do computador. Normalmente, isso é feito pressionando uma determinada tecla de função no momento da inicialização, embora às vezes seja Esc ou alguma outra chave. (Infelizmente, não há absolutamente nenhuma padronização nisso.) Alguns computadores não têm menus de inicialização úteis na inicialização, mas a maioria faz isso. Seu menu de inicialização provavelmente incluirá uma opção chamada ubuntu
, outra chamada Windows boot manager
ou algo semelhante (não me lembro do nome preciso de improviso) e provavelmente algumas outras entradas. Verifique se a seleção do item do Windows inicializa diretamente no Windows sem inicializar o Ubuntu. Se selecionar o Windows inicializa o GRUB, ou se não houver uma opção do Windows, as coisas ficam complexas, então vamos deixar isso de lado ...
Se o gerenciador de inicialização do firmware permitir a inicialização do Windows, você deverá inicializar no Ubuntu e digitar sudo efibootmgr
para ver uma lista dos programas de inicialização registrados com a EFI. Essa lista deve incluir mais ou menos as entradas que o gerenciador de inicialização mostra. A saída também incluirá uma linha chamada BootOrder
que mostra a ordem na qual vários programas de inicialização são usados. Aqui está um exemplo de um dos meus computadores:
$ sudo efibootmgr
BootCurrent: 0005
Timeout: 0 seconds
BootOrder: 0005,0004,0000,0006,0001,0002
Boot0000* rEFInd (via shim)
Boot0001* P1: WDC WD10EARS-00MVWB0
Boot0002* P5: ASUS DRW-2014S1T
Boot0004* UEFI OS
Boot0005* rEFInd Boot Manager
Boot0006* UEFI: ADATA USB Flash Drive
O Windows não está instalado aqui e estou usando meu próprio gerenciador de inicialização rEFInd em vez do GRUB, portanto, não há ubuntu
entry; mas o ponto é que você pode ver que BootOrder
faz com que Boot0005
( rEFInd Boot Manager
) seja tentado primeiro, seguido por Boot0004
( UEFI OS
), etc. No seu caso, você deve identificar a inicialização do Windows gerenciador e configure-o primeiro, seguido por sua ubuntu
entrada e, opcionalmente, seguido por qualquer outra coisa. Você pode definir a BootOrder
com a opção -o
para efibootmgr
, como em:
sudo efibootmgr -o 7,4,5
Este exemplo configuraria o sistema para tentar o item nº7 primeiro (que não está presente no meu sistema; mas apenas finja que é uma entrada do Windows), seguido por # 4, seguido por # 5. Quando você reiniciar, você verá o Windows aparecer automaticamente. Para inicializar o Ubuntu, você pode segurar a chave que você usa para acessar o gerenciador de inicialização do seu firmware e usá-lo para inicializar o Ubuntu.
Eu disse anteriormente que as coisas ficam complexas se você não puder acessar esse menu ou se selecionar as inicializações do Windows para o GRUB. O último caso é causado por certas opções na ferramenta Reparo de inicialização, que renomeiam o GRUB para que ele assuma o nome normalmente usado pelo carregador de inicialização do Windows. Isso é necessário em alguns sistemas para contornar os erros da EFI, mas essa opção às vezes é aplicada desnecessariamente. (Isso era comum há um ano atrás, quando era o padrão para o Reparo de inicialização.) Você pode fazer renomeação semelhante manualmente ou por meio de outras ferramentas também. A solução é desfazer essas ações. Em Reparo de inicialização, selecione o menu Avançado e use a opção para restaurar arquivos de backup para seus nomes originais. Se você precisar de mais ajuda, pergunte.
Se você não conseguir encontrar o gerenciador de inicialização interno do seu firmware, talvez seja necessário fazer algo totalmente diferente. Eu acredito que há uma opção no GRUB para definir o tempo limite muito baixo e ocultar o menu, a menos que uma tecla seja pressionada. Você poderia fazer isso, em conjunto com tornar o Windows a opção de inicialização padrão. Eu não sei de antemão como conseguir esse efeito, no entanto. Outra solução é instalar meu rEFInd gerenciador de inicialização e editar /boot/efi/EFI/refind/refind.conf
, removendo o comentário da linha timeout
e definindo-a como% código%; e descomentando e ajustando a opção -1
para inicializar o Windows por padrão.