无法在 Ubuntu 18.04 上通过 SSH 执行 Virsh 命令

无法在 Ubuntu 18.04 上通过 SSH 执行 Virsh 命令

我正在使用 Ubuntu 18.04 作为 KVM 主机。在 jumphost 上,我尝试执行 virsh 命令:

ssh 用户@ip “virsh dominfo vm1”

我收到一个错误:无法获取域“vm1”但此命令在 KVM 主机上运行良好。我发现如果 KVM 主机是 Ubuntu 16.04,则不会发生此问题。

答案1

要连接的 virsh 的默认 URI 可以改变(并且它确实改变了上游)。

您可以使用以下方法检查:

$ ssh ubuntu@ip -t 'bash -l -c "virsh uri"'
qemu:///system
$ ssh ubuntu@ip "virsh uri"
qemu:///session

Ubuntu 尝试通过环境变量来提供帮助LIBVIRT_DEFAULT_URI=qemu:///system,但该功能仅在登录 shell 中可用。

因此您需要确保使用完整的登录 shell 例如:

  $ ssh ubuntu@ip -t 'bash -l -c "virsh dominfo vm1"'

或者使用您自己的环境变量来增强您的调用:

  $ ssh ubuntu@ip "LIBVIRT_DEFAULT_URI=qemu:///system virsh dominfo vm1"

相关内容