У меня есть хост KVM Ubuntu 12.04 LTS с гостевой системой OpenBSD 5.4.
У меня проблема с virsh shutdown
не работает / замерзает гость.
После вызова shutdown гость зависает и не отвечает. Любые сеансы ssh зависают, и любые консоли vnc не отвечают. Во время зависания в клиентских журналах ничего не регистрируется.
Единственное решение - уничтожить гостя в виш.
Проблема выглядит примерно так: http://comments.gmane.org/gmane.os.openbsd.misc/200982
$ sudo virsh list --all
...
15 ssh2 running
...
$ sudo virsh shutdown ssh2
Domain ssh2 is being shutdown
$ sudo virsh list --all
...
15 ssh2 running
...
sudo tail -F /var/log/messages
Write failed: Broken pipe
.
$ uname -a
Linux kvm2 3.2.0-51-generic #77-Ubuntu SMP Wed Jul 24 20:18:19 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.2 LTS"
$ virsh version
Compiled against library: libvir 0.9.8
Using library: libvir 0.9.8
Using API: QEMU 0.9.8
Running hypervisor: QEMU 1.0.0
$ virsh dominfo ssh2
Id: -
Name: ssh2
UUID: 7bb1977e-7268-f40a-32d4-5ae972be7e5f
OS Type: hvm
State: shut off
CPU(s): 2
Max memory: 524288 kB
Used memory: 524288 kB
Persistent: yes
Autostart: disable
Managed save: no
Security model: apparmor
Security DOI: 0
Скачал amd64 install54.iso: http://ftp.openbsd.org/pub/OpenBSD/5.4/amd64/install54.iso
Создать диск:
sudo qemu-img create -f qcow2 -o preallocation=metadata /vm/ssh2-disk0.qcow2 2G
sudo virt-install \
--name ssh2 \
--ram 512 \
--vcpus=1 \
--os-variant=openbsd4 \
--hvm \
--cdrom /vm/install/install54-amd64.iso \
--network bridge:br0,model=virtio \
--graphics vnc \
--disk path=/vm/ssh2-disk0.qcow2,bus=virtio,size=2
Примечание. Используется br0 вместо virbr0, поскольку хост использует br0.
Из квм:
sudo virsh vncdisplay ssh2
ssh -L 5910:127.0.0.1:5909 kvm2
Подключитесь через vnc к localhost 5910, продолжите установку.
Не установил game54.tgz или какие-либо пакеты x:
-game*
-x*
Это обычная проблема с OpenBSD в качестве виртуальной машины при попытке завершить работу в KVM.
Решено:
root@myhost:~# config -ef /bsd
disable mpbios
q
root@myhost:~# reboot
Qemu делает предположения относительно ACPI, чего не делает OpenBSD. За время работы с несколькими версиями OpenBSD и Qemu / KVM я обнаружил, что единственный способ эффективно закрыть гостевую систему OpenBSD - это
halt -p
в самом госте.