我在工作中遇到了一个奇怪的情况,我有大约 700 个系统,它们都默认启动到 EFI。
我设置了 PXE 菜单,并且可以安装 CentOS - 但设备需要切换到传统启动模式才能继续我们的过程。
这就带来了一个问题;一旦 CentOS 7.4 在 UEFI 安装程序模式下安装,当 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