나는 이것이 매우 일반적인 질문이라는 것을 알고 있지만 아래 나열된 일반적인 답변 중 많은 것을 시도했지만 아무 소용이 없었습니다.
기본 설정: 저는 각각 별도의 암호화된/ 및 비암호화/부팅 파티션과 /boot/efi 파티션, 총 5개를 사용하여 Fedora 31/Ubuntu 18.04 듀얼 부팅을 설정하고 있습니다. Fedora를 먼저 설치한 다음 Ubuntu를 설치했습니다. 모든 것이 순조롭게 진행되며 efi 부팅 메뉴에서 그 중 하나로 부팅할 수 있습니다. efi 부팅 순서를 잠그고 grub에서 부팅을 선택하고 싶지만 현재 Ubuntu grub 옵션에는 Fedora가 없습니다. 그래서 Fedora로 부팅하고 grub2-install /dev/sda
MBR을 Fedora의 grub 구성으로 재설정하고 Ubuntu를 추가하려고 시도했습니다. 대신에 나는 너무 흔한 것을 얻습니다 grub2-install: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory
.
- 나는 노력했다확장 명령변화가 없습니다
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootfloader-id=grub2
. - 나도 시도했다
dnf reinstall grub2-efi shim grub2-tools
- 그리고설치하다
grub2-efi-modules
그래도 내 디렉토리 /usr/lib/grub
에서 찾을 수 있는 것은 arm64-efi
과 i386-pc
아무것도 없습니다 x86_64-efi
. 저는 bootmgr 관련 내용이 조금 처음입니다. (내 경험은 새로 설치할 때마다 문제가 작동할 때까지 이러한 문제를 해결하는 데까지 확장됩니다.)
문제가 무엇인지 추측하거나 다른 곳에서 답을 찾는 사람이 있습니까?
답변1
먼저 올바른 패키지를 찾기 위해 "dnf Provide"를 실행했습니다.
dnf는 /usr/lib/grub/x86_64-efi를 제공합니다.
그런 다음 전체 이름을 사용하여 올바른 패키지를 설치했습니다.
dnf 설치 grub2-efi-x64-modules-1:2.06~rc1-2.fc33.noarch
답변2
grub2-efi-x64-modules
Fedora에 패키지를 설치하여 누락된 모듈을 추가할 수 있었습니다.
제 경우에는 "내 시스템이 EFI 변수를 지원하지 않습니다."라는 또 다른 오류가 발생했습니다. chroot 환경을 종료하고 efivarfs 모듈을 로드하여 문제를 해결한 또 다른 stackexchange 게시물을 찾았습니다 modprobe efivarfs
. 그런 다음 설치된 루트 디렉터리에 다시 로그인하여 mount -t efivarfs efivarfs /sys/firmware/efi/efivars
.
답변3
우분투에서 (efi 지원이 생성됩니다)/usr/lib/grub/x86_64-efi)
sudo apt install grub-efi
답변4
grub2-efi-modules 및 efibootmgr을 설치하여 문제를 해결했습니다.