07.08.2020 QEMU Virtualization

Материал из SRNS
Перейти к: навигация, поиск
(SD-card create)
(QEMU + Questa)
 
(не показаны 10 промежуточных версий 1 участника)
Строка 6: Строка 6:
  
 
</summary>
 
</summary>
 
{{Форма2}}
 
  
 
== INTRO ==
 
== INTRO ==
Строка 62: Строка 60:
 
Подключаем образ к хосту:
 
Подключаем образ к хосту:
 
<source lang="bash">
 
<source lang="bash">
sudo ~/git/qemu/qemu-nbd --connect=/dev/nbd0 ~/clonicus_1.2.3/sdcard/sdcard.qcow2
+
sudo ~/git/qemu/build/qemu-nbd --connect=/dev/nbd0 ~/clonicus_1.2.3/sdcard/sdcard.qcow2
 
</source>
 
</source>
  
Строка 115: Строка 113:
  
 
Работает SSH и подгружаются скрипты с подмонтированной SD-карточки. Цветная консоль, ключи ssh...
 
Работает SSH и подгружаются скрипты с подмонтированной SD-карточки. Цветная консоль, ключи ssh...
 +
 +
== Native QEMU ==
 +
 +
Забываем, все, что выше. Запускаем петалинукс на чистом QEMU
 +
 +
качаем [https://github.com/qemu/qemu.git репозиторий qemu]
 +
 +
 +
Исполняем:
 +
<source lang="bash">
 +
./configure --target-list="arm-softmmu" --enable-fdt --disable-kvm --disable-xen
 +
make -j24
 +
</source>
 +
 +
переходим в build, создаем скрипт запуска
 +
<source lang="bash">
 +
#!/bin/bash
 +
 +
./qemu-system-arm -M xilinx-zynq-a9 -m 256M \
 +
-device loader,file=/home/ivan/linux/u-boot.elf \
 +
-drive file=/home/ivan/git/SD/sdcard.qcow2,if=sd,index=0,media=disk \
 +
-serial stdio
 +
</source>
 +
 +
== QEMU + Questa ==
 +
  
 
[[Категория:HOWTO]]
 
[[Категория:HOWTO]]

Текущая версия на 12:26, 23 мая 2022

Содержание

[править] INTRO

Качаем читаем File:ug982-petalinux-system-simulation_QEMU.pdf

[править] SD-card create

инструкция

Выкачиваем репозиторий qemu

Ставим в систему nbd

sudo apt-get install nbd-client

Проверяем

lsmod | grep nbd

Если нет модуля - загружаем его:

modprobe nbd

Ставим в систему pixman

sudo apt-get install libpixman-1-dev

Возможно:

sudo apt-get install git libglib2.0-dev libfdt-dev libpixman-1-dev zlib1g-dev
sudo apt-get install ninja-build

Инициализируем подмодуль:

cd qemu
git submodule update --init dtc

Исполняем:

./configure --target-list="aarch64-softmmu" --enable-fdt --disable-kvm --disable-xen make -j4

Создаем файл-образ флешки:

~/git/qemu/qemu-img create -f qcow2 ~/clonicus_1.2.3/sdcard/sdcard.qcow2 256M

Подключаем образ к хосту:

sudo ~/git/qemu/build/qemu-nbd --connect=/dev/nbd0 ~/clonicus_1.2.3/sdcard/sdcard.qcow2

Проверяем подключение:

sudo fdisk /dev/nbd0 -l

Диск /dev/nbd0: 256 MiB, 268435456 байтов, 524288 секторов
Единицы измерения: секторов из 1 * 512 = 512 байтов
Размер сектора (логический/физический): 512 байт / 512 байт
I/O size (minimum/optimal): 512 bytes / 512 bytes

Форматируем флешку:

sudo fdisk /dev/nbd0

File:sd_table.rar Таблица форматирования Размеченный файл-образ, берем, пользуем

[править] START

Заходим по ssh на виртуальный petalinux

Пока что не получается заменить IP адрес. Используем 10.0.2.15

Необходимо переименовать на флешке файл interfaces, чтобы он не ломал настройки

Перенаправляем порты ssh при вызове запуска виртуалки:

petalinux-boot --qemu --kernel --qemu-args "-redir tcp:10022:10.0.2.15:22 -drive file=sdcard.qcow2,if=sd,index=0,media=disk"

Далее коннектимся с хоста:

ssh-copy-id root@localhost -p 10022
ssh root@localhost -p 10022

Копирование по ssh:

scp -P 10022 <source>  root@localhost:<destination>


Прерывать симуляцию:

Ctrl-A X

Работает SSH и подгружаются скрипты с подмонтированной SD-карточки. Цветная консоль, ключи ssh...

[править] Native QEMU

Забываем, все, что выше. Запускаем петалинукс на чистом QEMU

качаем репозиторий qemu


Исполняем:

./configure --target-list="arm-softmmu" --enable-fdt --disable-kvm --disable-xen
make -j24

переходим в build, создаем скрипт запуска

#!/bin/bash

./qemu-system-arm -M xilinx-zynq-a9 -m 256M \
-device loader,file=/home/ivan/linux/u-boot.elf \
-drive file=/home/ivan/git/SD/sdcard.qcow2,if=sd,index=0,media=disk \
-serial stdio

[править] QEMU + Questa

[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.

Персональные инструменты
Пространства имён

Варианты
Действия
SRNS Wiki
Рабочие журналы
Приватный файлсервер
QNAP Сервер
Инструменты