0

是否有任何 libvirt 命令可用于更改 VM 的引导顺序?我知道编辑 xml 文件可以完成此操作,但我需要一个命令来执行此操作,因为我必须在脚本中编写命令。

谢谢,狮子座

4

1 回答 1

0

没有这样的virsh电话。但是 libvirt 带有一个 python 绑定。您可以轻松编写一个可以从脚本调用的小型 Python 脚本。这样的事情可以帮助您入门:

import libvirt
from xml.etree import ElementTree
try:
    cnx = libvirt.open()
    domain = cnx.lookupByName('yournamename')
    desc = ElementTree.fromstring(domain.XMLDesc())
    os_node = desc.find('os')
    if os_node is not None:
        boot_nodes = os_node.findall('boot')
        for boot_node in boot_nodes:
          os_node.remove(boot_node)
          
        # TODO Change the order of boot_nodes here
          
        for boot_node in boot_nodes:
          os_node.append(boot_node)
          
    # Write back the definition
    cnx.defineXML(ElementTree.tostring(desc).decode())
except libvirt.libvirtError as err:
    print(err.get_error_message())
于 2021-05-06T12:30:22.513 回答