Виртуализация · 7 min read · Dec 14, 2025
Как установить KVM/QEMU на Manjaro/Archlinux

KVM — это аббревиатура от Kernel-based Virtual Machine, это технологическое решение для виртуализации, основанное на модуле ядра Linux. KVM — это решение с открытым исходным кодом, работающее на машине Linux x86 с поддержкой аппаратных расширений виртуализации Intel VT или AMD-V. Модуль ядра KVM был включен в ядро Linux с версии 2.6.20 и был портирован на другие операционные системы, такие как FreeBSD и Illumos, в виде загружаемых модулей ядра.
Технология KVM превратит машину Linux в гипервизор виртуализации, который называется хост-машиной. На хост-машине вы сможете создать несколько изолированных систем, называемых виртуальными машинами (VM). Каждая виртуальная машина имеет свою систему (это может быть Linux, Windows или BSD), а также имеет частное виртуализированное оборудование, такое как память, ЦП, сетевая карта, диск, графика и т. д.
Что такое QEMU?
QEMU или Quick Emulator — это эмулятор системы с открытым исходным кодом и виртуализатор для аппаратной виртуализации. Обычно он используется как виртуализатор с модулем ядра KVM для запуска виртуальных машин. Чтобы достичь высокой производительности для гостевых машин/виртуальных машин, он будет использовать аппаратные расширения виртуализации, такие как Intel VT или AMD-V. Виртуализация QEMU/KVM в основном используется как гипервизор в центре обработки данных.
В этом руководстве вы узнаете, как настроить виртуализацию KVM/QEMU на машине Manjaro/Archlinux. Также вы узнаете, как создать первую виртуальную машину с помощью графического приложения “virt-manager” — настольного пользовательского интерфейса для управления виртуальными машинами.
Предварительные требования
- Manjaro/Archlinux с архитектурой x86 или 64-бит.
- Процессор с поддержкой виртуализации (Intel VT или AMD-V).
- Пользователь, не являющийся root, с правами sudo.
Проверка архитектуры системы и поддержки аппаратной виртуализации ЦП
Сначала проверьте архитектуру машины и аппаратную поддержку ускорения виртуализации Intel VT для процессоров Intel и AMD-v для процессоров AMD.
- Выполните следующую команду, чтобы проверить архитектуру системы вашего компьютера.
uname -mВы получите следующий вывод.
Linux machine1 5.4.134-1 #1 SMP PREEMPT Tue Jul 06 08:10:03 UTC 2021 x86_64 GNU/LinuxКак видно, в настоящее время мы используем систему Linux с архитектурой “ x86_64 “ или “ 64-бит “ и версией ядра “ 5.4 “.
- Далее проверьте поддержку аппаратной виртуализации, выполнив следующую команду.
sudo lscpu | grep VirtualizationДля процессора Intel вы увидите аналогичный вывод ниже.
Virtualization: VT-xА для процессоров AMD ниже приведен аналогичный вывод.
Virtualization: AMD-V- При желании вы можете включить вложенную виртуализацию на вашей машине, используя следующую команду.
sudo modprobe -r kvm_intel
sudo modprobe kvm_intel nested=1После этого выполните следующую команду, чтобы проверить вложенную виртуализацию.
cat /sys/module/kvm_intel/parameters/nestedЕсли вы получите вывод, похожий на “Y” или “1”, это означает, что функция вложенной виртуализации включена. В противном случае вы увидите сообщение об ошибке “Нет такого файла или каталога”.
Установка пакетов QEMU и Virt-Manager
- Чтобы установить пакеты qemu и virt-manager, выполните команду ниже.
sudo pacman -S qemu virt-manager libvirt virt-viewer dnsmasq vde2 bridge-utils openbsd-netcat ebtables libguestfsДля системы manjaro будет конфликт пакетов между “ iptables “ и “ ebtables “. Нажмите “ y “, чтобы удалить пакет iptables по умолчанию и заменить его на “ ebtables “ и “ nftables “.
Ниже приведены основные пакеты, которые вы должны знать:
- qemu: Эмулятор машины и виртуализатор с открытым исходным кодом.
- virt-manager: Графическое приложение для управления виртуальными машинами.
- libvirt: API для управления движками виртуализации, такими как KVM, QEMU и т. д.
- dnsmasq: Легковесный DNS-пересылатель и DHCP-сервер.
- bridge-utils: Утилиты для настройки Ethernet-моста Linux.
- libguestfs: Набор инструментов для изменения образов дисков виртуальных машин (VM).
- Далее запустите и включите службу libvirtd, используя следующую команду.
sudo systemctl enable --now libvirtdВы получите аналогичный вывод ниже.
Created symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service → /usr/lib/systemd/system/libvirtd.service.
Created symlink /etc/systemd/system/sockets.target.wants/virtlockd.socket → /usr/lib/systemd/system/virtlockd.socket.
Created symlink /etc/systemd/system/sockets.target.wants/virtlogd.socket → /usr/lib/systemd/system/virtlogd.socket.
Created symlink /etc/systemd/system/sockets.target.wants/libvirtd.socket → /usr/lib/systemd/system/libvirtd.socket.
Created symlink /etc/systemd/system/sockets.target.wants/libvirtd-ro.socket → /usr/lib/systemd/system/libvirtd-ro.socket.- После этого выполните следующую команду, чтобы проверить статус службы libvirtd.
sudo systemctl status libvirtdИ вы должны увидеть аналогичный вывод ниже. Как видно, служба libvirtd активна и работает.
? libvirtd.service - Virtualization daemon
Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2021-07-23 10:33:25 UTC; 6s ago
TriggeredBy: ? libvirtd-ro.socket
? libvirtd.socket
? libvirtd-admin.socket
Docs: man:libvirtd(8)
https://libvirt.org
Main PID: 16828 (libvirtd)
Tasks: 19 (limit: 32768)
Memory: 16.4M
CPU: 226ms
CGroup: /system.slice/libvirtd.service
??16828 /usr/bin/libvirtd --timeout 120Разрешение пользователю, не являющемуся root, использовать виртуализацию KVM/QEMU
По умолчанию только пользователь “root” может создавать и управлять виртуальными машинами. Чтобы разрешить пользователям, не являющимся root, создавать и управлять виртуальными машинами, вы должны следовать конфигурации libvirtd ниже.
- Выполните следующую команду, чтобы отредактировать конфигурацию libvirtd.
sudo nano /etc/libvirt/libvirtd.confУберите комментарий с параметра “ unix_sock_group “ и введите имя группы как “ libvirt “.
# Установите владение группой сокета UNIX. Это можно использовать для
# предоставления "доверенному" набору пользователей доступа к возможностям управления
# без получения прав root.
#
# Эта настройка не требуется или не учитывается, если используется активация сокета systemd.
#
# По умолчанию это ограничено "root".
unix_sock_group = "libvirt"После этого уберите комментарий с параметра “ unix_sock_rw_perms “ и оставьте разрешение по умолчанию “ 0770 “.
# Установите разрешения сокета UNIX для R/W сокета. Это используется
# для полного управления ВМ
#
# Эта настройка не требуется или не учитывается, если используется активация сокета systemd.
#
# По умолчанию разрешает только root. Если PolicyKit включен на сокете,
# по умолчанию это изменится, чтобы разрешить всем (например, 0777)
#
# Если вы не используете PolicyKit и устанавливаете владение группой для контроля доступа,
# тогда вы можете захотеть ослабить это тоже.
unix_sock_rw_perms = "0770"Сохраните конфигурацию, нажав кнопку Ctrl+x и введите y, затем enter.
- Далее добавьте вашего пользователя в группу “ libvirt “ с помощью следующей команды.
sudo usermod -a -G libvirt username- После этого перезапустите службу libvirtd, чтобы применить новую конфигурацию.
sudo systemctl restart libvirtdТеперь все пользователи в группе “libvirt” смогут создавать и настраивать виртуальные машины.
Проверка установки QEMU/KVM с помощью virt-manager
Теперь откройте приложение “ virt-manager “ из меню приложений.
- Нажмите меню “Edit -> Connection Details “ в приложении virt-manager.

- На вкладке “ Overview “ вы увидите, что virt-manager автоматически подключится к “ qemu:///system “.

- Перейдите на вкладку “ Virtual Networks “, и вы увидите конфигурацию сети “ default “.
- Интерфейс: virbr0
- Автостарт при загрузке: да
- IP-адрес: 192.168.122.0/24
- Диапазон DHCP IP-адресов: 192.168.122.2 - 192.168.122.254
- Тип сети: NAT

- Теперь перейдите на вкладку “ Storage “, и вы увидите конфигурацию пула хранения “ default “.
- Тип: Директория файловой системы
- Размер: Зависит от вашего диска
- Местоположение: /var/lib/libvirt/images
- Автостарт при загрузке: да
Все образы виртуальных машин будут доступны в этом хранилище по умолчанию, в директории “ /var/lib/libvirt/images “.

- Далее нажмите кнопку “ + “, чтобы создать новое хранилище для файлов образов ISO. Все файлы ISO операционных систем будут доступны в этом пуле.
Следуйте конфигурации хранилища ниже:
- Имя: ISO
- Тип: dir: Директория файловой системы
- Целевой путь: /path/directory/to/your/iso/

Нажмите кнопку “ Finish “, чтобы завершить процесс. После этого вы готовы создать новые виртуальные машины.
Создание новой виртуальной машины с помощью virt-manager
- В приложении virt-manager нажмите кнопку “ + “, чтобы создать новую виртуальную машину.

- Выберите “ Local install media “, чтобы использовать образ ISO для установки, и нажмите кнопку “ Forward “, чтобы продолжить.

- Нажмите кнопку “ Browse “, чтобы выбрать файл ISO.

Теперь выберите пул хранения “ ISO “ и выберите файл iso для установки (в этом примере это “ Debian 10 “), затем нажмите “ Choose Volume “.

Снимите отметку с параметра “ Automatically detect from the installation media/source “, введите операционную систему, которую вы хотите установить (в этом примере это “ Debian 10 “), затем снова нажмите кнопку “ Forward “, чтобы продолжить.

- Выберите, сколько памяти и ЦП для виртуальной машины, затем нажмите “ Forward “.

- Выберите, сколько дискового пространства для виртуальной машины, и нажмите “ Forward “.

- Дважды проверьте вашу конфигурацию и нажмите кнопку “ Finish “, чтобы установить.

- Теперь виртуальная машина запущена и работает с виртуализацией QEMU/KVM, и вы можете продолжить установку ОС.

Заключение
Поздравляем! вы узнали, как настроить виртуализацию QEMU/KVM на машине Manjaro/Archlinux. Также, как использовать приложение virt-manager для создания виртуальных машин. Теперь вы можете создавать виртуальные машины с вашей предпочитаемой операционной системой. Вы можете использовать другую дистрибуцию Linux, Windows или ОС семейства BSD.
Get new posts in your inbox
No spam. Unsubscribe anytime.