Эмулируйте RaspberryPi, используя QEMU

8

Я хотел бы запустить систему RaspberryPi на моем MacOSX, используя QEMU. Я попробовал следующее, используя этот учебник :

./qemu-system-arm -M versatilepb -cpu arm1176 -m 256 -hda ArchLinuxARM-2014.06-rpi.img -kernel kernel.img -append "root = / dev / sda" -serial stdio

Откуда ArchLinuxARM-2014.06-rpi.imgмой образ RPi и kernel.imgоткуда он пришел ArchLinuxARM-2014.06-rpi.img(я сделал его копию, хотя я не уверен, что это была блестящая идея).

В результате я получаю два окна QEMU. У одного есть меню «Машина» и «Вид», а также черный экран со следующим сообщением:

Гость не инициализировал отображение (пока).

Второе - просто черное окно.

У меня была та же проблема с использованием Raspbian изображения и той же команды. Что я делаю неправильно?

JonasVautherin
источник

Ответы:

6
  • Прежде всего, мне пришлось использовать другое ядро, kernel-qemuкоторое я нашел здесь .

  • Затем я могу заставить его работать, используя QEMU 1.7.1 :

    С Распбианом:

    ./qemu-system-arm -kernel / path / to / kernel-qemu -cpu arm1176 -m 256 -M versatilepb -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 versatilepb -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 versatilepb -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 path / to / kernel-qemu -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append " console = ttyAMA0 root = / dev / sda5 rootfstype = ext4 rw" - hda /path/to/ArchLinuxARM-2014.06-rpi.img

    (Обратите внимание, что я указал консоль, используя console = ttyAMA0 )

JonasVautherin
источник
У кого-нибудь есть ссылка на ядро, связанное здесь - у меня та же проблема, и страница исчезла :(
djsmiley2kStaysInside
2
Тот, который я использовал в своем ответе, здесь
JonasVautherin
Я попытался воссоздать это с моим собственным ArchLinuxARM-2014.06-rpi.img, но арка загружается в аварийный режим. Есть ли у вас шанс, что этот образ еще где-то лежит? Или какие-нибудь другие советы, чтобы заставить систему загружаться нормально? Он жалуется на то, что / dev / sda1 не является правильным загрузочным устройством
rien333