qemu 修行 (3)
導入は昨晩ほったらかしで朝になったら終わってました。ただ、このままでは起動させることはできなくて、/boot に投入されているはずの initrd なイメージとカーネルイメージを取り出す必要があるらしい。
qemu な disk image を mount するために qemu-nbd というコマンドを使うとのこと。man qemu-nbd の出力の一部を以下に引用。
NAME
qemu-nbd - QEMU Disk Network Block Device ServerSYNOPSIS
usage: qemu-nbd [OPTION]... filenameDESCRIPTION
Export Qemu disk image using NBD protocol.
で、ブロックデバイスに、と思ったら以下なエラーが。
$ sudo qemu-nbd --connect=/dev/nbd0 ./hda.img.qcow2 qemu-nbd: Failed to open /dev/nbd0: No such file or directory $
modprobe せよ、とか書いてあるドキュメントを確認したのでやってみる。
$ sudo modprobe nbd max_part=8 $ lsmod |grep nbd nbd 17744 0 $
で、リトライ。
$ sudo qemu-nbd --connect=/dev/nbd0 ./hda.img.qcow2 qemu-nbd: Failed to bdrv_open './hda.img.qcow2': No such file or directory $
相対パスじゃ駄目みたい。
$ sudo qemu-nbd --connect=/dev/nbd0 /home/fuga/hda.img.qcow2 $
成功。デバイスファイルを確認してみるに以下らしい。
$ ls /dev/nbd0* /dev/nbd0 /dev/nbd0p1 /dev/nbd0p2 /dev/nbd0p5 $
では mount してみます。
$ sudo mount /dev/nbd0p1 /mnt $ ls /mnt/boot config-2.6.32-5-versatile initrd.img initrd.img-2.6.32-5-versatile System.map-2.6.32-5-versatile vmlinuz vmlinuz-2.6.32-5-versatile $
カーネルイメージと initrd なナニをコピれば良いのか。
$ cp /mnt/boot/initrd.img-2.6.32-5-versatile . $ cp /mnt/boot/vmlinuz-2.6.32-5-versatile .
なんか vmlinuz なナニは同名のソレがあったような気もしますがスルーで。あとは /mnt を umount して起動してみれば良いのかな。
$ sudo umount /mnt $ qemu-system-arm -M versatilepb \ -kernel vmlinuz-2.6.32-5-versatile \ -initrd initrd.img-2.6.32-5-versatile \ -hda hda.img.qcow2 -append "root=/dev/sda1"
それにしても
qemu でデスクトップな debian 動かしてるんですが loadave が 5 程度 (とは言え、ログイン後、徐々に上昇中)。こないだまでの滅茶苦茶に負荷が高くなる挙動は Gnome が原因でしたか (今は Xfce4 使ってます)。
qemu なデスクトップなレスポンス自体は最悪ですが、動作確認ベースだしねぇ。
とりあえず
でびあん導入編はこれで終了ってことにします。元記事だと X サーバが云々という記述がありますがスルーしよ。