`virsh -c qemu:///session list --all` 列出了在 `QEMU/KVM` 连接中创建的虚拟机,但遗漏了来自 Virt-Manager 的 `QEMU/KVM 用户会话` 的虚拟机

`virsh -c qemu:///session list --all` 列出了在 `QEMU/KVM` 连接中创建的虚拟机,但遗漏了来自 Virt-Manager 的 `QEMU/KVM 用户会话` 的虚拟机

# virsh -c qemu:///session list --all仅列出在QEMU/KVM连接(系统!)中创建的虚拟机,但在 Virt-Manager 的 GUI 中遗漏了我创建的虚拟机QEMU/KVM User session。为什么?从下面我明白我使用的命令语法是正确的:

将 QEMU/KVM VM 从 qemu:///system 迁移到 qemu:///session

当尝试使用 virsh list --all 列出虚拟机时,我的虚拟机未列出?并且,如果我通过运行 virsh -c qemu:///system list --all 指定系统 URI,我会看到我的虚拟机列出。

使用virsh -c qemu:///system list --allvirsh list --all生成相同的列表。

virt-manager 不显示本地 KVM 列表,但 virsh 会显示

检查 virsh uri 的输出。如果它返回 qemu:///session

在我看来virsh可以与用户会话一起使用。是否需要进行一些配置?

Virsh 无法检测到我的新虚拟机谈到在virsh没有 sudo 的情况下运行时缺少列出的 VM,但我只得到:

$ virsh uri
error: failed to connect to the hypervisor

答案1

我理解(回忆)为什么virsh普通用户会失败。我通过newgrp libvirt以下技巧启动了 virt-manager:https://askubuntu.com/a/1119779/796396在主机控制台中再次使用它会产生“正确”的结果:

$ newgrp libvirt
$ virsh --connect qemu:///session list --all
 Id   Name      State
------------------------
 1    LM_21_1   paused

因此,未列出虚拟机的问题User session是由于virsh以 root 身份运行造成的。

为什么它列出的是qemu:///system1?我猜是 root qemu:///session= qemu:///system,对吗?

相关内容