qemu-kvmにACPIのshutdownシグナルを送る方法
libvirt使いなさいよって話なんだと思うけど…。
https://wiki.archlinux.org/index.php/QEMU#Starting_qemu_virtual_machines_on_boot
を読んでいたら、
qemu_vm1="-enable-kvm -m 512 -hda /dev/mapper/vg0-vm1 -net nic,macaddr=DE:AD:BE:EF:E0:00 \ -net tap,ifname=tap0 -serial telnet:localhost:7000,server,nowait,nodelay \ -monitor telnet:localhost:7100,server,nowait,nodelay -vnc :0" qemu_vm1_haltcmd="echo 'system_powerdown' | nc.openbsd localhost 7100" # or netcat/ncat
て書いてあって。
-monitorオプション付きでVMの外からQEMUのモニターに接続できるようにしておいて、そこにnetcatでsystem_powerdownコマンドを発行すれば良いと。
そもそも-monitorオプションを知らなかったとかだった。orz
さくらさんのブログ
http://research.sakura.ad.jp/2010/03/08/kvm-install/
にも書いてあったりして、完全に調査不足。
ゲスト側の準備(Scientific Linux 6.1の場合)
ゲスト側でACPIのイベントを監視する必要があるので、
# yum -y install acpid # chkconfig acpid on # /etc/init.d/acpid start
としてacpidを動かしてお…こうとするのだが、なぜかデーモンの起動に失敗するので、一度再起動する。