我有一个文件 win7.vhd,一直在 Boot to VHD 场景中使用。现在我想在 Hyper-V Server 中运行该 Windows 7 实例以及我拥有的其他几个 VM。我对 win7.vhd 进行了系统准备并将其复制到 Hyper-V Server,然后尝试使用该 .vhd 文件创建新 VM。我收到“启动失败。重新启动并选择正确的启动设备或在选定的启动设备中插入启动媒体”错误。有什么建议吗?
答案1
我能够使用在 Hyper-V Server 中找到的命令序列成功启动我的 vhdhttp://www.ravichaganti.com/blog/?p=317
- 启动 Windows 7 安装光盘。向导启动后,按 Shift+F10 打开命令提示符
- 打开 Diskpart
- 选择 vdisk 文件=D:\Win7.VHD
- 附加虚拟磁盘
- 选择第 1 部分
- 积极的
- 分配字母=Z
- 出口
- 现在,在命令提示符下,更改为 Z:\Windows\System32
- 运行,BCDboot.exe Z:\Windows /s Z:\
- 运行,BCDedit /store Z:\boot\BCD /set {bootmgr} 设备启动
- 运行,BCDedit /store Z:\boot\BCD /set {default} 设备启动
- 运行,BCDedit /store Z:\boot\BCD /set {default} osdevice boot
- 将目录更改为 C:\
- 再次打开 Diskpart 并运行
- 选择 vdisk 文件=D:\Win7.VHD
- 分离虚拟磁盘
- 出口
答案2
当您从 VHD(物理)启动时,启动加载程序和其他一些文件并不驻留在 VHD 内,而是驻留在托管卷上,因此,当 VHD 独立存在时(实际上在 VM 内),它是不完整的。
您可以通过从 Windows 7 安装 CD 启动 VM 并告诉它修复启动卷来修复此问题。