|
EFI Shell 引导 GRUB2 或 GRUB4DOS for EFI
EFI Shell 是新型的可扩展接口,以命令行的形式进行交互。在这里你可以执行一些 EFI 应用程序,加载 EFI 设备驱动程序。
将 EFI-Shell.zip 解压到分区格式为 FAT32 (或U盘)分区下:\EFI\BOOT\BOOTX64.EFI,\EFI\BOOT\startup.nsh。
编辑 startup.nsh 文件(或可直接复制以下内容),引导 \EFI\GRUB\GRUB2X64.EFI 或 GRUB4DOS for EFI 引导文件(无忧论坛找,需重命名):
@echo -off
for %i in 0 1 2 3 4 5 6 7 8 9
if exist fs%i:\EFI\BOOT\startup.nsh then
fs%i:
cd \EFI\GRUB\
GRUB2X64.EFI
endif
endfor
\EFI\GRUB\GRUB2X64.EFI 或 GRUB4DOS for EFI 引导文件的菜单文件 \EFI\GRUB\grub.cfg 或 \EFI\GRUB\menu.lst 也需搁在 \EFI\GRUB\ 目录下。
启动电脑,按 F12 (或其他 FX)进入 BOOT MENU 界面,,选择 \EFI\BOOT\startup.nsh 文件所在分区启动。
因为 \EFI\GRUB\GRUB2X64.EFI 所加载驱动很少,\EFI\GRUB\grub.cfg 要加载一些必要的驱动,如:
### Load necessary modules ###
# insmod part_gpt
# insmod part_msdos
insmod ext2
insmod fat
insmod exfat
insmod ntfs
insmod iso9660
insmod search_fs_file
insmod all_video
insmod usb_keyboard
insmod gfxterm
insmod png
### Boot Menu ###
menuentry 'Start Windows 11' {
search --no-floppy --file --set=root /EFI/Microsoft/Boot/bootmgfw.efi
chainloader ($root)/EFI/Microsoft/Boot/bootmgfw.efi
}
menuentry "Chainloading grub4dos bootloader" {
echo "Chainloading grub4dos bootloader..."
search --no-floppy --file --set=root /EFI/GRUB/grldr_x64.efi
chainloader ($root)/EFI/GRUB/grldr_x64.efi
}
menuentry "Exit GRUB" {
echo "Exit GRUB..."
exit
}
menuentry "System restart" {
echo "System rebooting..."
reboot
}
menuentry "System shutdown" {
echo "System shutting down..."
halt
}
说明:(1)"Chainloading grub4dos bootloader" 这项可以直接加载 GRUB4DOS for EFI 引导文件,进入 \EFI\GRUB\menu.lst 菜单界面;(2)"Exit GRUB" 退出 GRUB2 回到 EFI Shell 界面。
EFI Shell 界面简单命令:
reset //重启电脑
reset -s //关机
exit //退出 EFI Shell 界面
help //更多命令信息。
GRUB 附件说明:GRUB2X64.EFI 用 grub-mkimage 命令手工打造,包含所有驱动(*.mod);GRUBX64.EFI 用 grub-mkstandalone 命令自动生成,也包含所有驱动(*.mod);它们都是在 BIOS 设置 Secure Boot 禁用情形下生成。
|
|