使用QEMU模拟RaspberryPi


8

我想使用QEMU在MacOSX上运行RaspberryPi系统。我使用本教程尝试了以下操作:

./qemu-system-arm -M多用途pb -cpu arm1176 -m 256 -hda ArchLinuxARM-2014.06-rpi.img -kernel kernel.img-附加“ root = / dev / sda” -serial stdio

ArchLinuxARM-2014.06-rpi.img我的RPi图像在哪里,并且kernel.img确切地来自ArchLinuxARM-2014.06-rpi.img(我制作了它的副本,但我不确定这是一个绝妙的主意)。

结果得到两个QEMU窗口。其中有一个“计算机”和一个“查看”菜单,以及一个黑色屏幕,显示以下消息:

来宾尚未初始化显示(尚未)。

第二个只是一个黑色的窗口。

使用Raspbian映像和相同的命令时,我遇到了相同的问题。我究竟做错了什么?

Answers:


6
  • 首先,我必须使用kernel-qemu这里找到的另一个内核。

  • 然后,我可以使用QEMU 1.7.1使其工作:

    使用Raspbian:

    ./qemu-system-arm -kernel / path / to / kernel-qemu -cpu arm1176 -m 256 -M Universalpb -no-reboot -serial stdio -append“ root = / dev / sda2 panic = 1 rootfstype = ext4 rw” -hda /path/to/2013-12-20-wheezy-raspbian.img

    使用Arch Linux,我必须:

    1. 使用以下命令在终端模式下启动(虽然不确定是否需要):

      ./qemu-system-arm -kernel / path / to / kernel-qemu -cpu arm1176 -m 256 -M Universalpb -no-reboot -serial stdio -append“ root = / dev / sda5 panic = 1 rootfstype = ext4 rw init = / bin / bash “ -hda /path/to/ArchLinuxARM-2014.06-rpi.img

      (请注意,此处已添加init = / bin / bash,并且Arch Linux要求使用root = / dev / sda5而不是sda2)

    2. 修改/etc/fstab如下(分区错误):

      # <file system> <dir>   <type>  <options>       <dump>  <pass>
      /dev/sda1       /boot   vfat    defaults        0       0
      
    3. 正常开始使用:

      ./qemu-system-arm -kernel / path / to / kernel-qemu -cpu arm1176 -m 256 -M全能pb -no-reboot -serial stdio -append“ root = / dev / sda5 panic = 1 rootfstype = ext4 rw” -hda /path/to/ArchLinuxARM-2014.06-rpi.img

  • 我终于意识到我可以使用最新版本的QEMU(2.1.1),但是我必须指定控制台输出:

    ./qemu-system-arm-内核路径/到/ kernel-qemu -cpu arm1176 -m 256 -M通用pb -no-reboot -serial stdio-追加console = ttyAMA0 root = / dev / sda5 rootfstype = ext4 rw”- hda /path/to/ArchLinuxARM-2014.06-rpi.img

    (请注意,我使用console = ttyAMA0指定了控制台)


没有人有链接到这里链接的内核的链接-我也遇到同样的问题,该页面不见了:(
djsmiley2kStaysInside 2015年

2
我在回答中使用的是这里
-JonasVautherin

我尝试使用自己的ArchLinuxARM-2014.06-rpi.img重新创建此文件,但Arch进入了紧急模式。您是否有可能仍然在某个地方徘徊着那个形象?或其他任何使系统正常启动的提示?它抱怨/ dev / sda1不是正确的启动设备
rien333
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.