직장에서 이상한 상황에 직면했습니다. 약 700개의 시스템이 있었는데 모두 기본적으로 EFI로 부팅되었습니다.
PXE 메뉴를 설정하고 CentOS를 설치할 수 있었지만 프로세스를 계속하려면 장치를 레거시 부팅 모드로 전환해야 했습니다.
이로 인해 문제가 발생합니다. UEFI 설치 프로그램 모드에서 CentOS 7.4를 설치하면 BIOS가 레거시 모드로 전환될 때 부팅이 실패합니다.
UEFI 모드에서 실행할 때 CentOS 7.4가 레거시 부트로더 설치를 자동으로 수행하도록 하는 방법은 무엇입니까?
답변1
예. 아래와 같이 --target
옵션을 사용하여 플랫폼을 설정할 수 있습니다.grub2-install
grub2-install --target=i386-pc /dev/sdX
i386-pc
옵션은 부팅 플랫폼에서도 레거시 grub 설치를 생성합니다 UFI
.
노트bios-boot
파티션 테이블이 있는 기존 Grub을 설치할 때 플래그가 있는 포맷되지 않은 작은 1Mb 파티션이 있어야 합니다 gpt
.
또한 grub이 구성 파일을 생성하도록 해야 하며 설치 프로그램이 EFI 모드에 있으므로 EFI 키워드 인스턴스를 레거시 키워드 인스턴스로 바꿔야 합니다. 다음은 awk를 사용하는 예입니다.
#EXAMPLE: Normal grub make config command
#grub2-mkconfig > /boot/grub2/grub.cfg
#With awk statement to replace EFI keywords with legacy ones:
grub2-mkconfig |awk '{gsub("linuxefi /", "linux /");gsub("initrdefi /", "initrd /");print $0}' > /boot/grub2/grub.cfg