如果您需要在 Windows 系统还原(又名 Windows 恢复模式)中加载 VirtIO 块存储驱动程序(又名 viostor)以恢复您的 Windows 虚拟机,请执行以下步骤。(另请阅读我下面的注释)。
- 下载 virtio-win iso并在您的 VM 设置中将其添加为 CD/DVD 驱动器。
- 启动 Windows 系统还原并启动命令提示符:
- 运行
wmic logicaldisk get caption
以了解当前可用的驱动器。X: 是系统还原本身,virtio-win iso 应该可以作为 D: 或 E: 使用 - 如果您使用的是 Windows 10 x64,加载存储驱动程序的命令将是:
drvload D:\viostor\w10\amd64\viostor.inf。对于其他驱动程序和系统,请参阅 VirtIO 文档。 - 通过
wmic logicaldisk get caption
再次运行验证是否有可用的新驱动器。
一旦您可以访问系统驱动器,您可能希望在其上安装或更新 VirtIO 存储驱动程序。
使用 DISM 安装存储驱动程序
如果您在存储适配器之间迁移 Windows 安装,通常会留下众所周知的 STOP 0x7B INACCESSIBLE_BOOT_DEVICE
。发生这种情况是因为 Windows 尚未安装所需的驱动程序,和/或设置为启动关键。
该dism.exe工具让我们来安装(启动至关重要的)驱动程序到脱机Windows“形象”。请注意,脱机 Windows“映像”没什么特别的 - 常规 Windows 安装是有效的 Windows“映像”。
在 STOP 0x7B 之后,Windows 启动管理器通常会设置回退启动到WinRE(Windows 恢复环境)。WinRE 有一个 DISM 工具的副本,所以你很高兴。(如果需要,请取消启动恢复助手。)
从 WinRE(或 WinPE)命令提示符使用的示例 DISM 命令:
安装 Microsoft/通用存储驱动程序
这包括 MSAHCI、IntelIDE、AMDIDE、ATAPI、PCIIDE 等:
dism /image:d:\ /add-driver /driver:d:\windows\inf\mshdc.inf /forceunsigned
(D: 假定为 Windows SystemDrive 分区。)
安装 LSI MegaRAID / SAS/SATA 驱动程序
dism /image:d:\ /add-driver /driver:d:\windows\inf\megaraid.inf /forceunsigned
(D: 假定为 Windows SystemDrive 分区。)
安装 VirtIO 存储驱动程序
如果您安装了VirtIO 驱动程序ISO,并在恢复 GUI 中添加了驱动程序,dism 也可以将它们添加到离线 Windows:
dism /image:c:\ /add-driver /driver:d:\win7\amd64\viostor.inf
(C: 假定为 Windows SystemDrive 分区,而 D: 为 virtio ISO/CD。)
我建议不要在 Windows 系统还原中使用 VirtIO 存储驱动程序进行实际系统恢复,即除了简单地访问您的文件之外的任何其他内容。根据我的经验,它根本不起作用:无论您选择什么选项——“启动修复”或“返回上一个版本”——它只会显示一个毫无意义的错误。如果您可以通过 SCSI/SATA 将虚拟映像重新连接到您的 VM,那将是一个更好的选择。