我正在使用流行的 ghettoVCB.sh 脚本来备份我的虚拟服务器,但在恢复运行 Windows Server 2012 的虚拟机时遇到了问题(所有 Linux 操作系统的虚拟机都不会遇到此问题)。在恢复使用 Windows Server 2012 的虚拟机后 - 它无法启动 - 而是显示如下内容:
Windows failed to start. A recent hardware or software change might be the cause. To fix the problem:
1. Insert your Windows installation disc and restart your computer.
2. Choose your language settings, and then click "Next."
3. Click "Repair your computer."
If you do not have this disc, contact your system administrator or computer manufacturer for assistance.
Status: 0xc000000e
Info: The boot selection failed because a required device is inaccessible.
经过多次研究,我找到了解决此问题的方法(这与磁盘 ID 有关,克隆 vmdk 文件时磁盘 ID 会发生变化)。要使恢复的 VM 再次可启动,我必须:
- 从 Windows 安装磁盘启动此 VM 并运行命令提示符。
- 发出命令“bootrec \fixmbr”和“bootrec \fixboot”。
- 运行 diskpart 并将磁盘 uniqueid 更改为以前的值(即备份之前的值)。
这种方法对我来说一直很有效(尽管有一个问题:在恢复 VM 之前必须记下磁盘 ID),但最近我必须使用 Windows Server 2016 恢复一些较新的 VM,在这种情况下(不知道它是否也适用于 W2019)这种方法不再起作用。
我不确定这个问题是否普遍存在于 W2016/W2019 中,还是只是我在这个特定的 VM 上遇到了其他问题。这次 Windows Server 开始启动,显示 Windows 徽标和旋转的圆点,并永远停留在这个屏幕上。
我想了解:
- 为什么克隆.vmdk 文件会导致磁盘 ID 改变?
- 如何预防?
- 如何恢复无法启动的 W2016 和 W2019?
PS 备份没有损坏 - 我可以将 vmdk 文件挂载到其他正在运行的 VM,检查它们等 - /vmdk 文件上没有错误。
预先感谢您的任何帮助。
P.S2:感谢 Daniel Ocando 纠正我的拼写错误
答案1
尝试过启用“静止”吗?
如果没有,请尝试使用此选项进行测试:
- 在 Windows Server VM 上安装 VMware 工具
- 在 ghettoVCB.sh 或 ghettoVCB 配置文件中更改 VM_SNAPSHOT_QUIESCE=1。
答案2
问:如何恢复无法启动的 W2016 和 W2019?
答:您必须手动将 Windows Server 启动到所谓的“恢复模式”,并允许操作系统重建驱动程序堆栈并重新验证所有设置。某些产品(如 StarWind V2V Converter)会在 V2V 或简单克隆过程中自动执行此操作。