virt-manager 无法使用 NVIDIA 专有驱动程序初始化 SPICE GL 的 EGL 渲染节点

virt-manager 无法使用 NVIDIA 专有驱动程序初始化 SPICE GL 的 EGL 渲染节点

我在 Fedora Workstation 26 主机上有一个 virt-manager。

我已经设置了 Windows 11 Educational 虚拟机。

我有一个 Spice 显示服务器,其“监听类型”设置为“无”,并且使用我的 NVIDIA 显卡设置了 OpenGL。

我使用专有的 NVIDIA 驱动程序。

我还使用启用了 3D 加速的 virtio 视频。

但是当我启动虚拟机时,出现以下错误:

Error starting domain: internal error: process exited while connecting to monitor: 2022-07-08T13:45:11.588270Z qemu-system-x86_64: egl: eglInitialize failed
2022-07-08T13:45:11.588413Z qemu-system-x86_64: Failed to initialize EGL render node for SPICE GL

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 72, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 108, in tmpcb
    callback(*args, **kwargs)
  File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 57, in newfn
    ret = fn(self, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/object/domain.py", line 1384, in startup
    self._backend.create()
  File "/usr/lib64/python3.10/site-packages/libvirt.py", line 1353, in create
    raise libvirtError('virDomainCreate() failed')
libvirt.libvirtError: internal error: process exited while connecting to monitor: 2022-07-08T13:45:11.588270Z qemu-system-x86_64: egl: eglInitialize failed
2022-07-08T13:45:11.588413Z qemu-system-x86_64: Failed to initialize EGL render node for SPICE GL

如何让我的虚拟机在 NVIDIA 显卡上使用 3D 加速?

答案1

就像声明的那样这里这里,virtio-gpu 目前仅适用于 Linux 客户机,但未来它的目标是也适用于 Windows 客户机。但是,如果你想让它开箱即用,nouveau 驱动程序似乎比 NVIDIA 驱动程序更好(我找不到它的来源,但我在网上研究时在某处读到过它,而且我目前在使用 nvidia 驱动程序实现这一点时遇到了困难,我找到了这篇关于它的帖子virtion-gpu 和 NVIDIA 驱动程序)如果您希望 Windows 客户机具有 3D 加速功能,则有两种选择:

  1. 使用 PCI 直通,但需要两张显卡
  2. 使用 NVIDIA 的 vGPU

你会在Arch Linux 维基以获取说明。

相关内容