如何从命令行打开 Virt-manager 虚拟机?

如何从命令行打开 Virt-manager 虚拟机?

我的系统是 Arch Linux 5.17.9,运行 i3wm。

我正在尝试启动一个在 Virt-Manager 和 Qemu 中配置的虚拟机。

我已经尝试过该命令,

sudo virsh list --all

这会在终端的 Virt-Manager 上显示已安装的虚拟机。

然后我尝试过,

sudo virsh start "VM-Name"

这显然启动了虚拟机,但没有打开任何窗口,我必须手动打开 Virt-Manager 机器。我想运行单个命令并让虚拟机出现在窗口中。

最终,我想将此命令附加到我的 i3 安装上的按键绑定,并通过一次按键将其打开。

答案1

有一个与以下命令virt-manager类似的命令virt-viewer卡斯的回答

# start the VM
virsh --connect qemu:///system start "VM-NAME"
# connect to the VM
virt-manager --connect qemu:///system --show-domain-console "VM-NAME"

答案2

我认为这是不可能的。 virshvirt-manager都是控制前端libvirtd——前者是 CLI 界面,后者是 GUI 界面。

你可以运行类似的东西sudo virsh start "VM-Name" && virt-viewer "VM-Name"。当然,您可以编写 shell 函数或脚本来执行此操作。例如:

#!/bin/bash

sudo virsh start "$1" && sudo virt-viewer "$1"

请注意,这不会virt-manager自行启动,它只会启动virt-viewer(这与虚拟机的 virt-manager GUI 控制台非常相似,但缺少一些有用的功能,例如用于重新启动或关闭虚拟机的菜单选项或按钮)。如果您想使用 virt-manager 的其他功能,则必须单独运行它。


顺便说一句,可以运行virshvirt-viewer可以不运行sudo,具体取决于您的系统上 libvirtd 的配置方式以及您的用户帐户所属的组。

例如:在我的 Debian 系统上,我的用户帐户 ( cas) 是该组的成员libvirt。这允许我运行以下命令:

virsh --connect qemu:///system start VM-NAME &&
  virt-viewer --connect qemu:///system VM-NAME

您在标签中提到了 arch-linux,所以您应该阅读https://wiki.archlinux.org/title/Libvirt有关如何在 arch 上设置 libvird 的详细信息。

相关内容