У меня небольшая проблема с перезагрузкой моих гостей после установки ОС с помощью virt-install.
По какой-то причине virt-install настаивает на вставке «--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-install, потому что когда вы создаете виртуальную машину с помощью virt-manager, параметр --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 = ПОДОЖДИТЕ
Время ожидания (в минутах) завершения установки виртуальной машины. Без этой опции virt-install будет ждать закрытия консоли (не обязательно указывать на то, что гость завершил работу), или, в случае --noautoconsole, просто начните установку и выйдите. Любое отрицательное значение заставит virt-install ждать бесконечно, значение 0 вызывает те же результаты, что и noautoconsole. Если лимит времени превышен, virt-install просто завершает работу, оставляя виртуальную машину в ее текущем состоянии.
Итак, virt-install с параметрами «--noautoconsole --wait = -1» будет ждать (вечно), пока процесс установки гостевой ОС не будет завершен, после чего виртуальная машина будет перезапущена.
Если вы не хотите ждать выхода домена, вы можете добавить --events on_poweroff = preserve в командную строку virt-install, и она не будет добавлять -no-reboot в командную строку qemu.