久々に仮想化の話題です。今回は,Ubuntu7.10にKVMをインストールして試してみました。
KVMは,Intel VTやAMD-VといったCPUの仮想化機能を使って仮想マシンからCPUに直接アクセスできるようにするデバイス・ドライバ(/dev/kvm)で,別途仮想マシン・モニタのqemuが必要です。

UbuntuのKVMを使って
Fedora8を起動中
【KVMのインストール方法】
インストールは簡単です。Gnome端末で
$ sudo apt-get install kvm qemu
これだけです。
Synapticパッケージマネージャを使っても構いません。
ツイート
KVMは,Intel VTやAMD-VといったCPUの仮想化機能を使って仮想マシンからCPUに直接アクセスできるようにするデバイス・ドライバ(/dev/kvm)で,別途仮想マシン・モニタのqemuが必要です。

UbuntuのKVMを使って
Fedora8を起動中
【KVMのインストール方法】
インストールは簡単です。Gnome端末で
$ sudo apt-get install kvm qemu
これだけです。
Synapticパッケージマネージャを使っても構いません。
【KVMの起動方法】
KVMを起動させるには,ゲストOSのisoイメージファイル・インストール用CD(またはDVD)・ライブCD(またはDVD)のいずれかが必要です。また,imgファイルにインストールする場合は,仮想ハードディスクを作成しておく必要があります。
今回は,Fedora8のインストールDVDで仮想ハードディスクにインストールしてみました。
ステップ1:
まず,次のコマンドで仮想ハードディスクを作成します。
$ qemu-img create -f qcow vm-disk.img 4G
ここではファイル名をvm-disk.imgとし,ファイルサイズは4GBに設定しましたが,qcowというオプションを使って,使用量に応じて容量が変化するようにしてあります。
ステップ2:
次に,kvmモジュールを下記のコマンドでロードしておきます。
$ sudo modprobe kvm
$ sudo modprobe kvm_intel
これは,インテルのCPU(Intel VT)を使う場合の設定です。AMDのCPU(AMD-V)の場合は,kvm_intelの代わりに,kvm_amdとします。
次のコマンドで下記のように表示されれば,正常にロードされています。
$ lsmod | grep kvm
kvm_intel 22156 0
kvm 64944 1 kvm_intel
なお,起動時に自動的に読み込むようにするため,/etc/modulesに
kvm
kvm_intel
という2行を追記しておきましょう。
ステップ3:
これで,準備が整いました。早速,起動してみましょう。
Fedora8のインストールDVDをDVDドライブに挿入して,次のコマンドを実行します。なお,オプションの -m の数値は,ゲストに使用するメモリ容量です。メインメモリに余裕がないときついです。
$ sudo kvm -no-acpi -m 512 -cdrom /dev/cdrom -hda vm-disk.img -boot d
-bootオプションの「d」は光学ドライブから起動する設定です。
これで,KVM対応のqemuが立ち上がります。あとは,通常のステップを踏んでいけば,インストールは終了です。
ステップ4:
通常のインストールと異なり,最後に「再起動」を選択しても,そのままでは再起動できません。次のコマンドで,再びKVMを起動します。
$ sudo kvm -no-acpi -m 512 -cdrom /dev/cdrom -hda vm-disk.img -boot c
これで,仮想ハードディスクから起動できます。最後のオプションが「-boot c」となっている点に注意して下さい。
ちなみに,光学ドライブが使えるように,-cdromオプションを加えたままにしてあります。
初回設定が終了したら,次回以降は同じコマンドで起動できるようになります。
以上です。
実際の使用感ですが,インストールの速度は,普通のインストールとほとんど変わりません。通常のqemuに比べると,かなり速いです。
また,起動中の操作も,さすがにホストには劣りますが,仮想環境としては充分に快適だと思います。
【追記】
一般ユーザでkvmコマンドを実行すると,/dev/kvmのパーミッションエラーが出ます。下記のコマンドを実行すれば,一般ユーザでも(sudoなしで)起動できますが…
$ sudo chmod 777 /dev/kvm
次回起動時にはパーミッション設定が戻ってしまいます。
KVMを起動させるには,ゲストOSのisoイメージファイル・インストール用CD(またはDVD)・ライブCD(またはDVD)のいずれかが必要です。また,imgファイルにインストールする場合は,仮想ハードディスクを作成しておく必要があります。
今回は,Fedora8のインストールDVDで仮想ハードディスクにインストールしてみました。
ステップ1:
まず,次のコマンドで仮想ハードディスクを作成します。
$ qemu-img create -f qcow vm-disk.img 4G
ここではファイル名をvm-disk.imgとし,ファイルサイズは4GBに設定しましたが,qcowというオプションを使って,使用量に応じて容量が変化するようにしてあります。
ステップ2:
次に,kvmモジュールを下記のコマンドでロードしておきます。
$ sudo modprobe kvm
$ sudo modprobe kvm_intel
これは,インテルのCPU(Intel VT)を使う場合の設定です。AMDのCPU(AMD-V)の場合は,kvm_intelの代わりに,kvm_amdとします。
次のコマンドで下記のように表示されれば,正常にロードされています。
$ lsmod | grep kvm
kvm_intel 22156 0
kvm 64944 1 kvm_intel
なお,起動時に自動的に読み込むようにするため,/etc/modulesに
kvm
kvm_intel
という2行を追記しておきましょう。
ステップ3:
これで,準備が整いました。早速,起動してみましょう。
Fedora8のインストールDVDをDVDドライブに挿入して,次のコマンドを実行します。なお,オプションの -m の数値は,ゲストに使用するメモリ容量です。メインメモリに余裕がないときついです。
$ sudo kvm -no-acpi -m 512 -cdrom /dev/cdrom -hda vm-disk.img -boot d
-bootオプションの「d」は光学ドライブから起動する設定です。
これで,KVM対応のqemuが立ち上がります。あとは,通常のステップを踏んでいけば,インストールは終了です。
ステップ4:
通常のインストールと異なり,最後に「再起動」を選択しても,そのままでは再起動できません。次のコマンドで,再びKVMを起動します。
$ sudo kvm -no-acpi -m 512 -cdrom /dev/cdrom -hda vm-disk.img -boot c
これで,仮想ハードディスクから起動できます。最後のオプションが「-boot c」となっている点に注意して下さい。
ちなみに,光学ドライブが使えるように,-cdromオプションを加えたままにしてあります。
初回設定が終了したら,次回以降は同じコマンドで起動できるようになります。
以上です。
実際の使用感ですが,インストールの速度は,普通のインストールとほとんど変わりません。通常のqemuに比べると,かなり速いです。
また,起動中の操作も,さすがにホストには劣りますが,仮想環境としては充分に快適だと思います。
【追記】
一般ユーザでkvmコマンドを実行すると,/dev/kvmのパーミッションエラーが出ます。下記のコマンドを実行すれば,一般ユーザでも(sudoなしで)起動できますが…
$ sudo chmod 777 /dev/kvm
次回起動時にはパーミッション設定が戻ってしまいます。
ツイート
60-kvm.perms
というファイルでも作成し、中身に
<kvm>=/dev/kvm
# permission definitions
<console> 0666 <kvm> 0600 root
と書いておけば毎度権限を変更する必要はなくなります。
ConsoleKitデーモンを有効にしていないとだめだったかもしれません。Ubuntuではパッケージが異なるかもですが、参考までに。