我已经在托管在VirtualBox机器上的多节点架构上部署了Openstack。现在,我尝试使用qcow2 centos镜像启动我的第一个实例,但每次启动时都会收到以下错误:
Booting from Hard Disk...
Boot failed: not a bootable disk
No bootable device

我提到我使用了来自官方centos存储库的镜像,但我也使用Virtualbox构建了我自己的qcow镜像。在这两种情况下,结果是相同的。我不知道是什么导致了这一点,我应该从哪里开始调查。
发布于 2018-08-16 04:08:39
在创建新的虚拟机时,virt-manager似乎不会读取预先存在的映像的硬盘映像格式,而是选择"raw“格式。因为virt-manager似乎在内部存储它的设置,所以您不能只编辑~/.libvirt/qemu/VMNameHere.xml文件。
您必须将libvirt vm设置导出为xml,修复硬盘驱动器映像格式,然后将vm设置重新导入libvirt。
获取vm名称:代码:
virsh -c qemu:///session list --all如果您的虚拟机位于系统帐户中,而不是您的用户帐户中,请将qemu:/会话替换为qemu:/ system
导出vm设置:代码:
virsh -c qemu:///session dumpxml VMName > ~/Desktop/VMName.xml更新xml文件中的硬盘格式:
代码:
From
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/storage/vmimages/Windows7_x64-01/qcow2-60GB_HDD1.qcow2'/>
<target dev='hda' bus='ide'/>
</disk>
To
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/storage/vmimages/Windows7_x64-01/qcow2-60GB_HDD1.qcow2'/>
<target dev='hda' bus='ide'/>
</disk>在virt-manager中删除旧的虚拟机设置:
打开virt-manager并删除有问题的虚拟机,但请确保保留硬盘映像
在固定的xml文件中导入:
代码:
virsh -c qemu:///session define ~/Desktop/VMName.xml虚拟机将自动出现在virt-manager中。
vm现在应该可以正常工作了。
其他注意事项:对于我使用virt-manager加载到vm中的每个硬盘映像,都会出现这个qcot2/raw问题,因此我每次都必须编辑并重新导入xml。
您可以关闭libvirt-bin和qemu-kvm服务,编辑~/.libvirt/qemu/VMNameHere.xml文件,然后以更短的方式重新启动,但我没有验证这种方法是否有效。
希望这将节省几个小时的搜索时间。
https://stackoverflow.com/questions/51862811
复制相似问题