Virt-manager

Revision as of 15:48, 1 November 2024 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
Other languages:
English • ‎Türkçe • ‎русский

Обзор


Подсказка
Слышали ли вы о Virtualbox для виртуализации операционных систем, таких как Linux и Windows или Mac? Это хорошее программное обеспечение, но не единственное! Не забывайте о VMware, Gnome Boxes и ... virt-manager.



Virt-manager использует libvirt и является менеджером многих гипервизоров, включая тот, который мы хотим использовать здесь: QEMU/KVM.



Зачем мне нужна виртуализация?

  • Чтобы узнать о новой ОС
  • Для настройки оборудования, которое имеет настройки только для этой операционной системы
  • Для использования программного обеспечения, которое работает только на другой

Я хочу знать больше


1. Виртуализация
2. Гипервизор
3. Виртуальная машина

Что мы точно должны знать


1. Какой у меня процессор. Определите его и убедитесь, что он как минимум четырехъядерный. ПОСМОТРИТЕ НА CPU-World
2. Проверьте, включены ли "параметры виртуализации" в BIOS, используя

LC_ALL=C lscpu | grep Virtualization

3. Сколько у меня памяти. Проверьте оперативную память и убедитесь, что она составляет не менее 4 ГБ.
4. Количество свободного места на жестком диске. Виртуальная машина может использовать файл образа диска, поэтому дополнительные разделы не нужны.

Примечание
Вы также можете использовать необработанные разделы, специально предназначенные для виртуальных машин. Дополнительную информацию см. в разбиение на разделы

5. Минимальные требования к аппаратному обеспечению операционной системы, которую вы хотите установить в качестве виртуальной машины.

Установите virt-manager, qemu и все зависимости


Через терминал:

sudo pacman -S --needed virt-manager qemu-desktop libvirt edk2-ovmf dnsmasq iptables-nft

Для поддержки TPM:

sudo pacman -S --asdeps swtpm

Добавить в автозапуск и запустить службу:

sudo systemctl enable libvirtd.service
sudo systemctl start libvirtd.service

Добавьте пользователя в группы libvirt, libvirt-qemu и kvm для использования виртуальных машин уровня system (qemu:///system)

sudo usermod -a -G libvirt,libvirt-qemu,kvm $USER
Примечание
  1. Вам не нужен этот шаг для запуска виртуальных машин системного уровня. Однако virt-manager запросит пароль sudoer'а при запуске, если пользователь не входит в группу libvirt.
  2. Вы также можете создавать виртуальные машины уровня пользователя (qemu:///session) и использовать их без прав sudoer. Однако некоторые функции, такие как Sharing files with Virtiofs, могут быть недоступны в qemu:///session

Использование Virt-Manager для создания гостевой системы

0. Подготовьте установочный образ. Если вы собираетесь устанавливать Windows, подготовьте также образ Virtio driver.

Подсказка
Вы также можете найти пакет virtio-win в AUR. Образ находится в /var/lib/libvirt/images, который по умолчанию является пулом каталогов qemu:///system

.

1. Запустите меню Диспетчер виртуальных машин. В нем уже должно быть установлено соединение LXC. Вы можете отключить и удалить его, если не используете LXC.

2. Перейдите в Файл, выберите Добавить подключение и выберите гипервизор QEMU/KVM или пользовательскую сессию QEMU/KVM, если вам не нужны виртуальные машины уровня system. Нажмите на кнопку подключения.

3. Вам нужны пулы каталогов для хранения образов дисков виртуальных машин или ISO-файлов CD/DVD. Дважды щелкните qemu/kvm, перейдите к хранилищу и добавьте - нажав +, выбрав путь к каталогу, где у вас находится iso, и к каталогу, где создается виртуальная машина.

Мой совет
используйте раздел, отличный от корневого. В случае необходимости переустановки операционной системы вы не потеряете виртуальную машину, которая уже готова к запуску.

4. Нажмите на кнопку создания новой виртуальной машины: выберите Локальный установочный носитель (ISO-образ или CDROM), затем выберите установочный ISO-образ и тип ОС (если он не обнаружен).

5. Сколько процессоров и сколько памяти? (проверьте рекомендуемые требования устанавливаемой операционной системы)

6. Создайте файловую систему виртуальной машины, выбрав Select or create custom storage и нажав Manage.... Под нужным пулом каталогов создайте том виртуальной машины (по умолчанию в формате qcow2). Сколько ГБ? Проверьте рекомендуемые требования ОС, которую вы устанавливаете.

7. Присвойте машине название и установите флаг customize configuration before install. У вас есть доступ к экрану со всем оборудованием, которое будет виртуализировано, проверьте, есть ли все необходимое для инициализации и запуска программы установки.

8. В разделе Обзор измените прошивку на UEFI для обеспечения будущего потенциала.

9. Измените тип SATA-диска 1 (образ диска создаваемой виртуальной машины) на virtio для лучшей производительности. Измените режим отключения на unmap, а затем примените изменения. Вы должны заметить, что имя устройства изменится с SATA Disk 1 на VirtIO Disk 1.

Предупреждение
Если вы устанавливаете Windows, убедитесь, что создали новое устройство SATA CDROM и выбрали образ virtio-win в качестве носителя, чтобы программа установки Windows смогла загрузить драйвер для распознавания диска. Драйвер хранилища virtio должен быть расположен где-то по адресу E:\viostor\w10\amd64.

10. Установите тип сетевой карты тоже virtio для лучшей производительности сети.

Заметка
Если вы устанавливаете Windows, когда система будет готова, убедитесь, что установили все драйверы virtio, чтобы ваша сеть virtIO могла нормально работать.

11. Добавьте чип TPM, выберите модель TIS через Emulated device backend.

12. Добавьте сторожевой таймер для перезагрузки гостя при зависании. Оставьте настройки по умолчанию.

13. И аппаратный RNG, чтобы получить энтропию от хоста.

14. Нажмите на верхнюю часть, чтобы начать установку.


Предупреждение
{{{2}}}

Установка гостевых дополнений

После запуска и работы виртуальной машины необходимо установить spice guest tools.

Для Windows это один пакет: spice-guest-tools-xxxx.exe

Для linux это: spice-vdagent и xf86-video-qxl. Если вы пользуетесь дистрибутивом linux - вы можете установить их с помощью менеджера пакетов

Посетите страницу загрузки Spice

Настройка параметров дисплея

По умолчанию используется модель видеокарты QXL. Если ваша виртуальная машина - система Linux, вы можете изменить ее на virtio и включить 3D-ускорение для лучшей графической производительности.
Виртуальная машина Windows, однако, пока не поддерживает virtio дисплей. Тем не менее, мы можем увеличить ее VGA память с 16 МБ по умолчанию до 64 МБ, чтобы обеспечить более высокое разрешение дисплея и немного улучшить 2D графическую производительность.
Для этого нам нужно отредактировать XML-файл виртуальной машины.

  1. В virt-manager перейдите в edit > preference и отметьте Enable XML edit.
  2. В сведениях о виртуальной машине перейдите к видеокарте. На вкладке XML измените значение vgamem на 65536, затем примените изменения.


Обмен файлами между хостом и гостем

Для гостевых систем Linux доступны Virtio-FS и 9p для совместного использования файлов. Дополнительную информацию см. в ArchWiki.
Для гостевых систем Windows самым простым способом обмена файлами между хостом и гостем является SAMBA.

  1. Создайте SAMBA usershare
  2. В гостевой Windows введите \\\192.168.122.1 в файловом проводнике и сможете увидеть usershare на вашем хосте.
  3. Сопоставьте этот SAMBA usershare с новым диском и подключитесь к нему с соответствующими учетными данными. Вот и все.

Дополнительную информацию можно найти в этой статье.

Оптимизация vCPU

Посмотрите эту статью, как настроить топологию vCPU для лучшей производительности.
Например, мой процессор имеет 1 сокет, 8 ядер и 16 потоков. Автоматическая топология назначает моему гостю 4 сокета, 1 ядро и 1 поток. После изменения на 1 сокет, 4 ядра и 1 поток производительность значительно увеличивается.

Windows 11

Windows Setup provides for setting up virtual Windows system for lab purpose. It can be for testing software or for pentesting.

For a continued use of Windows you will need a valid license key to run a virtualized Windows.

Prepare

  • Create a new virtual machine
  • Select a Windows 11 ISO file
  • Accept the defaults clicking Next until you reach the final screen
  • Tick the box Customize configuration before install and click Finish
  • In the Overview pane - set vm firmware to BIOS and click Apply
  • Click the button Begin Installation

Installer

Before starting the installer press ShiftF10 so launch the Windows Cmd utility and launch regedit.

  • Expand HKEY_LOCAL_MACHINE\SYSTEM\Setup
  • Add new key named LabConfig
  • Add new DWORD value with name BypassTPMCheck and change the value to 1.
  • Add new DWORD value with name BypassRAMCheck and change the value to 1.
  • Add new DWORD value with name BypassSecureBootCheck and change the value to 1.

Close the registry editor and exit the shell, then continue the installer

Final Setup

During last stage the installer will insist in network access but you may want use a local account instead of the required Microsoft account.

This can be disabled using the Cmd utility ShiftF10

This can be disabled using the Cmd utility ShiftF10

  • enter OOBE\BYPASSNRO and press Enter
  • close the Cmd utility
  • back in the setup window click I don't have internet

Рекомендации

Virt-manager
Libvirt
Qemu
x86 virtualization
Intel-vt
Amd-v