PDA

Просмотр полной версии : QEMU/KVM: Установка, Настройка и Использование для Виртуализации


delifer
05.05.2024, 02:24
https://forum.antichat.xyz/attachments/29111547/img_b05a98e768.png

Приветствую!Зачастую при установке qemu и его использовании у новичков возникают проблемы с демонами и простой установке. Я решил написать такой "мини-гайд" для тех кто первый раз хочет попробовать qemu или для тех у кого возникли какие-то проблемы.

Краткая сводка
QEMU— это универсальный эмулятор и виртуализатор машины с открытым исходным кодом.
https://forum.antichat.xyz/attachments/29111547/img_ebbb83a543.png

При использовании в качестве эмулятора машины QEMU может запускать операционные системы и программы, созданные для одной машины (например, платы ARM), на другой машине (например, вашем собственном ПК). Используя динамический перевод, достигается очень хорошая производительность.

При использовании в качестве виртуализатора QEMU достигает производительности, близкой к исходной, за счет выполнения гостевого кода непосредственно на центральном процессоре. QEMU поддерживает виртуализацию при работе под гипервизором Xen или при использовании модуля ядра KVM в Linux. При использовании KVM QEMU может виртуализировать x86, сервер и встроенный PowerPC, 64-битный POWER, S390, 32-битный и 64-битный ARM, а также гостей MIPS.


Гипервизор Xen - является процессом, отделяющим операционные системы и приложения от аппаратной части оборудования. Гипервизор в этом случае является так называемым менеджером виртуальных машин.

Гипервизор нужен для того, чтобы запускать некий софт в несуществующей (виртуальной) среде и при этом, скрывать от этого софта реальное физическое железо, на котором этот софт работает. Гипервизор работает в роли «прокладки» между физическим железом (хостом) и виртуальной ОС (гостем).


Установка
Метод для Arch-подобных дистрибутивов

Для начала обновим нашу систему, это нужно делать всегда!!!

Bash:



sudo
pacman -Syuu


Затем устанавиливаем сам Qemu

Bash:



sudo
pacman -S qemu


Выбираем qemu-base

https://forum.antichat.xyz/attachments/29111547/1714856434024.png
Соглашаемся с установкой всех библиотек и ждём.

Отлично! Qemu установлен, но в списке программ его нет =(, ну да, это же программа управляемая из терминала, но давайте также установим для него GUI.

Bash:



sudo
pacman -S virt-manager

Метод для Debian-подобных дистрибутивов

Для начала обновим нашу систему, это нужно делать всегда!!!

Bash:



sudo
apt-get
update
sudo
apt-get
upgrade


Затем устанавиливаем сам Qemu

Bash:



sudo
apt-get
install
qemu
Соглашаемся с установкой всех библиотек и ждём.

Теперь менеджер

Bash:



sudo
apt-get
install
virt-manager


Отлично! Теперь в нашем списке программ появился Virtual Machine Manager.

Решение проблем и ошибок
Первое что мы увидим при запуске это окно с ошибками, примерно такими:

https://forum.antichat.xyz/attachments/29111547/1714856724002.png

https://forum.antichat.xyz/attachments/29111547/1714856744898.png

Давайте их решать, первое решается достаточно просто, нужно запустить демона libvirtd.

Bash:



sudo
systemctl
enable
libvirtd
sudo
systemctl start libvirtd


Теперь видим что соединение с Qemu/KVM установлено и ошибка исчезла, но теперь при запуске программа требует пароль root'a, это необходимо для демона, если не хотите каждый раз вводить пароль, запустите демона libvirtd из под учётной записи root.

Вот мы уже довольные как слоны указали образ будущей системы, оперативную память и т.д. и тут на самом последнем этапе вылетает подобное окно

https://forum.antichat.xyz/attachments/29111547/1714857392549.png

Здесь уже посложнее, но всё ещё проблема быстрорешаемая, для её решения нужно установить dnsmasq.

Bash:



sudo
pacman -S dnsmasq


ВНИМАНИЕ! НЕ ЗАПУСКАЙТЕ ДЕМОНА

Затем нужно ввести команду, чтобы активировать default network.

Код:



sudo virsh net-start default


Отлично, теперь всё должно работать. Запуская default на виртуальной машине, вы можете столкнуться с ошибкой "Network is already in use by interface ...", я не знаю как это решить, но думаю что проблема в том что это делается на виртуальной машине, т.к такой ошибки при установке на основную машину у меня не было

Почему-то на LinuxMint такой проблемы не возникло, возможно там имеется поддержка от разработчиков Linuxmint

Заключение
Надеюсь данная статья поможет вам лучше разобраться в виртуальных машинах, получить новый опыт и открыть для себя ещё один хороший клиент.

Спасибо, username!
Литература

QEMU — Википедия

QEMU

Kilomi
13.09.2024, 15:29
VirtualBox чем-то лучше/хуже? Если знаете, уточните, в каких ситуациях лучше использовать VB, а в каких QEMU.

Triton
14.09.2024, 20:24
Kilomi сказал(а):

VirtualBox чем-то лучше/хуже? Если знаете, уточните, в каких ситуациях лучше использовать VB, а в каких QEMU.


Если кратко, то QEMU более производительный и поддерживает множество архитектур процессоров, но сложнее в использовании. Разницу заметно даже на глаз. Лично для меня более удобное управление через CLI.

teenkilling
15.09.2024, 00:07
Kilomi сказал(а):

VirtualBox чем-то лучше/хуже? Если знаете, уточните, в каких ситуациях лучше использовать VB, а в каких QEMU.


"QEMU — это универсальный эмулятор и виртуализатор машины с открытым исходным кодом." как будто автор в самом начале преимущества описал:/

Marylin
17.09.2024, 07:36
Kilomi сказал(а):

VirtualBox чем-то лучше/хуже?


VBox - это просто виртуальная машина VM, которая заточена на работу под конкретно взятым ЦП CISC х86. А Qemu - это уже эмулятор не только процессоров х86, но и ряда других архитектур, например RISC - AVR, SPARC и т.д. В дефолте эмуляторы проигрывают в скорости работы вирт.машинам, т.к. EMU вынуждены перехватывать буквально все инструкции ЦП, в то время как VM только привилегированные. Но если ваш ЦП поддерживает технологию виртуализации VTх/d, то эмуляцией инструкций чужого процессора занимается уже гипервизор, и тогда скорость на порядок повышается.

В то-же время, на уровне VTх сейчас способны работать и все 64-битные вирт.машины, в т.ч. и VBox. Таким образом, если вы не планируете изучать архитектуры кроме х86, вполне достаточно и удобней использовать именно виртуальные машины, а не эмуляторы (хотя желательно пощупать и то и другое).

CyberX88
03.03.2025, 20:18
Года 2-3 назад была необходимость установить Qemu и открыть образы с сервака, чуть умом не тронулся и литературы 0 было. Спасибо автору, очень полезно такое почитать на русском.