GRUB-2.12 para EFI

Introdução ao GRUB

O pacote GRUB fornece o GRand Unified Bootloader. Nesta página, ele será construído com suporte UEFI, que não está habilitado para o GRUB construído no LFS.

Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.3.

Informação do Pacote

  • Transferência (HTTP): https://ftp.gnu.org/gnu/grub/grub-2.12.tar.xz

  • Transferência (FTP):

  • Soma de verificação MD5 da transferência: 60c564b1bdc39d8e43b3aab4bc0fb140

  • Tamanho da transferência: 6,4 MB

  • Espaço em disco estimado exigido: 183 MB

  • Tempo de construção estimado: 0,4 UPC (no LFS de 64 bits, usando paralelismo=4)

Transferências Adicionais

Dados opcionais de fonte Unicode para o menu do GRUB

Dependências do GRUB

Recomendadas

Opcionais

FreeType-2.13.3, Fuse-3.16.2 e LVM2-2.03.30

Se você estiver construindo o GRUB para um sistema LFS de 32 bits para inicializá-lo em um firmware UEFI de 64 bits, reconstrua GCC-14.2.0 com a chave --enable-targets=all posposta ao comando ../configure.

Instalação do GRUB

Primeiro, instale os dados da fonte como o(a) usuário(a) root se você os tiver baixado e tiver instalado a dependência opcional FreeType-2.13.3:

mkdir -pv /usr/share/fonts/unifont &&
gunzip -c ../unifont-16.0.01.pcf.gz > /usr/share/fonts/unifont/unifont.pcf
[Atenção]

Atenção

Desconfigure quaisquer variáveis de ambiente que possivelmente afetem a construção:

unset {C,CPP,CXX,LD}FLAGS

Não tente ajustar esse pacote com sinalizadores personalizados de compilação: esse pacote é um carregador de inicialização, com operações de baixo nível no código-fonte, as quais provavelmente sejam quebradas por algumas otimizações agressivas.

Adicionar um arquivo ausente proveniente do tarball de lançamento:

echo depends bli part_gpt > grub-core/extra_deps.lst

Construa o GRUB com os seguintes comandos:

./configure --prefix=/usr        \
            --sysconfdir=/etc    \
            --disable-efiemu     \
            --with-platform=efi  \
            --target=x86_64      \
            --disable-werror     &&
make

Esse pacote não tem uma suíte de teste que forneça resultados significativos.

Agora, se você tiver pulado o pacote GRUB do LFS, como o(a) usuário(a) root, instale o GRUB e pule as instruções restantes nesta seção:

make install &&
mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions

Se você não tiver ignorado o pacote GRUB do LFS, como o(a) usuário(a) root, instale somente os componentes não instalados a partir do pacote GRUB do LFS:

make -C grub-core install

Se você tiver instalado os dados opcionais de fonte e FreeType-2.13.3, instale o programa grub-mkfont e os arquivos de dados de fonte (sem os arquivos de dados de fonte, o GRUB ainda pode funcionar normalmente, mas o menu de inicialização será exibido usando uma fonte grosseira ou em uma região menor na tela).

install -vm755 grub-mkfont /usr/bin/ &&
install -vm644 ascii.h widthspec.h *.pf2 /usr/share/grub/

Se Fuse-3.16.2 e LVM2-2.03.30 estiverem instalados, instale também o programa grub-mount:

install -vm755 grub-mount /usr/bin/

Explicações do Comando

--with-platform=efi: Garante a construção do GRUB com EFI habilitado.

--target=x86_64: Garante a construção do GRUB para x86_64, mesmo se construir em um sistema LFS de 32 bits. A maioria do firmware EFI em x86_64 não suporta carregadores de inicialização de 32 bits.

--target=i386: Algumas plataformas x86 de 32 bits tem suporte EFI. E algumas plataformas x86_64 tem uma implementação EFI de 32 bits, mas são muito antigas e raras. Use isso ao invés de --target=x86_64 se você estiver absolutamente seguro(a) de que o LFS está executando em tal sistema.

Configurando o GRUB

Usar o GRUB para tornar o sistema LFS inicializável na plataforma UEFI será discutido em Usando o GRUB para Configurar o Processo de Inicialização com UEFI.

Conteúdo

Uma lista dos arquivos instalados, juntamente com descrições curtas deles, pode ser encontrada em ../../../../lfs/view/12.3/chapter08/grub.html#contents-gRUB.

Listados abaixo estão os programas recém-instalados, juntamente com descrições curtas.

Aplicativos Instalados: grub-mkfont e grub-mount (opcional)
Diretórios Instalados: /usr/lib/grub/x86_64-efi

Descrições Curtas

grub-mkfont

converte formatos de arquivo de fontes comuns em PF2

grub-mount

é uma ferramenta de depuração para controlador de sistema de arquivos