Kenichi Maehashi's Blog
脳内コアダンプ
CentOS 5.6 で QCOW2 を使った KVM ゲストを起動できない
Sunday | May 1, 2011
|
環境: CentOS 5.6 (x86_64) / 2.6.18-238.9.1.el5 / kvm-83-224 症状: 今まで動いていた VM がブートできない。新規にインストールしようとすると HDD のサイズが 0 MB (Unknown) となる、または設定したサイズよりも小さく表示される。 原因: QCOW2 形式のイメージファイルが raw 形式として認識されているため。 解決策: 既存の VM に関しては virsh edit で <disk type='file' device='disk'> の下の行の type='raw' を type='qcow2' に変更。新規にインストールする場合は、virt-install で一度 VM を作成した後、Ctrl-C で抜け、virsh edit で上記書き換えを行った上でインストール用の設定 (CD-ROM からのブートなど) を行い、virsh start してインストール実施。インストール後、インストール用の設定を解除する。
*
qemu-img で qcow2 イメージを作成して virt-install で VM インストール、という手順でやっていたのですが、CentOS 5.6 から動かなくなりました。virt-install の --disk オプションに format 引数が用意されていない (format 引数が入ったのは virtinst 0.500.1 からで、CentOS 5.x に付属のものは 0.400.3) ため、今まではすべて (qcow2 の場合も含め) type='raw' で VM 設定ファイルが作成されてきました。
CentOS 5.5 までは qemu-kvm の -drive 引数に format=raw が指定されていても、ファイルのヘッダが qcow2 であれば自動的に認識されていたのですが、CentOS 5.6 付属のバージョンでは自動認識が broken、あるいは format を尊重するようになった ということのようです。
virt-install のメジャーアップデートをするつもりはないだろうから、qemu-kvm 側の挙動を変えるのが無難な落としどころかなぁ。RHEL ではどうなんでしょう。
(追記: 2011-06-05) /etc/libvirt/qemu.conf にパラメータがありました。セキュリティ上の理由で、自動検出はデフォルトで無効になっているとのこと。# If allow_disk_format_probing is enabled, libvirt will probe disk # images to attempt to identify their format, when not otherwise # specified in the XML. This is disabled by default. # # WARNING: Enabling probing is a security hole in almost all # deployments. It is strongly recommended that users update their # guest XML elements to include # elements instead of enabling this option. # allow_disk_format_probing = 1 ただ、現状では、virsh edit で type 属性を消しても type='raw' が自動補完されてしまうので、このパラメータの意味はあんまりなさそう。
|
| コメント (2)
|
| コメント |
by mikeda 2011/07/06
ありがとうございます、助かりました!!!
|
by Kenichi Maehashi 2011/07/07
mikeda さん コメントありがとうございます。 お役に立てたようで良かったです。 # いつも blog 楽しく拝見しております :-)
|
| |
<< 前ページ[1]
トップページに戻る
Copyright © 2006-2021 Kenichi Maehashi, All Rights Reserved.