libvirt:如何让域在主机启动时启动?

libvirt:如何让域在主机启动时启动?

我希望我的一些域在主机启动时自动启动(我在 ubuntu 上使用 libvirt+KVM)。我想我可以在 rc.local 中放置一些“virsh start...”语句,但是有没有办法在 libvirt/virsh 中配置它?

答案1

查看“help”的输出:

virsh # help autostart
  NAME
    autostart - autostart a domain

  SYNOPSIS
    autostart <domain> [--disable]

  DESCRIPTION
    Configure a domain to be automatically started at boot.

  OPTIONS
    [--domain] <string>  domain name, id or uuid
    --disable        disable autostarting

这要求您从文件定义域(即,域是持久的而不是瞬态的)。

答案2

如果你收到回复:

    virsh autostart domainname
    "cannot set autostart for transient domain"

然后

    virsh shutdown domainname
    virsh define xmlfile
    virsh start domainname
    virsh autostart domainname

根据我在 Ubuntu 12.04 上的经验,这种情况只有在运行了 virsh undefine 后才会发生。使用 virsh create 创建的域通常允许在创建后立即设置自动启动。

答案3

当您对域使用“创建”而不是“定义”时,我也看到过这种情况发生。

例如:

virsh --connect qemu:///system create mytest-vm-20130715.xml

virsh --connect qemu:///system autostart mytest-vm

error: Failed to mark domain mytest-vm as autostarted

error: Requested operation is not valid: cannot set autostart for transient domain

相关内容