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
efibootmgr-18 (tempo de execução)
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
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.
Conteúdo
Uma lista dos arquivos instalados, juntamente com descrições curtas
deles, pode ser encontrada em
../../../../lfs/view/12.3-systemd/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
|