How to use qemu

How to use qemu

How to Set up Virtual machines with QEMU GUI on Windows 10

Qemu is open-source software for virtualization on Windows 10/8/7, Linux, and macOS but with a command-line interface, lightweight, and low hardware requirements.

QEMU stands for “Quick Emulator” and is the standard tool for virtualization and CPU emulation under Linux, Windows, and macOS. On Linux systems, QEMU uses the functions of the Linux kernel for virtualization (KVM- Kernel Virtual Machine), which are not available under Windows.

Thus, the binaries of Qemu’s ported version for Windows by Stefan Weil couldn’t provide the performance as it gives on Linux OS with KVM. Thus VirtualBox or Vmware player will be the best alternative options; still, if you want to try then here in this Qemu tutorial, we will let know the way to download, install and use Qemu on Windows 10 or 7 using its GUI VM manager Qtemu, an open-source software.

Qemu installation on Windows 10 with Qtemu GUI

Step 1: Download Qemu for Windows

From the official website of the Qemu, we can download it easily even the source code. Visit it and click on the Windows tab, it will take you to another page https://qemu.weilnetz.de to download 32 bit or 64 bit of this virtualization platform. Here we are getting the 64 bit.

Step 2: Install Qemu

Now, like any other Windows 10/7 software, just double click on the downloaded setup of Qemu and follow the installation wizard.

Как пользоваться QEMU в Windows

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

Установка QEMU

Эмулятор QEMU является кроссплатформенным приложением, доступным в том числе для 32- и 64-битной версии Windows.

Команды QEMU

QEMU является консольным приложением, то есть для работы с ним вам придется использовать «Командную строку» и вводимые вручную текстовые команды. Команд и параметров много, но для начала достаточно выучить самые главные.

Основные

Дополнительные

Установка операционной системы в QEMU

Предположим, вы хотите эмулировать компьютер с интеловским процессором и операционной системой Windows XP.

Если виртуальная система станет вам не нужна, удалите IMG-диск, на который она была установлена. По умолчанию файл диска IMG располагается в папке установки QEMU.
How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

Запуск в QEMU образов LiveCD

Процедура запуска портативных операционных систем в QEMU намного проще, чтобы запустить в эмуляторе LiveCD, сформируйте и выполните команду следующего вида, заблаговременно перейдя в «Командной строке» в папку инсталляции эмулятора:

Поскольку портативная ОС может загружаться в оперативную память, в предварительном создании виртуального диска нет необходимости.

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

Qemu Manager

Если вы не имеете навыков работы со штатной программой «Командная строка», можете попробовать воспользоваться приложением Qemu Manager — графическую оболочкой для эмулятора Qemu. Ниже прилагается краткая инструкция по использованию приложения.

Несмотря на отсутствие поддержки русского языка, Qemu Manager существенно упрощает работу с платформой Qemu. К сожалению, в настоящее время разработка данной программы прекращена, официальный сайт разработчика недоступен, но приложение по-прежнему доступно для скачивания из свободных источников.

Как пользоваться qemu

Преимущество виртуализации в том, что она позволяет запустить несколько разных операционных систем на одном компьютере одновременно и при этом неважно какой они будут архитектуры. Среди домашних пользователей достаточно часто используются такие программы для эмуляции компьютера, как Virtualbox и VMware, это мощные программы с графическим интерфейсом и множеством возможностей, которые очень просто настроить.

Что такое qemu?

Qemu использует аппаратную виртуализацию, поэтому может выполнять гостевые операционные системы почти так же быстро, как и на основном железе. Может использоваться гипервизор XEN или модуль ядра KVM в Linux. Qemu может работать в двух режимах работы:

Эмулировать можно такие архитектуры: x86 (32 и 64 бит), PowerPC (32 и 64 бит), ARM, MIPS (32 бит), Sprac (32 и 64 бит), Alpha, ColdFire(m68k), CRISv2 и MicroBlaze. Этот список уже более внушительный чем у Virtualbox.

Установка qemu

Перед тем как мы сможем использовать программу, необходимо ее установить. Если вы используете дистрибутив Linux, например, Ubuntu, то сможете найти программу в официальных репозиториях. Для Ubuntu команда будет выглядеть вот так:

sudo apt install qemu-kvm qemu

Для Fedora и других систем RedHat можно установить группу Virtualization:

sudo dnf install @virtualization

В ArchLinux используйте Pacman:

Для Windows или MacOS вам нужно скачать исполняемый файл из официального сайта. Программа управляется только через терминал, так что вы главном меню системы ничего не появиться после установки. А теперь перейдем к тому как настроить qemu.

Как пользоваться qemu?

Теперь, когда программа установлена и готова к использованию попытаемся разобраться как ее запустить и применять. Но сначала нужно разобраться какие команды и для чего используются. Эмулятор qemu создает много команд, но их можно разделить на группы:

Сначала разберемся с эмуляцией полной системы, поскольку для решения этой задачи виртуальная машина qemu используется чаще всего, а уже потом перейдем к режиму пользователя.

1. Использование qemu-system

Чтобы вы понимали что и откуда берется для начала рассмотрим опции утилиты qemu-system. Синтаксис команды такой:

$ qemu-system параметры

Куда сложнее здесь синтаксис каждого из параметров:

-имя_параметра имя_опции = значение : значение2

Мы рассмотрим только основные параметры, и их опции, которые нам понадобятся:

Мы рассмотрели опции для qemu-system-x86-64, для других архитектур, они могут немного отличаться. А теперь разберем несколько простых примеров как использовать qemu, как создать машину qemu и настроить ее.

Сначала нужно создать жесткий диск для установки. Вы можете использовать реальные жесткие диски, но работать с образами намного удобнее. Можно просто создать пустой файл, заполненный нулями, а затем форматировать его в нужную файловую систему во время установки, но также можно создать файл формата qcow2, этот формат используется по умолчанию в qemu. Воспользуемся командой qemu-img:

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

Здесь мы подключаем наш жесткий диск как hda, затем указываем что нужно загружаться с cdrom и подключаем образ системы ubuntu к нему. Последний параметр указывает сколько оперативной памяти будет выделено для машины.

Дальше откроется окно, похожее на VritualBox и начнется установка системы. После того как установка будет завершена, вы сможете запускать машину командой:

Создавать виртуальную машину с другой архитектурой не очень сложно, достаточно изменить команду. Например, сделаем виртуальную машину ppc:

По умолчанию в гостевой системе не будет звука, но вы можете подключить туда звуковую карту:

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

2. Использование эмуляции окружения

Теперь рассмотрим использование qemu для эмуляции архитектуры в окружении пользователя. Команда qemu-user или qemu-архитектура позволяет выполнять программы, собранные для другой архитектуры прямо в вашей системе. Это очень часто используется для отладки программ, собранных для arm на компьютере или других подобных задач. Команде достаточно передать команду и ее параметры:

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

Точно так же вы можете выполнить arm программу или программу для любой из поддерживаемых архитектур.

Выводы

В этой статье мы очень кратко рассмотрели как пользоваться qemu, основные настройки этой утилиты и опции. На самом деле там намного больше опций и возможностей. Одна только возможность эмулировать такое огромное количество архитектур чего стоит. Если для вас эмулятор qemu слишком сложен через терминал, то можно использовать графический интерфейс, например, virt-manager. А вы используете qemu? Или предпочитаете другие виртуальные машины? Почему? Напишите в комментариях!

How to use qemu

How to use qemu. Смотреть фото How to use qemu. Смотреть картинку How to use qemu. Картинка про How to use qemu. Фото How to use qemu

Contents

How to use QEMU

QEMU is a very flexible virtualization technology however it is quite slow and it is recommended that you understand and evaluate alternative solutions before picking this one. Refer to Getting started with virtualization

QEMU is a generic and open source processor emulator which achieves a good emulation speed by using dynamic translation.

QEMU has two operating modes:

Download

QEMU is available on Fedora repository. It can be installed by using DNF:

Qemu commands since F?+

To discover the qemu commands that are installed perform the following:

In the following examples where «qemu» is, substitute your command for executing qemu. E.g.

Of course, this does not apply to «qemu-img».

Qemu virtual machine installation

Create the virtual image for the system:

Of course you are not obliged to take 5GB.

now let’s install the OS. Put in the install CD and type into your konsole (all in one line without break):

Testing ISO Images

Type, in the proper directory

Debugging

To get kernel output dumped to a file outside the virtual system, add e.g. «-serial file:/tmp/qemu-output.log» to the qemu command line. When booting the virtual system, add «console=ttyS0» to the kernel boot parameters.

This output is particularly helpful if you are having trouble booting the system, in which case you may also wish to remove «rhgb» and «quiet» from the kernel boot parameters.

Copyright © 2022 Red Hat, Inc. and others. All Rights Reserved. For comments or queries, please contact us.

The Fedora Project is maintained and driven by the community and sponsored by Red Hat. This is a community maintained site. Red Hat is not responsible for content.

QEMU User space emulator¶

Supported Operating Systems¶

The following OS are supported in user space emulation:

Linux (referred as qemu-linux-user)

BSD (referred as qemu-bsd-user)

Features¶

QEMU user space emulation has the following notable features:

System call translation:

QEMU includes a generic system call translator. This means that the parameters of the system calls can be converted to fix endianness and 32/64-bit mismatches between hosts and targets. IOCTLs can be converted too.

POSIX signal handling:

QEMU can redirect to the running program all signals coming from the host (such as SIGALRM ), as well as synthesize signals from virtual CPU exceptions (for example SIGFPE when the program executes a division by zero).

QEMU relies on the host kernel to emulate most signal system calls, for example to emulate the signal mask. On Linux, QEMU supports both normal and real-time signals.

Threading:

On Linux, QEMU can emulate the clone syscall and create a real host thread (with a separate virtual CPU) for each emulated thread. Note that not all targets currently emulate atomic operations correctly. x86 and Arm use a global lock in order to preserve their semantics.

QEMU was conceived so that ultimately it can emulate itself. Although it is not very useful, it is an important test to show the power of the emulator.

Linux User space emulator¶

Command line options¶

Set the x86 elf interpreter prefix (default=/usr/local/qemu-i386)

Set the x86 stack size in bytes (default=524288)

Select CPU model (-cpu help for list and additional feature selection)

Set environment var to value.

Remove var from the environment.

Offset guest address by the specified number of bytes. This is useful when the address region required by guest applications is reserved on the host. This option is currently only supported on some hosts.

Pre-allocate a guest virtual address space of the given size (in bytes). «G», «M», and «k» suffixes may be used when specifying the size.

Activate logging of the specified items (use ‘-d help’ for a list of log items)

Act as if the host page size was ‘pagesize’ bytes

Wait gdb connection to port

Run the emulation in single step mode.

Print system calls and arguments similar to the ‘strace’ program (NOTE: the actual ‘strace’ program will not work because the user space emulator hasn’t implemented ptrace). At the moment this is incomplete. All system calls that don’t have a specific argument format are printed with information for six arguments. Many flag-style arguments don’t have decoders and will show up as numbers.

Other binaries¶

user mode (Alpha)

qemu-arm is also capable of running Arm «Angel» semihosted ELF binaries (as implemented by the arm-elf and arm-eabi Newlib/GDB configurations), and arm-uclinux bFLT format binaries.

user mode (ColdFire)

qemu-m68k is capable of running semihosted binaries using the BDM (m5xxx-ram-hosted.ld) or m68k-sim (sim.ld) syscall interfaces, and coldfire uClinux bFLT format binaries.

The binary format is detected automatically.

user mode (Microblaze)

qemu-mips executes 32-bit big endian MIPS binaries (MIPS O32 ABI).

qemu-mipsel executes 32-bit little endian MIPS binaries (MIPS O32 ABI).

qemu-mips64 executes 64-bit big endian MIPS binaries (MIPS N64 ABI).

qemu-mips64el executes 64-bit little endian MIPS binaries (MIPS N64 ABI).

qemu-mipsn32 executes 32-bit big endian MIPS binaries (MIPS N32 ABI).

qemu-mipsn32el executes 32-bit little endian MIPS binaries (MIPS N32 ABI).

Источники информации:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *