나는 처음부터 안정적인 시스템 Linux를 따라왔고 시스템을 부팅 가능하게 만들기 위해 grub을 구성하는 마지막 장을 마쳤습니다.
grub-install /dev/sda1
그래서 ( /dev/sda1
is my /boot
partition)을 실행했는데 다음 오류가 발생했습니다.
grub-install: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory.
사실 /usr/lib/grub/
, 항목이 하나만 있습니다 i386-pc
.
그래서 이 대상으로 명령을 다시 실행하려고 시도했지만 다른 오류가 발생했습니다.
(lfs chroot) root:/boot# grub-install /dev/sda1 --target i386-pc
Installing for i386-pc platform.
grub-install: warning: File system `fat' doesn't support embedding.
grub-install: error: embedding is not possible, but this is required for cross-disk install.
평소에는 systemd-boot를 사용하는데, 이 LFS 시스템에 설치된 systemd 버전에는 그게 포함되어 있지 않고, 업그레이드하는 걸 별로 안 좋아해서 꼭 grub을 작동시켜보고 싶습니다.
여기서 무슨 일이 일어나고 있는 걸까요? 이 문제를 해결하려면 어떻게 해야 합니까?
답변1
처음부터 "GRUB를 사용하여 부팅 프로세스 설정" 섹션을 읽었습니다. 하단에 있는 참고 사항에는 "시스템이 UEFI를 지원하고 UEFI를 사용하여 LFS를 부팅하려는 경우 이 페이지의 지침을 건너뛰어야 하지만 여전히 grub.cfg의 구문과 파일에서 파티션을 지정하는 방법을 배울 수 있습니다. 이 페이지에서 BLFS 페이지에 제공된 지침을 사용하여 UEFI 지원으로 GRUB을 구성하세요.
https://www.linuxfromscratch.org/lfs/view/stable/chapter10/grub.html
따라서 말씀하신 대로 UEFI를 사용하여 부팅하는 경우 위의 지침을 따라야 합니다.