virt-manager Spice 复制粘贴不起作用

virt-manager Spice 复制粘贴不起作用

我有一台在专用服务器上运行的 Debian 9 KVM 主机。我使用笔记本电脑(Ubuntu 16.04)上的 virt-manager 远程连接它。除了 VM 的 SPICE 显示器(嵌入在 virt-manager 中的显示器)和我的笔记本电脑的 Ubuntu 之间的复制/粘贴操作外,一切都运行良好。

所有软件包均来自官方存储库。不涉及 PPA 或第三方存储库。

还尝试使用 VNC 代替 Spice,但是也没有用。

我刚刚想到可以通过 RDP 连接到虚拟机,但由于我的笔记本电脑和虚拟机之间有防火墙和路由,所以这个过程非常痛苦。另外,并不是我所有的机器都有 WAN 访问权限。

寻找有关 virt-manager 的更简单的解决方案。

答案1

首先,您需要确保已经在客户操作系统中安装了 libvirt 客户实用程序。

此外,为了使复制/粘贴功能正常工作,除了分配给虚拟机的 VirtIO 串行设备外,您还需要一个 SPICE 来宾代理套接字设备,这将允许 virt-viewer 和大多数其他 SPICE 客户端通过虚拟串行连接管道复制/粘贴,而来宾代理将处理该连接。定义这些设备可能已经为您完成,特别是如果您使用 virt-manager 来创建这些虚拟机(virt-manager 假定大多数来宾都安装了 GUI)。

为了在基于 Debian 的 GNU/Linux 客户机上安装客户代理,您需要运行: sudo apt install spice-vdagent

为了在 Windows 机器上安装客户代理,您必须安装位于此处的软件包:https://www.spice-space.org/download/binaries/spice-guest-tools/

最后,您需要在 Windows 中安装 VirtIO 驱动程序才能获得最先进的功能。这可以通过从 Win-virtio ISO(您必须将其附加到客户机)添加驱动程序来实现。这些驱动程序的链接如下:https://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers

正如您在下面的评论中指出的那样,您必须确保 Spice Agent 在客户机中运行,才能完全发挥作用。重新启动是让该代理运行的可靠方法。

答案2

对于那些寻找答案的人来说,你需要将其添加到 XML 文件中

<devices>
    <controller type='virtio-serial' index='0'/>
    <channel type='spicevmc'>
        <target type='virtio' name='com.redhat.spice.0'/>
    </channel>
</devices>

并安装客户机,调用 debian 包spice-vdagent 并重新启动虚拟机

文档:https://www.spice-space.org/spice-user-manual.html#agent

答案3

如果你的客户操作系统是基于 Linux 的,请确保以下几点:-

  1. 显示输入应为 spice-vdagent

  2. spice-vdagent 安装在客户操作系统中

  3. 不要忘记spice-vdagent在终端中输入即可启动 spice-vdagent,并将其添加到 .bashrc 或 .zshrc 文件中,无论您使用哪种 shell

  4. 可在盒子或 QEMU/KVM virtmanager 中工作

答案4

安装包qemu-guest-Magent并将 Guest KDE plasma 切换到 X11 会话,为我解决剪贴板共享问题。

我的配置:

  • 主机、客户机操作系统:archlinux
  • 主机、客户机显示服务器协议:X11
  • 主持人、嘉宾 DE:KDE Plasma

相关内容