我无法使我的 VHD 可启动。
我正在跟进这个行会逐字逐句地尝试创建可启动的 VHD。
应该BCDboot
创建启动配置条目,以便 Windows 引导加载程序可以从 VHD 启动,并且我已经看到它成功了,但是,它就是不起作用:
D:>P:\windows\system32\bcdboot P:\windows /s P:
Boot files successfully created.
D:>BCDEdit
Windows Boot Manager
--------------------
identifier {bootmgr}
device partition=\Device\HarddiskVolume1
path \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {current}
resumeobject {c605aeaf-...8}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.efi
description Windows 10
locale en-US
inherit {bootloadersettings}
recoverysequence {c605aeb1-...8}
displaymessageoverride Recovery
recoveryenabled Yes
isolatedcontext Yes
allowedinmemorysettings 0x15000075
osdevice partition=C:
systemroot \Windows
resumeobject {c605aeaf-...8}
nx OptIn
bootmenupolicy Standard
hypervisorlaunchtype Auto
也就是说,device partition=P:
没有该条目。当我尝试从 Hyper-V 启动它时,Hyper-V 告诉我没有引导加载程序。
可能出现什么问题?我该如何解决?(再次,我被关注这个行会逐字逐句地成功,直到我来到bcdboot
&BCDEdit
步骤。也就是说,我的所有步骤都与那里显示的完全一样。)
更新:
我不确定我是否正在使用 UEFI,因为这些就是我创建磁盘所需的全部内容:
select vdisk file=e:\vhd\winboot.vhd
attach vdisk
create partition primary
assign letter=v
active
format quick FS=NTFS Label=VHD
最重要的是,当选择 hyper-v 的代数类型时,我选择了第 1 代,我认为它不支持 UEFI。
答案1
如果您使用的是 UEFI,则需要将附加的 VHD 的分区表转换为 GPT:
- 访问 WinPE
答案2
随后的教程省略了创建启动分区以及 WinRE 的步骤:
- 通过以下方式创建正确的分区结构
DiskPart
:- 清除VHD的分区表并重新分区更简单(视频高清
disk 0
:):# Select disk and clear the partition table: Sel Dis 0 Clean # Create WinRE partition: Cre Par Pri Offset=1024 Size=665 Id=27 Format Quick Fs=ntfs Label=WinRE # Create Boot partition: Cre Par Pri Size=100 Format Quick Fs=ntfs Label=Boot Active # Create System partition: Cre Par Pri Format Quick Fs=ntfs Label=System # Verify: Lis Par Lis Vol Exit
- 如果保留 VHD 的 [OS] 系统分区上的现有数据:
# Select disk and [OS] System partition: Sel Dis 0 Sel Par 1 # Shrink System partition by 765MB [RAW]: Shrink Desired=765 Minimum=750 # WinRE: 665MB, min 650MB # WinRE partition must have 320MB free (WinRE.wim is ~300MB in size) # Boot: 100MB # Create WinRE partition: Cre Par Pri Offset=1024 Size=665 Id=27 # If it fails, remove Offset=1024 Format Quick Fs=ntfs Label=WinRE # Create Boot partition: Cre Par Pri Size=100 Format Quick Fs=ntfs Label=Boot Active # Verify: Lis Par Lis Vol
- 清除VHD的分区表并重新分区更简单(视频高清
- 配置启动分区:
- 在 VHD 的 VM 中启动到 Windows 时:
BCDboot C:\Windows /v
- 从 WinPE/WinRE:
- 通过 Windows 安装 ISO 将 VHD 的 VM 启动到 WinPE
- 通过打开终端SHIFT+F10:
BootRec /FixMBR && BootRec /FixBoot && BootRec /RebuildBCD
/RebuildBCD
可能会或可能不会找到操作系统,都可以 - 重启虚拟机
- 在 VHD 的 VM 中启动到 Windows 时:
- 通过配置 WinRE 分区这回答:
- #2:如果 VHD 中没有 WinRE
C:\Recovery
,%WinDir%\System32\Recovery\
请将主机的复制WinRE.wim
到 VHD 的%WinDir%\System32\Recovery\
- #3:跳过(WinRE 分区创建)
- #2:如果 VHD 中没有 WinRE