내 시스템을 새 SSD로 마이그레이션하고 있습니다. 이번 기회에 BIOS에서 EFI로 전환하고 싶습니다. 마더보드는 약 1년이 되었기 때문에 이전 버전의 UEFI 문제를 방지하려면 펌웨어가 충분히 새 것이어야 합니다.
저는 두 개의 전체 시스템 파티션(프로덕션 및 테스트용)을 사용하며 GRUB 메뉴를 통해 선택합니다. 나는 그것을 지키고 싶다.
새 SSD는 GPT로 파티션되어 있습니다. EF00 및 VFat 형식으로 "EFI 시스템" 파티션을 생성하고 /boot/efi에 설치했습니다.
하지만,지금은 악순환에 빠졌어요: 새 SSD에 EFI 지원 GRUB가 설치되어 있지 않은 한 UEFI 설정에서 CSM 모듈을 활성화한 상태로 유지하고 BIOS 모드에서 기존 HDD에서 부팅해야 합니다. 하지만 BIOS 모드로 부팅하자마자 다음과 같이 grub-install --target=x86_64-efi
표시되므로 할 수 없습니다.EFI variables are not supported on this system.
Ubuntu에 대한 몇 가지 지침을 찾았 boot-repair
지만 Arch Linux에서는 작동하지 않으며 이를 사용하는 것이 좋은 생각인지에 대한 논쟁이 있습니다.
답변1
몇 가지 옵션이 있습니다:
grubx64.efi
적절한 GRUB 모듈이 포함된 파일 생성을 사용하여 GRUB 구성 파일과 동일한 디렉터리에grub-mkimage -O x86_64-efi
배치 할 수 있습니다 ./boot/efi/EFI/BOOT/BOOTX64.EFI
이는 이동식 미디어 UEFI를 부팅 가능하게 만들기 위해 일반적으로 수행하는 작업과 유사합니다. 그런 다음 CSM을 비활성화하면 펌웨어가 SSD를 유효한 UEFI 부팅 디스크로 감지해야 합니다.또는 CSM을 비활성화하고 UEFI 부팅 가능한 이동식 미디어(또는 Freddy가 제안한 Super Grub2 디스크)에서 Linux를 부팅한 다음 필요한 경우 Arch 설치로 chroot할 수 있습니다.
어느 쪽이든 이제 시스템이 UEFI 모드로 부팅되므로 EFI 변수에 액세스할 수 있으며 이제 grub-install --target=x86_64-efi
올바른 부트로더를 사용하여 운영 체제를 영구적으로 설치하여 UEFI 사양에서 예상하는 방식을 완료할 수 있습니다.
답변2
가장 간단한 해결책은 아마도Super Grub2 디스크.
하나를 다운로드하여 설치하세요.Super Grub2 디스크 ISOUSB 메모리 스틱에. ISO 및
dd
/또는cat
이미지를 혼합하여 고정하도록 선택합니다.dd if=/path/to/super_grub2_disk_hybrid_2.04s1.iso of=/dev/sdX bs=16M
/dev/sdX
USB 스틱의 경로는 어디에 있습니까/dev/sdd
?BIOS 부팅 모드를 "UEFI 전용"(CSM 없음)으로 변경합니다.
- 스틱에서 Super Grub2 디스크를 부팅하고 메뉴에서 "부팅 방법 검색 및 표시"를 선택합니다. 예상대로 작동한다면 디렉토리에 있는 커널에서 부팅할 수 있는 커널 목록이 표시되어야 합니다
/boot
. - 커널을 선택하고 Arch 설치로 부팅한 다음GRUB 설치.
- 긴급 상황에 대비해 USB 플래시 드라이브를 보관하세요.
답변3
그것은 관련이 있다Super Grub2 디스크@Freddy가 제안한대로. 다른 사람이 이 문제를 우연히 발견할 경우를 대비해 아래에서 전체 프로세스(Freddy의 단계 포함)를 더 자세히 설명하겠습니다.
그러나 현재 안정적인 Super Grub2 Disk iso 이미지는 USB 스틱에서 부팅할 수 없습니다. 테스트해보고 사용해야겠어요다중 아키텍처 USB 이미지.
전체 프로세스는 다음과 같습니다.
- Super Grub 2 디스크 USB 스틱을 만들고 테스트해보세요 :-)
- 기존 HDD 또는 SSD에서 마지막 부팅
- 만들다"gpt"새 SSD의 파티션 테이블 및 일부 파티션:
- "EFI 시스템" 파티션, 유형 EF00, VFat 포맷 및 /boot/efi에 설치
- /boot에 설치된 작은 Linux 파티션
- 암호화를 기반으로 LVM 사용,... 하나 이상의 시스템 파티션, 데이터...
- 해당하는 경우 암호화 및/또는 LVM을 설정하십시오.
- 기존 HDD 또는 SSD의 모든 데이터를 새 HDD 또는 SSD로 복사
- fstab 조정새 UUID, 태그 또는 새 루트 파일 시스템에서 사용 중인 모든 항목을 추가하세요.
- grub.cfg 조정그에 따라 새로운 to-be-/boot 파일 시스템에
- 폐쇄
- 기존 BIOS 기반 HDD 또는 SSD 연결을 끊습니다.
- 컴퓨터를 시작하고 UEFI 설정을 입력하십시오.
- CSM 비활성화
- Super Grub2 디스크 USB에서 부팅(UEFI 부팅 메뉴를 열어야 할 수도 있음)
- "부팅 방법 검색 및 표시"로 이동합니다(시간이 걸릴 수 있음). 이전에 grub.cfg를 올바르게 조정한 경우 올바른 메뉴 항목을 선택하기만 하면 수동으로 편집할 필요가 없습니다.
- 새 SSD에 grub 설치 수행
- UEFI 설정으로 다시 이동하여 새 SSD를 기본 Android 장치로 선택해야 할 수도 있습니다.