지금까지 찾은 내용(정확하지 않을 수 있음):
boot.img
GRUB는 디스크의 첫 번째 섹터(MBR)에 설치됩니다 .core.img
GRUB은 MBR 뒤의 틈새에 설치됩니다 .boot.img
BIOS에 의해 로드된 다음 로드되어core.img
제어권을 전달합니다.
하지만 다음 파티션을 core.img
찾는 방법은 무엇입니까? /boot
디스크에 여러 개의 파티션이 있을 수 있는데 코어 이미지는 어떤 파티션을 올바르게 식별합니까 /boot
? 이것이 핵심 이미지에 하드코딩되어 있습니까? 아니면 매번 검색이 수행됩니까?
다른 연구에 따르면 GRUB를 설치할 위치를 선택할 수 있는 --boot-directory
옵션이 있습니다 . grub-install
그러나 코어 이미지는 여전히 부팅 시 이 파티션을 찾아야 합니다. 다시 말하지만 어떤 형태의 식별자가 필요합니다. 이것은 레이블입니까, UUID입니까, 아니면 다른 것입니까?
답변1
주소는 에 하드코딩되어 있습니다 core.img
. core.img
파일 경로를 통해 2단계 모듈을 호출하는 데 필요한 모든 커널 및 Grub 모듈이 있어야 합니다. 로 지정합니다 (hd0,msdos1)/boot/grub
. 기본적으로 normal
모듈 로드를 시도합니다 (hd0,msdos1)/boot/grub/i386-pc/normal.mod
(i386-pc 아치 가정).