Beyond Linux® From Scratch (systemd Edition) - Version 12.1 | ||
---|---|---|
Chapter 5. File Systems and Disk Management | ||
이전 | 위로 / 처음으로 | 다음 |
efibootmgr-18 | Using GRUB to Set Up the Boot Process with UEFI |
GRUB 패키지는 GRand Unified Bootloader(통합 부트 로더)를 제공합니다. 이 페이지에서는 LFS에서 빌드된 GRUB에는 활성화되지 않은 UEFI 지원으로 빌드됩니다.
이 패키지는 LFS 12.1 플랫폼을 사용하여 빌드하고 제대로 작동하는 것으로 알려져 있습니다.
먼저 root 사용자로 글꼴 데이터를 설치합니다.
mkdir -pv /usr/share/fonts/unifont &&
gunzip -c ../unifont-15.1.04.pcf.gz > /usr/share/fonts/unifont/unifont.pcf
경고
빌드에 영향을 줄 수 있는 환경 변수를 설정 해제하세요.
unset {C,CPP,CXX,LD}FLAGS
사용자 정의 컴파일 플래그로 이 패키지를 '튜닝'하지 마세요. 이 패키지는 부트로더로, 소스 코드의 저수준 작업이 일부 공격적인 최적화에 의해 손상될 수 있습니다.
릴리스 타르볼에 누락된 파일을 추가합니다.
echo depends bli part_gpt > grub-core/extra_deps.lst
32비트 LFS를 실행하는 경우 64비트 컴파일러를 준비하세요.
case $(uname -m) in i?86 )
tar xf ../gcc-13.2.0.tar.xz
mkdir gcc-13.2.0/build
pushd gcc-13.2.0/build
../configure --prefix=$PWD/../../x86_64-gcc \
--target=x86_64-linux-gnu \
--with-system-zlib \
--enable-languages=c,c++ \
--with-ld=/usr/bin/ld
make all-gcc
make install-gcc
popd
export TARGET_CC=$PWD/x86_64-gcc/bin/x86_64-linux-gnu-gcc
esac
GRUB 패키지를 빌드합니다.
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-efiemu \
--enable-grub-mkfont \
--with-platform=efi \
--target=x86_64 \
--disable-werror &&
unset TARGET_CC &&
make
이 패키지에는 의미 있는 결과를 제공하는 테스트 스위트가 없습니다.
make install &&
mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions
* –enable-grub-mkfont: 설치된 글꼴 데이터에서 부트 로더용 글꼴 파일을 생성하는 grub-mkfont
라는 도구를 빌드합니다.
경고
권장 종속성 FreeType-2.13.2가 설치되어 있지 않은 경우 이 옵션을 생략하고 GRUB을 빌드할 수 있습니다. 그러나 grub-mkfont
가 빌드되지 않았거나 GRUB 빌드 시점에 유니코드 글꼴 데이터를 사용할 수 없는 경우 GRUB은 부트 로더에 대한 글꼴을 설치하지 않습니다. GRUB 부팅 메뉴는 거친 글꼴을 사용하거나 화면의 작은 영역에 표시됩니다.
GRUB를 사용하여 UEFI 플랫폼에서 LFS 시스템을 부팅할 수 있도록 하는 방법은 GRUB를 사용하여 UEFI로 부팅 프로세스 설정하기에서 설명합니다.
LFS 책에서 GRUB 페이지를 참조하십시오.