在使用virt-install进行操作系统安装后,我的guest虚拟机有一些问题需要重启。
无论出于何种原因,virt-install在创buildVM时都坚持要插入“–no-reboot”:
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.2.0 -enable-kvm -m 512 -smp 1,sockets=1,cores=1,threads=1 -name centos62test -uuid f4938758-98f1-cda3-5ec9-d91d6cc40596 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/centos62test.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-reboot* -no-shutdown -kernel /var/lib/libvirt/boot/virtinst-vmlinuz.HzY2RZ -initrd
即使你没有指定–no-reboot:
virt-install --name centos62test --disk path=/home/vms/centos62test,size=50,bus=virtio --vnc --noautoconsole --vcpus=1 --ram=512 --network bridge=virbr0,mac=52:54:00:75:80:12 --location=http://192.168.15.100/mirrors/centos/6.2/os/x86_64/ -x "ks=http://192.168.15.100/mirrors/ks/6.2/kvm/x86_64.cfg"
这似乎是一个独特的虚拟安装“问题”,因为当您使用virt-manager创build虚拟机时,–no-reboot选项不会被插入。
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm -S -M rhel6.2.0 -enable-kvm -m 512 -smp 1,sockets=1,cores=1,threads=1 -name centos62test -uuid f4938758-98f1-cda3-5ec9-d91d6cc40596 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/centos62test.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -drive file=/home/vms/centos62test,if=none,id=drive-virtio-disk0,format=
而且这似乎发生在CentOS 6.2(这是我上面提到的输出)和Ubuntu 10.04:
LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin QEMU_AUDIO_DRV=none /usr/bin/kvm -S -M pc-0.12 -enable-kvm -m 512 -smp 1 -name opensuseks -uuid 05ed4424-08ba-e724-a14f-50b76017609c -chardev socket,id=monitor,path=/v ar/lib/libvirt/qemu/opensuseks.monitor,server,nowait -monitor chardev:monitor -no-reboot -boot c -kernel /var/lib/libvirt/boot/virtinst-linux.SZsBVy
我在这里有点不知所措 如何让virt-install 不添加–no-reboot,以便我的客人可以在初始操作系统安装后重新启动。
如果您使用“–noautoconsole”选项,则还需要指定“–wait”。 从virt-install手册页:
–wait = WAIT
等待虚拟机完成安装的时间(以分钟为单位)。 如果没有这个选项,virt-install将等待控制台closures(而不是必须指明guest虚拟机已经closures),或者在–noautoconsole的情况下,直接启动安装并退出。 任何负值将使virt-install无限期地等待,值为0会触发与noautoconsole相同的结果。 如果超出了时间限制,virt-install会退出,使虚拟机处于当前状态。
因此,使用“–noautoconsole –wait = -1”选项的virt-install将等待(永远),直到guest虚拟机操作系统安装过程完成,之后VM将重新启动。
如果您不想等到域退出,您可以将-events on_poweroff = preserve添加到virt-install cmdline,并且不会将-no-reboot添加到qemu cmdline。