Pelo que entendi, o BIOS do uefi carrega o grub.efi da partição efi. Isso agora carrega vários módulos grub e o arquivo de configuração do diretório / boot.
Mas como o grub encontra o dispositivo correto no qual a partição de inicialização reside? No grub legacy, você normalmente instala o grub em uma partição específica, usando
# grub-install --root-directory=/dev/sda
Portanto, é bem claro onde ele procurará o diretório de inicialização. Como o grub-efi descobre o dispositivo correto?
Respostas:
Depois de usar o ghex para examinar meu arquivo "BOOTX64.EFI" na partição efi, encontrei esta linha.
Isso mostra que as informações para o local do grub (a partição de inicialização) foram incorporadas pelo grub2-install ao arquivo BOOTX64.EFI gerado para o sistema.
O Grub2 é então executado pelo carregador EFI e você obtém a interface do grub para escolher o sistema operacional (kernel) no qual inicializar ou o kernel padrão é carregado.
Apenas para expandir um pouco: os arquivos ".EFI" são como aplicativos que o subsistema UEFI pode executar. Destina-se a ser usado para inicializar o sistema e fornecer um local conveniente para executar programas de proteção contra execução e do tipo antivírus.
Eles colocaram o extensível em "Interface de Firmware Extensível Unificada"
fonte
sudo efibootmgr -v
no Gentoo, mas tenho certeza que você sabe disso