Eu não sei porque você está usando o grub em primeiro lugar. UEFI age como uma inicialização
carregador e permite selecionar diferentes sistemas operacionais ou individuais
kernels de um menu de inicialização. Embora haja algumas exceções, geralmente é
não é necessário para encadear um segundo carregador de inicialização, grub neste caso.
Você mencionou, você instalou o elementary OS em vez do Fedora, o que significa que você
só precisa carregar um sistema operacional. Aqui eu apresento uma maneira de fazer isso
sem usando o grub. O kernel precisa ser compilado com
EFI_STUB, se esse for o caso, você pode verificar com
grep EFI_STUB /boot/config-<version>
Copie o kernel e o initramfs para o ESP (partição do sistema EFI)
cp /boot/vmlinuz-<version> /boot/efi/EFI/elementary/vmlinuz-<version>.efi
cp /boot/initrd.img-<version> /boot/efi/EFI/elementary/initrd.img-<version>
Registre o kernel como opção de inicialização no UEFI
echo "root=UUID=<disk_uuid> ro quiet rootfstype=ext4 add_efi_memmap initrd=\EFI\elementary\initrd.img-<version>" |
iconv -f ascii -t ucs2 |
efibootmgr \
--create --gpt \
--disk /dev/<disk> --part <partition_number> \
--label "Elementary OS" \
--loader "\EFI\elementary\vmlinuz-<version>.efi" \
--write-signature --append-binary-args -
O argumento --disk
usa o nome do dispositivo do disco, por ex.
--disk /dev/sda
, o argumento --part
recebe o número da partição
do ESP, e. 4. Você pode encontrar o número da partição ESP com o
comando a seguir:
gdisk -l /dev/sda | awk '$6=="EF00" {print $1}'
Certifique-se de repetir as etapas após cada atualização do kernel
Ou você esta manualmente (apenas repita os passos acima) ou você escreve
um pequeno script que faz o trabalho. Para automatizá-lo totalmente, o
O script pode ser ligado ao procedimento de pós-instalação do kernel,
o procedimento de pós-atualização do initramfs e no kernel postrm
procedimento (para remover a entrada de inicialização da UEFI). Na verdade eu não sei
por que isso não é feito por padrão nas distribuições, é apenas alguns
linhas de código.