最終更新日: 2011年 6月15日
Fedora 15で、virt-manager(仮想マシンマネージャー)の仮想マシンへの接続をVNCからSPICEに変更します。
virt-managerで仮想マシンをダブルクリックすると、仮想マシンの画面が開きます。 そのメニューの「表示」から「詳細」を選択して、仮想マシンの詳細を表示します。
左側の「ディスプレイ」をクリックすると、ディスプレイ情報が表示されます。 仮想マシンへの接続はデフォルトのVNCになっているので、それをspiceに変更します。
種類のところを Spice に変更し、パスワードを入力して、キーマップを ja を変更して[適用]ボタンをクリックします。 すると以下のようなSpice Agent Channelを追加するかどうかの確認画面が表示されます。
参考、SPICEプロトコルを説明している記事では、ゲストOSで SPICE Agent を使用するような図があります。
変更が適用されると以下のようになります。
virt-managerでspiceに変更しても、外部マシンや仮想ホストマシンからspiceクライアントで仮想マシンに接続することはできません。 spiceクライアントから接続できるようにするには、手動で設定を変更する必要があります。
手動での設定変更は virsh edit コマンドで行います。
virsh edit [仮想マシン名]
# virsh edit ubuntu11.4
仮想マシン名が分らない場合は、virt-managerで確認するか、/etc/libvirt/qemu/ にあるxmlファイルを確認します
# ls -l /etc/libvirt/qemu/ 合計 8 drwx------ 3 root root 4096 6月 10 04:10 networks -rw------- 1 root root 2041 6月 13 13:26 ubuntu11.4.xmlvirt-managerで仮想マシンを作成した場合、その設定が [仮想マシン名].xml として保存されます。上記の場合、ubuntu11.4.xmlが 仮想マシンubuntu11.4 の設定ファイルになります。
注意. このファイルを直接 vi などで編集しても、virt-managerには反映されません。 必ず、virsh edit コマンドで変更してください。
virsh edit コマンドで編集状態に入ったら、以下の <graphics> 部分を修正します。
<graphics type='spice' autoport='yes' keymap='ja' passwd='password'/>
spiceクライアントで接続できるように、portを5930、autoport='no'に変更し、外部から接続できるようにlistenを追加します。
<graphics type='spice' port='5930' autoport='no' listen='0.0.0.0' keymap='ja' passwd='password'/>
変更後にvirt-managerで仮想マシンの詳細を確認すると、アドレスが”0.0.0.0”、ポートが”5930”になっていることがわかります。
これで仮想マシンを起動すれば、spiceクライアントで直接仮想マシンに接続できるようになります。
# spicec -h 127.0.0.1 -p 5930 &
virt-managerで作成したUbuntu11.4の仮想マシンの設定ファイルです。ディスプレイはデフォルトのVNCのままです。
上記をspiceクライアントから接続できるように変更した設定ファイル。