Estou tentando iniciar uma máquina de 64 bits a partir de USB onde o EFI é compatível apenas com 32 bits, que é um Lenovo Ideapad 100S .
Quando inicializo em um dongle USB completo de 32 bits (obtido de um .iso
), ele funciona. Mas com a mesma revisão em 64 bits, não.
Para resolver isso, estou seguindo tutoriais sugerindo modificar uma chave usb de 64 bits e adicionar um arquivo EFI de 32 bits no /efi/boot
diretório.
Não funciona em 2018 com o Debian.
Atualmente, um dongle usb de instalação do Debian contém muitas coisas chamadas EFI.
/boot/grub/efi.img
/boot/grub/
/boot/grub/x86_64-efi <-- a dir with many driver modules
/efi/boot/bootx64.efi <-- the original file
/efi/boot/bootia32.efi <-- the file added thanks to tutorials
Então, eu realmente perdi alguma coisa, ou o disco de inicialização mudou e eu tenho que modificar mais.
Então, você sabe quais arquivos estão envolvidos na sequência de carregamento do EFI?
Ao inicializar a partir de mídia removível,
/efi/boot/boot<architecture>.efi
é o arquivo que o firmware UEFI deve procurar, de acordo com as especificações UEFI.Mas então, o bootloader GRUB como empacotado pelo Debian provavelmente também precisa do diretório do módulo GRUB correspondente e seu conteúdo: para GRUB de 32 bits, seria
/boot/grub/i386-efi/
. Acho que o Ubuntu e o Fedora configuram suas versões do GRUB de forma ligeiramente diferente, e suas configurações do GRUB empacotam mais módulos do GRUB no binário .efi principal do GRUB.Os módulos estão no
grub-efi-ia32-bin
pacote e, em uma instalação de sistema operacional em funcionamento, eles estão inicialmente localizados em/usr/lib/grub/<module directory>
e o processo de instalação do gerenciador de inicialização os copiará de lá para seu local final em/boot/grub/<module directory>
.Acho que
/boot/grub/efi.img
contém uma imagem de inicialização de CD-ROM necessária para a extensão "El Torito" do padrão ISO-9660 e não é realmente usada ao inicializar a partir de um dongle USB formatado em FAT32.