必要なパッケージをインストール

  • sudo apt-get install qemu-system-arm qemu-utils

linaro からシステムイメージを取ってきて展開

  • wget -N http://releases.linaro.org/ubuntu/boards/lsk-vexpress/latest/lsk-vexpress-vivid_nano_20150725-725.img.gz
  • zcat lsk-vexpress-*.img.gz > vexpress.img

システムイメージからカーネルと initrd を取り出す

  • sudo modprobe nbd
  • sudo qemu-nbd -r -c /dev/nbd0 -v vexpress.img
  • # (上記コマンドから返ってこなくなった場合は、別のターミナルで以降の処理を継続)
  • mkdir tmp
  • sudo mount -o ro /dev/nbd0p2 tmp
  • sudo cp -p tmp/boot/vmlinuz-* vmlinuz
  • sudo cp -p tmp/boot/initrd.img-* initrd.img
  • sudo chown "$(id -un):$(id -gn)" vmlinuz initrd.img
  • sudo umount tmp
  • rmdir tmp
  • # (別のターミナルでの処理ここまで qemu-nbd は Ctrl-C で終了する)
  • sudo qemu-nbd -d /dev/nbd0 -v
  • # (別のターミナルで処理しなかった場合は上記コマンドを実行)
  • sudo rmmod nbd

以上で準備は完了


  • ls
  • initrd.img  lsk-vexpress-vivid_nano_20150725-725.img.gz  vexpress.img  vmlinuz

あとは起動するだけ (username/password は linaro/linaro)

  • qemu-system-arm -M vexpress-a9 -kernel vmlinuz -initrd initrd.img -m 512 -append "root=/dev/mmcblk0p2 vga=normal mem=512M devtmpfs.mount=0 rw" -drive file=vexpress.img,if=sd,cache=writeback

参考にしたサイト