这里有一个问题要问你,这个问题一直困扰着我。我设法从那些想做与我相反的事情的人那里找到了大量的资源,即看到他们virsh
在virt-manager
.
但是,我有几个通过它们创建的虚拟机,virt-manager
现在需要使用virsh
.
当我使用例如时,virsh start <vm-name>
它无法声明未找到域。
virsh list --all
什么也不返回。
如果有什么不同的话,我创建的存储卷已被移动到我的分区上的子目录中/home
。
此外,libvirtd
肯定正在运行,并且仍然可以控制和访问机器virt-manager
。
任何和所有的帮助将不胜感激。
答案1
virsh
使用和时,您必须使用不同的凭据virt-manager
。在您的用户下执行所有操作,或者至少每次都在同一用户下执行。virt-manager
和virsh
是同一libvirt
虚拟机数据库的接口,但用户上下文有所不同,因此如果您想管理同一组虚拟机,请始终使用同一用户使用这两个实用程序。
答案2
好的,所以我运行了一个find / -name <vm-name>.xml
,发现我的虚拟机的 xml 文件存储在/etc/libvirt/qemu
.
所以我跑了virsh create /etc/libvirt/qemu/<vm-name>.xml
,虚拟机立即加载到 virsh 中随着我的所有其他虚拟机。
我目前无法弄清楚确切地为什么这可以解决问题。但是,执行上述操作可能为 virsh 提供了一个新位置来查找它以前通常不会检查的 xml 文件。
将其留在这里是因为其他人可能会遇到类似的情况。
无论如何,如果您知道这背后的确切原因,请告诉我或添加您自己的答案。