QEMUはLinux上でSDカードをエミュレートできますが、OSXではエミュレートできません。

QEMUはLinux上でSDカードをエミュレートできますが、OSXではエミュレートできません。

簡潔なバージョン

SDカードから直接RaspberryPiをエミュレートしようとしています(提供されているのと同じコマンドを使用)。ここMacOSXで。 QEMUを使用しています。

しかし、私のSDカードのパーティションが正しく認識されません。処置: QEMU は、*.img ファイルを使用するとパーティションを検出します。しかし、SDカードを使用するときはそうではありません。 MacOSXはデフォルトでext4をインストールできないため、osxfuseとヒューズ-ext2をインストールしてみました。次のコマンドを使用すると、問題なくext4ファイルシステムをマウントできます。

$ mount -t fuse-ext2 /dev/disk2s5 /mnt/sda5

QEMUの実行中に指定されたファイルシステムを試してみましたrootfstype=fuse-ext2が、QEMUはまだパーティションを検出できませんでした。実際、このフィールドに何を入力してもrootfstype同じエラーが発生します。

VFS: Cannot open root device "sda5" or unknown-block(8,5): error -6
Please append a correct "root=" boot option; here are the available partitions:
0b00         1048575 sr0  driver: sr
1f00           65536 mtdblock0  (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,5)
CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.26+ #2

詳しくは

*.img次のコマンドを使用してPi画像を正常にシミュレートできます。アーキテクチャLinuxそしてからオペレーティングシステム:

$ qemu-system-arm -カーネルパス/to/kernel-qemu -cpu arm1176 -m 256 -MVersatilepb -no-reboot -serial stdio -append "console=ttyAMA0 root=/dev/sda5 rootfstype=ext4 rw" -hda/path/to/ArchLinuxARM-2014.06-rpi.img

QEMUを実行すると、SDカードからPiシステムをエミュレートできます。アーキテクチャLinux(で述べたようにこのリンク):

$qemu-system-arm -kernel /path/to/kernel-qemu -cpu arm1176 -m 256 -MVersatilepb -no-reboot -serial stdio -append "console=ttyAMA0 root=/dev/sda5 rootfstype=ext4 rw" -ha/dev/sdd

どこ/dev/sdd私のSDカードはArch Linuxで認識されます。それから私はオペレーティングシステム、次のようになります。

$ qemu-system-arm -カーネルパス/to/kernel-qemu -cpu arm1176 -m 256 -MVersatilepb -no-reboot -serial stdio -append "console=ttyAMA0 root=/dev/sda5 rootfstype=ヒューズ-ext2読んで書く”-hda/dev/disk2

(私はMacOSXでサードパーティの「fuse-ext2」を使用しました。)

今回はパーティションが検出されず、上記でコピーされたエラーが発生しました。

*.imgSDカードの代わりにファイルを実行すると、3つのパーティションが検出されます。sda1、、、。sda2sda5

ベストアンサー1

このエラーは、SDカードがまったく見えない、または正しく表示されないことを示します。分割質問。

sdcardインスタンスのQEMUコマンドを確認してもう一度やり直してください。

おすすめ記事