我的 KVM(Libvirt)Linux 机器上有一个 Windows 10 VM。当我运行其他 VM(如任何 Linux 发行版)时,响应性相当好,几乎察觉不到。然而,使用 win10 vm 时,在移动窗口或移动鼠标时,它会非常“滞后”。
我能做些什么来让虚拟机响应更快?
答案1
这些是我为了从 Windows VM 中获得最佳整体性能(和交互性能!)所做的事情:
- 使用尽可能接近主机 CPU 的虚拟 CPU 类型。如果不需要实时迁移,最好设置 host-passthrough。
- 使用 Virtio-SCSI 控制器和 SCSI 虚拟硬盘(而不是 Virtio 或 SATA 虚拟硬盘)。这需要在安装时提供驱动程序,但这是很容易。
- 将显示设置为 Spice(不是 VNC),并将视频控制器设置为 QXL。
- 安装最新的Spice 宾客工具在虚拟机中。(这可能是您错过的。)
答案2
安装 Windows VM 有时比较棘手。至少对于获得良好的性能来说是这样。
当我安装 Windows 10 VM 时,我执行以下操作:
- 2 vCPU,4 Go RAM。
- 对于 CPU,复制主机配置
- 1 个硬盘映像(qcow2)
- 磁盘总线 Virtio
- 性能、缓存模式写回、E/S 模式线程
- 网络也设置为 virtio
安装前,插入此 ISO(除了 Windows ISO 磁盘) ISO
在安装过程中,您需要添加以下驱动程序才能使其正常工作:
- 维奥斯托
- NETKVM
- 气球
就您而言,由于您已经部署了虚拟机,因此您需要安装完全相同的驱动程序。但请遵循特殊程序,因为切换到 virtio 会破坏您的虚拟机。
通过遵循这个线你可以解决这个问题。
以下是 TLDR (安装驱动程序后):
在您的虚拟机上以管理员身份打开 CMD 并输入以下内容(进入安全模式):
bcdedit /set {current} safeboot minimal
关闭虚拟机,将存储和网络切换到 virtio。
启动虚拟机,它将进入安全模式。
以管理员身份打开 CMD 并输入以下内容(以返回正常模式):
bcdedit /deletevalue {current} safeboot
现在您应该能够获得快速、流畅的 Windows VM。