安装后KVM虚拟机重启后停止,不断添加-no-reboot

安装后KVM虚拟机重启后停止,不断添加-no-reboot

成功安装 Ubuntu 14.04 LTS KVM 虚拟机后,我需要重新启动整个系统才能使一切生效。问题是,它实际上并没有重新启动,只是停止了,然后我必须在 CLI 上手动重新启动它。我发现这是 KVM QEMU 日志:

2016-02-22 10:34:21.398+0000: starting up
....
-no-reboot -boot
....

-无需重启这是否意味着虚拟机不能由客户机本身重新启动?

XML 转储显示以下内容:

<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>

我尝试在网上寻找解决方案,但目前还没有成功。我该如何安装我的虚拟机,以便-无需重启不再出现?

https://www.redhat.com/archives/libvir-list/2013-April/msg01734.html提到如果每个“on”事件都想销毁虚拟机,则将添加“-no-reboot”,否则将使用“-no-shutdown”。但由于只有 on_poweroff 设置为销毁,所以应该添加“-no-shutdown”,对吗?

编辑:

弹出 CDROM 并重新启动虚拟机后,不关机现在确实出现在日志中。我认为在使用 virt-install 创建虚拟机时需要有这个。有什么办法可以解决这个问题吗?

重新启动的机器的文件和 frisk -l :

john@h3:~/images$ sudo file image.img 
1000-laatstevm.img: x86 boot sector

john@h3:~/images$ sudo fdisk -l image.img 

Disk 1000-laatstevm.img: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders, total 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001707b

             Device Boot      Start         End      Blocks   Id  System
image.img1   *        2048      499711      248832   83  Linux
image.img2          501758    20969471    10233857    5  Extended
image.img5          501760    20969471    10233856   8e  Linux LVM

新创建的已卸载的虚拟机:

john@h3:~/images$ sudo file newimage.img 
newimage.img: data

john@h3:~/images sudo fdisk -l newimage.img
only adds "Disk newimage.img doesn't contain a valid partition table" at the end of the output

这些原始图像是这样创建的:fallocate -l 2048M /path/to/image.img

答案1

您一定要尝试检查用于虚拟机的映像,也许其中的引导加载程序有问题:

$ sudo file /path/to/image.img

$ sudo fdisk -l /path/to/image.img

这是一个类似的问题,其中包含有关该主题的更多信息:https://unix.stackexchange.com/questions/159294/kvm-guest-os-not-accessible-after-system-reboot

答案2

答案似乎已经解决了我的问题。只需将 --noautoconsole --wait=-1 添加到我的 virt-install 命令即可解决问题。

但我并不认为这是最好的解决方案。如果我想同时创建多个虚拟机,我可能不得不使用类似线程的东西,对吗?因为现在我必须等待第一个虚拟机完成。

更新:

我决定创建一个在后台运行的 shell 脚本,其中多个 virt-install 命令可以同时运行。

相关内容