Python 将kickstart文件传递到virtual manager xml文件

Python 将kickstart文件传递到virtual manager xml文件,python,xml,virtual-machine,libvirt,Python,Xml,Virtual Machine,Libvirt,我需要将kickstart文件传递到xml,以便使用virt安装创建虚拟设备 <os> <type arch="x86_64" machine="pc-i440fx-xenial">hvm</type> <loader>/usr/lib/xen/boot/hvmloader</loader> <kernal>/boot/vmlinuz-3.10.0-327.el7.x86_64</kernal&

我需要将kickstart文件传递到xml,以便使用virt安装创建虚拟设备

<os>
    <type arch="x86_64" machine="pc-i440fx-xenial">hvm</type>
    <loader>/usr/lib/xen/boot/hvmloader</loader>
    <kernal>/boot/vmlinuz-3.10.0-327.el7.x86_64</kernal>
    <initrd>/boot/initrd.img-4.4.0-59-generic</initrd>
    <cmdline>ks=http://ipaddr/try.cfg ip=ip netmask=255.255.255.0</cmdline>
    <bootmenu enable="yes" />
</os>
/boot/vmlinuz-3.10.0-327.el7.x86_64:没有这样的文件或目录


您使用的总体语法是正确的,但是您提供的数据中有一些错误。特别是,您为该选项提供了一个内核映像,它应该指向initrd映像。此外,您通常根本不希望从主机OS
/boot
目录使用kernel+initrd。相反,您希望获得操作系统安装程序的kernel+initrd。如果您试图在来宾中安装Fedora,您可以从


然后把它们放在
/var/lib/libvirt/images/
中,并将您的XML指向它们。

谢谢@DanielB是的,先生,这是打字错误。我现在已经编辑了。但我不太清楚元素的数据是什么:kernel和initrd。详细信息:OS-centos-7Linux。你能给我详细解释一下吗?谢谢。只需从相关操作系统的pxeboot/目录下载initrd.img和vmlinuz文件,并将它们保存到/var/lib/libvirt/images。XML只需要/var/lib/libvirt/images/{vmlinuz file name}/var/lib/libvirt/images/{initrd.img file name}是的,先生。我得到了它。谢谢这是通过xml传递kickstart文件的唯一方法吗?是的,使用kernel+initrd+cmdline元素是通过xml执行kickstart的唯一显式方法。替代方法是获取boot.iso映像,解压缩它,添加kickstart文件,然后根据内容创建新的iso映像。这比直接使用kernel+initrd要复杂得多。或者在某处用这些文件设置PXE引导服务器
if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self) libvirt.libvirtError: unable to stat: