![如何让在 KVM 上运行的 Windows Server 2012 使用 virtio 而不是 IDE 启动?](https://linux22.com/image/637906/%E5%A6%82%E4%BD%95%E8%AE%A9%E5%9C%A8%20KVM%20%E4%B8%8A%E8%BF%90%E8%A1%8C%E7%9A%84%20Windows%20Server%202012%20%E4%BD%BF%E7%94%A8%20virtio%20%E8%80%8C%E4%B8%8D%E6%98%AF%20IDE%20%E5%90%AF%E5%8A%A8%EF%BC%9F.png)
我在 Ubuntu 14.04 的 KVM 上运行 Windows Server 2012 Essentials。我遇到了一些问题,详情请见此处Ubuntu 14.04 上的 KVM 上的 Windows Server 2012。运行一段时间后速度变慢
我在这方面没有取得太大进展,但我想我会尝试将磁盘从 virtio 更改为 IDE,以防 Windows 2012 上的 virtio 出现问题。这似乎没有帮助,所以我现在想回到 virtio 以获得更好的性能。现在的问题是,只有当 C:驱动器是 IDE 时它才会启动。如果我使用 virsh 将我的 C:驱动器设置为 virtio,则 Windows 将开始启动,但会出现修复屏幕。如果我转到命令提示符,diskpart 会报告没有磁盘。显然它忘记了 virtio 驱动程序,这有点奇怪,因为我有 d:e:和 f:驱动器仍在运行 virtio,因此驱动程序在那里并已安装,但在启动时无法像以前那样被识别。
当我有机会按下一个键并安装驱动程序时,我最初在安装开始时安装了 virtio 驱动程序。
我怎样才能让它再次识别 virtio 驱动程序?
我的情况基本上是,我之前安装的是 IDE,现在想换成 virtio。这个视频似乎有一个解决方案。https://www.youtube.com/watch?v=tlh4zxqfvhk&feature=youtu.be他使用安装 CD 启动并返回到驱动程序提示符,安装驱动程序并退出。当我尝试这样做并点击“安装”按钮时,它提示我输入 Windows 注册码,然后它告诉我取出 CD 并重新启动。我从未收到驱动程序提示符。
是否值得创建另一个分区,安装最低版本的 Windows 8,在其上启动,确保我原来的 C: 驱动器有 virtio 驱动程序,然后将其标记为活动并重新启动?我见过这种程序的描述。
还有其他“技巧”可以让我回到原来的位置吗?
谢谢
答案1
- 将新的 VirtIO 磁盘附加到您的虚拟机,无论它是在线还是离线。
- 在线时,Windows 将识别新磁盘并要求驱动程序。安装 virtIO 驱动程序。
- 驱动程序安装成功后,关闭您的虚拟机。
- 在虚拟机离线的情况下,删除步骤 1 中附加的磁盘。
- 在虚拟机离线的情况下,将原始虚拟机磁盘的类型更改为 VirtIO。
- 启动您的虚拟机。
Windows 不会抱怨,因为您已经有驱动程序(在步骤 2 中安装)。
答案2
我设法修复了它。在设备管理器中,我卸载并删除了其他磁盘的 virtio 驱动程序,然后让它再次检测磁盘并重新安装驱动程序。这不知何故覆盖了某些内容并使其恢复正常,因为当我将其更改为 virtio 时,它识别了我的启动驱动器。