- Образ Raspbian: http://downloads.raspberrypi.org/raspbian/images/raspbian-2017-04-10/ (другие версии могут работать, но рекомендуется Jessie)
- Ядро QEMU: https://github.com/dhruvvyas90/qemu-rpi-kernel
Установка Raspbian:
Внутри вашей Ubuntu VM создайте новую папку:
$ mkdir ~/qemu_vms
Загрузите и разместите Образ Raspbian в ~ /qemu_vms/
Загрузите и поместите ядро qemu в ~/qemu_vms/
$ sudoapt-get install qemu-system $ unzip <image-file>.zip $ fdisk -l <image-file>
$ sudo mkdir /mnt/raspbian $ sudo mount -v -o offset=47185920 -t ext4 ~/qemu_vms/<your-img-file.img> /mnt/raspbian $ sudo nano /mnt/raspbian/etc/ld.so.preload
Закомментируйте каждую запись в этом файле с помощью «#», сохраните и выйдите с помощью Ctrl-x >> Y.
$ sudo nano /mnt/raspbian/etc/fstab
Если вы видите что-то с mmcblk0 в fstab, то:
- Замените первую запись, содержащую /dev/mmcblk0p1, на /dev/sda1
- Замените вторую запись, содержащую /dev/mmcblk0p2, на /dev/sda2, сохраните и выйдите.
$ cd ~ $ sudo umount /mnt/raspbian
Теперь вы можете эмулировать его в Qemu, используя следующую команду:
$ qemu-system-arm -kernel ~/qemu_vms/<your-kernel-qemu> -cpu arm1176 -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 rootfstype=ext4 rw" -hda ~/qemu_vms/<your-jessie-image.img> -redir tcp:5022::22 -no-reboot
Из терминала вам нужно запустить службу SSH, чтобы вы могли получить к ней доступ из вашей хост-системы (той, с которой вы запустили qemu).
Включите SSH:
$ sudo service ssh start
$ ssh pi@127.0.0.1 -p 5022
Устранение неполадок службы SSH:
Если SSH не запускается в вашем эмуляторе при запуске по умолчанию, вы можете изменить это в своем терминале Pi с помощью:
$ sudo update-rc.d ssh enable
Если ваш эмулируемый Pi запускает графический интерфейс и вы хотите, чтобы он запускался в режиме консоли при запуске, используйте следующую команду в вашем терминале Pi:
$ sudo raspi-config />Select 3 - Boot Options />Select B1 - Desktop / CLI />Select B2 - Console Autologin
Изменение размера образа Raspbian:
Когда вы закончите настройку, у вас останется 3,9 ГБ на вашем образе.
Чтобы увеличить образ Raspbian, выполните следующие действия на вашем компьютере с Ubuntu:
Создайте копию вашего существующего образа:
$ cp <your-raspbian-jessie>.img rasbian.img
Запустите эту команду, чтобы изменить размер вашей копии:
$ qemu-img resize raspbian.img +6G
$ sudo qemu-system-arm -kernel ~/qemu_vms/<kernel-qemu> -cpu arm1176 -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 rootfstype=ext4 rw" -hda ~/qemu_vms/<your-original-raspbian-jessie>.img -redir tcp:5022::22 -no-reboot -hdb raspbian.img
$ sudo cfdisk /dev/sdb
Затем выйдите из cfdisk.
Измените размер и проверьте старый раздел и завершение работы.
$ sudo resize2fs /dev/sdb2 $ sudo fsck -f /dev/sdb2 $ sudo halt
$ sudo qemu-system-arm -kernel ~/qemu_vms/<kernel-qemu> -cpu arm1176 -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 rootfstype=ext4 rw" -hda ~/qemu_vms/raspbian.img -redir tcp:5022::22