Виртуализация · 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.

  1. Выполните следующую команду, чтобы проверить архитектуру системы вашего компьютера.
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 “.

  1. Далее проверьте поддержку аппаратной виртуализации, выполнив следующую команду.
sudo lscpu | grep Virtualization

Для процессора Intel вы увидите аналогичный вывод ниже.

Virtualization:                  VT-x

А для процессоров AMD ниже приведен аналогичный вывод.

Virtualization:                  AMD-V
  1. При желании вы можете включить вложенную виртуализацию на вашей машине, используя следующую команду.
sudo modprobe -r kvm_intel  
sudo modprobe kvm_intel nested=1

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

cat /sys/module/kvm_intel/parameters/nested

Если вы получите вывод, похожий на “Y” или “1”, это означает, что функция вложенной виртуализации включена. В противном случае вы увидите сообщение об ошибке “Нет такого файла или каталога”.

Установка пакетов QEMU и Virt-Manager

  1. Чтобы установить пакеты 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).
  1. Далее запустите и включите службу 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.
  1. После этого выполните следующую команду, чтобы проверить статус службы 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 ниже.

  1. Выполните следующую команду, чтобы отредактировать конфигурацию 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.

  1. Далее добавьте вашего пользователя в группу “ libvirt “ с помощью следующей команды.
sudo usermod -a -G libvirt username
  1. После этого перезапустите службу libvirtd, чтобы применить новую конфигурацию.
sudo systemctl restart libvirtd

Теперь все пользователи в группе “libvirt” смогут создавать и настраивать виртуальные машины.

Проверка установки QEMU/KVM с помощью virt-manager

Теперь откройте приложение “ virt-manager “ из меню приложений.

  1. Нажмите меню “Edit -> Connection Details “ в приложении virt-manager.

Проверить детали подключения QEMU/KVM

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

virt-manager автоматически подключится к QEMU/KVM в системе

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

Конфигурация сети по умолчанию для QEMU/KVM с NAT

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

Все образы виртуальных машин будут доступны в этом хранилище по умолчанию, в директории “ /var/lib/libvirt/images “.

Хранилище QEMU/KVM по умолчанию

  1. Далее нажмите кнопку “ + “, чтобы создать новое хранилище для файлов образов ISO. Все файлы ISO операционных систем будут доступны в этом пуле.

Следуйте конфигурации хранилища ниже:

  • Имя: ISO
  • Тип: dir: Директория файловой системы
  • Целевой путь: /path/directory/to/your/iso/

Создать новое хранилище для файлов ISO операционных систем

Нажмите кнопку “ Finish “, чтобы завершить процесс. После этого вы готовы создать новые виртуальные машины.

Создание новой виртуальной машины с помощью virt-manager

  1. В приложении virt-manager нажмите кнопку “ + “, чтобы создать новую виртуальную машину.

Создать новую виртуальную машину с virt-manager

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

Выберите локальные медиа ISO для установки

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

Просмотреть ISO операционной системы, которую вы хотите установить

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

Выберите файл ISO ОС для установки, пример Debian 10

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

Выберите тип операционной системы, которую вы хотите установить

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

Конфигурация памяти и ЦП для виртуальной машины

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

Выберите размер диска для виртуальной машины

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

Подтвердите создание и установку виртуальной машины

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

Виртуальная машина запущена и работает с виртуализацией QEMU/KVM

Заключение

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

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.