まったくさっぱりどうにもこうにも
動かなかったのでどうにかこうにかして動かしてみた。
環境はMacのVMWareにこの為に突っ込んでみた Ubuntu 16.04 LTS。
作業に用意したディレクトリと配置したファイルは以下の通り
- /qemu
- /qemu/jessie
2016-05-27-Raspbian-jessie.img
kernel-qemu-4.4.12-jessie - /qemu/jessie/mnt
⬛︎ イメージファイルの編集
イメージファイルの中にあるLinuxパーティションの中から、ファイルを編集しなければならない。イメージファイルのパーティションを確認し、一つのパーティションをマウント、アクセスできるようにして編集する。
- パーティションの確認
$ fdisk -l 2016-05-27-raspbian-jessie-lite.img
→ セクタのサイズと、Linuxパーティションの開始セクタが分かる。 - イメージファイルのマウント
$ sudo mount -v -o offset=$((137216*512)) -t ext4 2016-05-27-raspbian-jessie.img /qemu/jessie/mnt
→ イメージファイル内の指定したパーティションにアクセスできるようになる。 - ld.so.preload の編集
/qemu/jessie/mnt/etc にある ld.so.preload をテキストエディタで開いて、先頭行の頭に # を追加してコメントアウト。
# /usr/lib/arm-linux-gnueabihf/libarmmem.so
fstab の編集 - イメージファイルのアンマウント
マウントされているディレクトリ下にアクセスしていないことを確認して
$ sudo umount /qemu/jessie/mnt
- イメージファイルの拡張
そのままでは動かないらしいので
$ qmem-img resize 2016-05-27-raspbian-jessie.img +2G
/qemu/jessie/mnt/etc にある fstab をテキストエディタで開いて、2行目、3行目の頭に # を追加してコメントアウト。
proc /proc proc defaults 0 0 #/dev/mmcblk0p1 /boot vfat defaults 0 2 #/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
⬛︎ 起動コマンド
マウスが使えるようにした上で起動する
$ qemu-system-arm -kernel kernel-qemu-4.4.12-jessie -cpu arm1176 -m 256 -machine versatilepb -no-reboot -serial stdio -usb -device usb-host,hostbus=2,hostaddr=1 -show-cursor -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" -drive format=raw,file=2016-05-27-raspbian-jessie.img
⬛︎ 書いてしまえばこれだけだが
手順を書いてしまえばこれだけだが、わからんことだらけでこんな感じでハマり、こんなとこを参考にしたの一覧。
- そもqemuとか使い方がわからん
Raspberry Pi を QEMU でエミュレートする方法 - イメージファイルの中身ってどうなってるの?
Raspbian を仮想マシン(QEMU)で動かす (1) - マウスとかキーボード反応しないんすけど。
Mouse and Keyboard not working in qemu emulator - マウスカーソル見えないっす
Mouse and Keyboard not working in qemu emulator - その他諸々
Howto setup Raspberry Pi Emulation with Qemu on Linux or Windows
先人達マジスゲェ…
なんで、こういうこと調べていけるんだろ?
実機を注文するにはしてみたが、こんなんで実機が手に入った時動かせるのだろうか? 動くには動くけど、そもわかってないですっ飛ばしてるところだらけだし。
仮想環境なのに環境整備から含めて、2日半もかかってるしなぁ。。。
0 件のコメント:
コメントを投稿