Yukiharu YABUKI の tDiary
このtDiaryを検索します。
2008-10-10 [長年日記]
_ qemu と kvm
Debian というか Linux で、他アーキテクチャのエミュレーションが、ちょっと必要ができそうなんで、軽く下調べ。
qemuは、他アーキテクチャのエミュレーションもできる。対象アーキテクチャはこんな感じ
yabuki@yelona:~$ qemu qemu qemu-ppc64abi32 qemu-system-mips64el qemu-alpha qemu-sh4 qemu-system-mipsel qemu-arm qemu-sh4eb qemu-system-ppc qemu-armeb qemu-sparc qemu-system-ppc64 qemu-cris qemu-sparc32plus qemu-system-ppcemb qemu-i386 qemu-sparc64 qemu-system-sh4 qemu-img qemu-system-arm qemu-system-sh4eb qemu-m68k qemu-system-cris qemu-system-sparc qemu-mips qemu-system-i386 qemu-system-x86_64 qemu-mipsel qemu-system-m68k qemu-x86_64 qemu-ppc qemu-system-mips qemu-ppc64 qemu-system-mips64
lenny の d-i を x86 以外で動かしてみるのもおもしろいかもしれない。
kvmqemu をやるなら、 kvm もと、色気を出した。しかし、思うところまでは道半ばなのでメモっておく。
私の手元のマシンは、Lenovo X200 なので、kvm-intel.ko が読み込まれていないといけない。
自分でカーネルコンパイルして運用してしまっているので、kvm-sourceパッケージを導入して
make-kpkg --initrd kernel-image modules-imageをしてモジュールをそろえておく。
ここで気がつくのが遅れましたが、BIOSでvirtualzationとVT-dを有効にしたら、いったん power を off にしてから立ち上げることをしましょう。そうすると、
yabuki@yelona:~$ lsmod | grep kvm kvm_intel 33956 0 kvm 117800 1 kvm_intelと読み込んでくれます。BIOSで仮想化を有効にしておかないと、起動時に kvm_intel が load できてなかったり、modprobe しても失敗するなどしていたような気がします。
yabuki@yelona:~$ ls -la /dev/kvm crw-rw---- 1 root kvm 10, 232 2008-10-10 09:02 /dev/kvm
なので、自分もkvmグループに入っておく必要があります。
$sudo adduser yabuki kvmあたりでしょうか。逆は、
$sudo deluser yabuki kvmです。脱線しますが、vigrなどでグループを編集すると、vigr -s でも編集しろみたいなメッセージを lenny から見るようになりました。前述の adduser/deluser の方が、一回で済むのでいいのではないでしょうか。
自分が kvm グループに入っているかどうかは、id コマンドで確認します。logout や再起動してから、
yabuki@yelona:~$ id uid=1000(yabuki) gid=1000(yabuki) 所属グループ=20(dialout),24(cdrom),25(floppy),29(audio),44(video),46(plugdev),110(netdev),113(powerdev),122(kvm),1000(yabuki)
とします。 kvm 以外は、Debian GNU/Linux Lenny が設定してくれています。
で、あとはqemu-img create hogefuga.img 10Gしてディスクイメージを作り、i386のd-iを落としてきて、kvm コマンドで実行すれば kvm が動くはずですが、私の所では qemu で動いているようです。そう判断したのは、d-iが立ち上がってくるウィンドウの上部に kvm ではなく、qemu と表示されているからです。
kvm -cdrom foo/bar/debian-testing-i386-netinst.iso hogefuga.imgとまでやって、時間切れ。またどこかでチェックしましょう。vmware 6.5はサービスを停止させているので,起動時から VT-d などの仮想化機能をを取りっぱなしにしてなかったら大丈夫と思うけど....
_ iijの山本さんの「文章の書き方」
具体的で分かりやすい。一読を勧める 。(http://d.hatena.ne.jp/kazu-yamamoto/20080924/1222224226)から、pdfを開いてみるといい。