无忧启动论坛

标题: uefi+grub2引导win+vhd+wim+iso的多个写法学习小结 [打印本页]

作者: qj_tzy    时间: 2 小时前
标题: uefi+grub2引导win+vhd+wim+iso的多个写法学习小结
uefi+grub2引导win+vhd+wim+iso的多个写法学习小结


在学习grub2的过程中,得到了多个网友的热心指导,特别是几位大大的悉心指导,让我获益非浅。
为此,我也想作了小小的贡献,把我学习中的小结贴出。
若下述有误的,敬请指出。
对uefi+grub2引导win+vhd+wim+iso的方法,我未能列出的,敬请各位列出,供大家学习借鉴为谢!
所需引导工具是从本论坛下载的


==========================
一、引导win分区系统


#试图列出我所知道的 uefi+grub2 方式下引导winnt6主要是win10+win11 分区系统的多个写法


menuentry "0.[uefi] win11-bcd" --hotkey=0 --class=windows{
chainloader (${root})/efi/win/win11/bootx64.efi
}
#/efi/win/win11/bcd是通用的,即可引导安装在不同电脑、不同磁盘不同分区中的win11


menuentry "1.[uefi] win10-bcd" --hotkey=3 --class=windows{
chainloader (${root})/efi/win/win10/bootx64.efi
}
#/efi/win/win10/bcd是通用的,即可引导安装在不同电脑、不同磁盘不同分区中的win10


menuentry "2.[uefi] win10-run" --hotkey=2 --class=windows{
source $prefix/run/run.cfg
run /efi/win/win10/bootx64.efi
}


menuentry "3.[uefi] win10-ntboot" --hotkey=3 --class=windows{
insmod ntboot
#ntboot --efi=(${root})/EFI/win/win10/bootx64.efi
#用上句不能引导
set currroot=(${root})
search --file --no-floppy --set=root /Windows/system32/AzureSettingSyncProvider.dll
#该文件为win10的特征文件
ntboot --efi=${currroot}/winpe/bootmgfw.efi --win (${root})
}


menuentry "4.[uefi] Win10-wimboot" --hotkey=4 --class=windows{
insmod wimboot
#search --file --no-floppy --set=root /efi/win/win10/bootx64.efi
#wimboot @:bootmgfw.efi:(${root})/efi/win/win10/bootx64.efi @:bcd:(${root})/efi/win/win10/bcd
#上两句不能引导,因其bcd是通用的,wimboot使用外部或内部的bcd均可,但不支持bcd是通用的,必须设定为引导win10所在分区。
search --file --no-floppy --set=root /Windows/system32/AzureSettingSyncProvider.dll
#该文件为win10的特征文件
wimboot @:bootmgfw.efi:(${root})/efi/boot/bootx64.efi @:bcd:(${root})/efi/boot/bcd
#上句要在windows分区上添加\efi\boot\bootx64.efi+bcd
}


menuentry "5.[uefi] win10-ntloader" --hotkey=5 --class=windows{
search --file --no-floppy --set=root /ntloader/ntloader
search --file --no-floppy --set=dev /Windows/system32/AzureSettingSyncProvider.dll
#该文件为win10的特征文件
probe -s dev_uuid -u $dev
chainloader /ntloader/ntloader initrd=/ntloader/initrd.cpio uuid=${dev_uuid}
}


==============================
二、引导vhd/vhdx


#试图列出我所知道的 uefi+grub2 方式下引导win7/8/10/11_x64的原生vhd/vhdx系统引导的多个写法
#uefi+grub2+map,不支持vhd/vhdx的引导,因此未列出
#用win7_x64.vhd及win8.1_x64.vhdx系统作的测试。因电脑中未安装win10vhdx及win11vhdx系统,未用后两者作测试。


menuentry "0.[uefi] Win8vhd-bcd" --hotkey=0 --class=windows{
chainloader (${root})/efi/win/win8vhd/bootx64.efi
}


menuentry "1.[uefi] Win7vhd-bcd" --hotkey=1 --class=windows{
chainloader (${root})/efi/win/win7vhd/bootx64.efi
}


menuentry "2.[uefi] Win7vhd-run" --hotkey=2 --class=windows{
insmod ntboot
source $prefix/run/run.cfg
run /vhds/win7_x64.vhd
}


menuentry "3.[uefi] Win7vhd-ntboot" --hotkey=3 --class=windows {
insmod  ntboot
search --file --no-floppy --set=efi_root /winpe/bootmgfw.efi
search --file --no-floppy --set=vhd_root /vhds/win7_x64.vhd
ntboot --efi=($efi_root)/winpe/bootmgfw.efi --vhd ($vhd_root)/vhds/win7_x64.vhd
}


menuentry "4.[uefi] Win7vhd-wimboot" --hotkey=4 --class=windows{
insmod wimboot
search --file --no-floppy --set=root /efi/win/win7vhd/bootx64.efi
wimboot @:bootmgfw.efi:(${root})/efi/win/win7vhd/bootx64.efi @:bcd:(${root})/efi/win/win7vhd/bcd
}


menuentry "5.[uefi] Win7vhd-ntloader" --hotkey=5 --class=windows{
search -s -f /ntloader/ntloader
search -s dev -f /vhds/win7_x64.vhd
probe -s dev_uuid -u $dev
chainloader /ntloader/ntloader initrd=/ntloader/initrd.cpio uuid=${dev_uuid} vhd=/vhds/win7_x64.vhd
}


=========================================


三、引导wim+iso


#试图列出我所知道的 uefi+grub2 方式下引导winnt6之win10pe+win11pe-wim+iso系统的多个写法


menuentry "0.[uefi] Win10pe-wim-bcd" --hotkey=0 --class=windows{
chainloader (${root})/efi/win/win10wimpe/bootx64.efi
}


menuentry "1.[uefi] Win10pe-wim-ntboot" --hotkey=1 --class=windows{
insmod ntboot
ntboot --efi=/winpe/bootmgfw.efi --sdi=/winpe/boot.sdi --wim --highest=yes /winpe/win10pe_x64_bios_uefi.wim
}
   
menuentry "2.[uefi] Win10pe-wim-wimboot" --hotkey=2 --class=windows{
insmod wimboot
search --file --no-floppy --set=root /winpe/win10pe_x64_bios_uefi.wim
wimboot --rawwim @:bootmgfw.efi:(${root})/winpe/bootmgfw.efi @:boot.wim:(${root})/winpe/win10pe_x64_bios_uefi.wim
}


menuentry "3.[uefi] Win10pe-wim-run" --hotkey=3 --class=windows{
insmod ntboot
source $prefix/run/run.cfg
run /winpe/win10pe_x64_bios_uefi.wim
}


menuentry "4.[uefi] Win10pe-wim-ntloader" --hotkey=4 --class=windows{
search -s -f /ntloader/ntloader
search -s dev -f /winpe/win10pe_x64_bios_uefi.wim
probe -s dev_uuid -u $dev
chainloader /ntloader/ntloader initrd=/ntloader/initrd.cpio uuid=${dev_uuid} wim=/winpe/win10pe_x64_bios_uefi.wim
}


menuentry "5.[uefi] Win11pe-iso-map" --hotkey=5 --class=windows{
insmod map
map --type=CD /winpe/win11pe_x64.iso
}


menuentry "6.[uefi] Win11pe-iso-run" --hotkey=6 --class=windows{
insmod map
source $prefix/run/run.cfg
run /winpe/win11PE_x64.iso
}


menuentry "7.[uefi] Win11pe-iso-isoldr" --hotkey=7 --class=windows{
chainloader $prefix/isoldr.efi file=/winpe/win11pe_x64.iso
#事先把isoldr.efi拷入/efi/grub2_x64/目录下
}



作者: handsome_xiang    时间: 2 小时前
感谢分享!
作者: 燕飞龙    时间: 2 小时前
感谢分享
作者: dksoft    时间: 2 小时前
感谢分享
作者: l3429900    时间: 1 小时前
感谢分享
作者: wn168cn@163.com    时间: 1 小时前
感谢分享
作者: cncecpcy    时间: 1 小时前
好。。。。。。。。
作者: crzwy    时间: 1 小时前
感谢分享

作者: 路路路过    时间: 1 小时前
感谢大佬分享
作者: liaohanwen    时间: 1 小时前
感谢分享
作者: a66    时间: 半小时前
重复发帖
作者: PCHH    时间: 半小时前
感谢分享
作者: win82    时间: 半小时前
感谢分享
作者: it323    时间: 26 分钟前
感谢分享!




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3