我正在运行 Arch Linux 6.0.9 作为 Windows 11 虚拟机的主机。
当我第一次安装 VM 时,我可以在 Windows 中使用默认 Windows 驱动程序选择 3840x2160 4k 分辨率(我认为这是 Windows 基本显示适配器),但是在安装 Spice 来宾工具并安装附带的驱动程序后,Windows 显示分辨率现在达到最大分辨率为 2560x1600。我在虚拟机配置页面上的视频设置显示为 QXL,我尝试过 VGA 和 Virtio,但它们只是提供了各种较低的分辨率,并且没有以前可用的 3840x2160。如何在 Windows 客户机中再次提供 3840x2160 分辨率?
我认为这可能与 Red Hat QXL 控制器显示适配器有关,但我不知道如何解决该问题。
答案1
我在使用 Windows 10 作为虚拟机来宾的 ArcoLinux(作为主机系统)上遇到同样的问题,并安装了 SPICE-GUEST-TOOL-0.141.EXE(2018 版本),因为它是我找到的最新可用文件。 SPICE-GUEST-TOOL安装解决了最终能够获得主机和来宾操作系统之间的复制粘贴功能的问题,但导致了分辨率问题......
这可能会引起一些兴趣:https://www.reddit.com/r/VFIO/comments/aqk2pk/qemukvm_4k_resolutions_using_qxl_via_command_line/
我遇到了一些我找不到更简单答案的问题,我想我应该把它发布在这里,而不是找到一个特定的发行版维基,这样我就可以回馈给每个人一些东西。 ;) 如果有人找到更线性地解释这个主题的位置,请随时为我参考,以便我学会更好地搜索。我运行 3440x1440 显示器,并在 Windows VM 上运行 Gentoo,其中我需要大于标准 QXL 视频驱动程序的 2560x1600 最大分辨率。我用谷歌搜索了(版权限制动词形式不是专有名词......)多种方法来为 Ubuntu 和 libvirt XML 执行此操作,但没有针对命令行。当我准备将问题发布到 reddit 时,我发现了这一点:
https://bugzilla.redhat.com/show_bug.cgi?id=1273106
我可以确认,在我从 qxl(spice tools 软件包中也有)切换到 virtio 0.1.141 iso 中的 qxldod 驱动程序后,Andrei Stepanov 的命令行可以正常工作。我确实必须先切换到驱动程序,然后在重新启动之间应用视频内存设置,但对于我使用 Windows 10 的场景来说,这可能是轶事或暂时的。我相信使用相同的 QEMU 参数,对 Linux 的客户支持要直接得多。您可能需要扩展以获得更大的分辨率。它的数学运算在主流文章/帖子的其他地方。
-vga qxl -global qxl-vga.ram_size=134217728 -global qxl-vga.vram_size=134217728 -global qxl-vga.vgamem_mb=32
我从来不知道将其他参数传递给 QEMU 的“-global”方法。让我以后能学到更多东西。否则,互联网上已经有足够的内容可以对 libvirt 解决方案采取行动。我只是还没有转换过来。不过,阅读 pvpanic 确实可以让我在有时间的时候走向更高级的方向。
答案2
显然,分辨率选项由访客可用的 VGA 内存控制,默认为 16MB。如果您通过 更新该设置virsh
,您可以做得更大。像示例中那样更新到 64MB 可以让我扩展到 4096 x 2160。