АльтЛинукс Сервер Виртуализации 10 (Proxmox). Создание виртуальных машин c пробросом видео dGPU «Geforce RTX 4070 Ti»
15 июля 2024 г.
После установки гипервизора «Альт Сервер Виртуализации 10» (на сегодня актуальна уже версия 10.2) можно приступать к созданию виртуальных машин. Если нет второго компьютера, то удобнее установить какую-нибудь графическую оболочку. Подробно такая установка описана в статье: https://habr.com/ru/articles/818961/
Уточнение некоторых моментов:
Гипервизор — в данном случае синоним установленной операционной системы «АльтЛинукс Сервер Виртуализации».
VM или ВМ — виртуальная машина.
dGPU или дискретная видеокарта — та видеокарта, которая устанавливается в отдельный слот материнской платы, в отличие от интегрированной видеокарты (или iGPU), встроенной в процессор.
Конфигурация компьютера:
Компонент | Модель |
Материнская плата | Gigabyte B650M DS3H |
Процессор. Сокет AM5 | AMD Ryzen 5 7600X |
ОЗУ. 4×32, всего 128 ГБ | Kingston FURY Beast Black RGB |
Диск. 2ТБ | SSD M.2 накопитель Samsung 980 PRO |
Видеокарта | Geforce RTX 4070 Ti |
Монитор. 2 шт. | 31.5» Samsung U32J590UQI |
Здесь будут приведены скриншоты, где IP-адрес у сервера имеет разное значение: 192.168.1.50 или 192.168.1.60. Реальный сервер имеет адрес 192.168.1.50. Сервер же с IP-адресом 192.168.1.60 установлен специально для удобного создания скриншотов для этой статьи и уточнения последовательности действий, так как на реальном сервере уже всё настроено и работает.
В такой конфигурации компьютера данную видеокарту, а именно Geforce RTX 4070 Ti операционная система «АльтЛинукс Сервер Виртуализации» 10-й версии умеет пробрасывать в виртуальные машины из «коробки», как есть. Не нужно ничего прописывать в конфигурационных файлах, пересобирать ядро и т.д.
Но нужно, внимание, обязательно добиться, чтобы гипервизор запустился с использованием интегрированной видеокарты, а не той, которую планируется передать в виртуальную машину. Для этого можно один монитор подключить к дискретной видеокарте и обязательно выключить, а второй — к интегрированной и включить. При старте Аль Линукс Сервера именно на второй монитор и должна выводиться информация. Если это не так, то, скорее всего, необходимо в BIOS включить использование iGPU.
Первое подключение к веб-интерфейсу. Некоторые пояснения и подготовка сервера к установке виртуальных машин.
Включаем компьютер, дожидаемся окончания загрузки и появления приглашения к регистрации пользователя.
Запоминаем строку подключения к веб-интерфейсу Гипервизора (на скрине ниже подчеркнуто синим), вводим имя пользователя, его пароль, после успешной регистрации пользователя в строке приглашения вводим «startx» и нажимаем клавишу ENTER на клавиатуре (на скрине ниже подчеркнуто красным):
Экран консоли сервера, когда уже зарегистрирован пользователь, но графическая оболочка еще не запущена
После этого запустится графический интерфейс. Запускаем браузер, для этого мышью нажимаем на кнопку слева внизу, там, где в Windows по умолчанию расположена кнопка «Пуск», в открывшемся списке выбираем «Сеть», справа появится требуемый пункт «Веб-браузер Chromium». Сразу рекомендую нажать правую кнопку мыши и выбрать пункт «Добавить на рабочий стол». На мой взгляд, с рабочего стола запускать гораздо удобнее, поэтому всегда создаю ярлыки на рабочем столе часто используемых приложений. См скрин ниже, всё важное выделено красным:
Добавляем ярлык браузера на рабочий стол
Открываем браузер, в строке адреса вводим ссылку на веб-интерфейс вашего сервера. В данном примере это:
https://192.168.1.60:8006/
где 192.168.1.60 — ip-адрес, что вы указали серверу при установке, а 8006 — порт, который по умолчанию слушает веб-интерфейс окружения Proxmox. После нажатия клавиши Enter откроется устрашающая страничка, видимо, требуется что-то сделать с сертификатами или добавить этот адрес в безопасные адреса. Я просто нажимаю на кнопку «Дополнительные». См скрин ниже:
Веб-интерфейс при подключении в первый раз.
Кнопка поменяет название на «Скрыть подробности», а снизу добавится текстовый блок, где будет ссылка, на которую и следует кликнуть. Красным на скрине ниже:
Следует кликнуть на небезопасной ссылке
При следующем входе такого не будет.
Далее откроется веб-интерфейс Proxmox с приглашением к авторизации и выбору языка. В первую очередь необходимо выбрать язык, если вас не устраивает английский, так как при выборе языка все введенные данные очищаются. Я выбираю русский язык и регистрируюсь под именем пользователя «root»:
Авторизация пользователя с выбранным русским языком интерфейса
Откроется веб страница функционала Proxmox, доступного пользователю. Там много всего интересного, со временем изучите, выделю то, что нам пригодится сейчас.
При установке по умолчанию создается локальное хранилище, где хранятся диски виртуальных машин, установочные iso-образы и т.д. Путь хранилища в файловой системе Гипервизора можно увидеть через веб-интерфейс.
«Центр обработки данных» → «Хранилище» → Колонка «Путь/цель»:
Где гипервизор по умолчанию хранит основные данные.
При создании виртуальной машины мастер создания виртуальных машин предлагает сразу указать установочный образ операционной системы, с которого и попытается запуститься виртуальная машина. Поэтому лучше заранее озаботиться этими образами, чтобы они были доступны установленному окружению Proxmox.
Копирование установочного iso — образа из интернет с помощью веб-интерфейса.
Посмотреть, какие iso-образы уже есть, а также, используя кнопку «Загрузить по URL-адресу», загрузить новый из интернета можно на страничке локального хранилища. На скрине ниже нажата эта кнопка и в появившемся окне введена ссылка для скачивания полного образа операционной системы «Альт Рабочая станция К» с сайта компании Базальт https://www.basealt.ru/alt-workstation-k/download. Ссылка на полный образ https://download.basealt.ru/pub/distributions/ALTLinux/p10/images/kworkstation/alt-kworkstation-10.3-install-x86_64.iso, также указано заполненное значение «имя файла»:
Грузим установочный образ «Альт Рабочая станция К»
Осталось только нажать кнопку «Загрузка». После нажатия начнется загрузка файла. Через некоторое время файл будет загружен, о чем будет сообщение «TASK OK» в последней строке, а файл образа появится в списке ISO-образов. Окно закрывается крестиком справа вверху, так же как в Windows:
ISO — образ успешно загрузился в локальное хранилище
Копирование установочного iso — образа с USB-накопителя без веб-интерфейса.
Установочный образ «Windows 10 Pro» у меня есть на внешнем диске, подключаемом по USB. Для его помещения в нужное место локального хранилища можно воспользоваться следующей последовательностью действий. То же самое сработает и с обычной флэшкой. Подключаем к USB входу компьютера диск/флэшку. После чего графическая оболочка тут же выведет окно для ввода пароля пользователя root, который вводим и жмём «OK»:
Авторизация суперпользователем при подключении USB-накопителя
Следом появится следующее окно, где тоже жмем «OK»:
Открываем подключенный USB-накопитель в файловом менеджере оболочки lxde для того, чтобы узнать, куда он примонтируется.
После чего откроется окно файлового менеджера с содержимым подключенного накопителя, а так же будет сразу видно адрес монтирования устройства в файловую систему Линукс:
Видно адрес монтирования подключенного устройства в файловой системе линукс.
После чего можно запустить терминал:
Путь для запуска терминала
В открывшемся терминале получить права суперпользователя командой «su -», затем запустить «Midnight Commander» командой «mc»:
Получаем права суперпользователя и запускаем панельный файловый менеджер «Midnight Commander». Осталось только нажать ENTER.
Почему обязательно с минусом
Если Вы не опытный пользователь АльтЛинукс, рекомендую сразу привыкать так, а то использование просто «su» без минуса получает права какого-то неполноценного суперпользователя. Подробнее читайте по ссылке: https://www.altlinux.org/Su
Если терминал слишком мелок или слишком крупен
Браузер легко масштабируется клавишами «CTRL» и »+» или «CTRL» и »-» в любом сочетании клавиш (»+»,»-» как с цифровой, так и с основной, CTRL как левый так и правый).
Терминал цифровую клавиатуру игнорирует, работает только »+», который расположен рядом с клавишей »=». Или можно воспользоваться меню: «Правка» → «Приблизить».
Со старым BIOS у меня графическая оболочка загружалась в слишком маленьком разрешении. Всё было слишком крупным. После обновления BIOS до последней версии графическая оболочка стала запускаться в максимально возможном разрешении, в данном случае 4К. Стало, наоборот, всё слишком мелким.
С помощью «Midnight Commander» копируем файл в хранилище. Для этого в левой панели выбираем файл из USB-накопителя, в правой выбираем локальное хранилище »/var/lib/vz», в котором iso — образы хранятся по вложенному пути »/template/iso». Т.е. полный путь получается:»/var/lib/vz/template/iso». Копирование вызывается клавишей F5:
Для начала копирования файла осталось нажать ENTER
Создаем папку для сетевого доступа.
Очень удобным оказалось использование на сервере папки общего доступа для обмена файлами. Конечно, есть встроенные средства гипервизора, позволяющие расшарить папку для виртуальной машины. Но по предыдущему опыту работы ещё с «Connectix Virtual PC » и «VirtualBox», когда такая папка работала нестабильно, решил сразу использовать сетевой доступ.
«Raw», а не «qcow2»
Также выяснилось ещё одно обстоятельство. Почти во всех инструкциях по Proxmox рекомендуется выбирать формат устройства накопления как «Формат образа QEMU (qcow2)». Но решив скопировать как-то файл этого формата от виртуальной машины с ОС Windows 10 Pro очень удивился его размеру. Он оказался даже немного больше максимально указанного размера диска для виртуальной машины. Т.е. файл весил немного более 320 гигабайт, хотя из виртуальной машины размер всего диска = 300 Гб, а внутри занятого места было всего 70 Гигабайт, остальные же 250 Гб как-бы пустое место. Оказывается, надо удалять какие-то не используемые нули и операционные системы Windows по-умолчанию этого делать не умеет, в отличии от Линукс. Если интересуют подробности, поищите в интернете. На данный момент хорошим решением мне кажется такой вариант: использовать для виртуальной машины относительно небольшой диск формата «Несжатый образ диска (raw)», тем более, что он ещё и работает быстрее, и подключать при старте ОС сетевую «расшаренную» папку сервера для больших файлов. Например, я туда установил HD клиента игры WorldOfTanks и она нормально оттуда работает в АльЛинуксе из под PortProtona. Получилось 70 Гигабайт:
![81ed72611b42689a7518f8574ff32298.png](https://habrastorage.org/r/w1560/getpro/habr/upload_files/81e/d72/611/81ed72611b42689a7518f8574ff32298.png)
Следует иметь ввиду, что из-за использования такого формата диска снапшоты виртуальной машины делать не получиться. Но я их и не использую. Тоже сказывается опыт с VirtualBox. Удобнее оказалось держать эталонную виртуальную машину, в которой установлена только одна «голая» операционная система. А потом копированием создавать новые виртуальные машины и экспериментировать.
Для доступа к сетевой папке сервера с компьютеров и виртуальных машин с установленной операционной системой из семейства Линукс на сервер требуется установить программное обеспечение «NFS сервер», для машин с ОС Виндовс необходим сервер «Samba». У меня такая папка называется «NET» и одна эта папка «расшаривается» по сети обоими сервисами и NFS и Samba. Подробнее см. серверную часть в мини-инструкции по ссылке: Alt Linux Сервер Виртуализации. Как создать общую папку для виртуальных машин Линукс и Виндовс.
Также, практически во всех инструкциях по пробросу видео в виртуальные машины рекомендуется сразу не пробрасывать оборудование. Сначала сделать виртуальную машину с видеокартой по умолчанию, затем установить на неё операционную систему. После этого пробросить видеокарту, причем, пока не отключая видео по-умолчанию. Затем установить драйвера на проброшенную видеокарту. Только после установки ОС и всех драйверов отключать типовое видео от гипервизора, выставлять «Основной графический процессор» на пробрасываемом оборудовании и запускать виртуальную машину. Таким способом, действительно, удобнее и быстрее всё устанавливать, но при одном существенно условии: если вы действительно уверены в способности вашего оборудования проброситься в виртуальную машину. А так очень обидно, провозившись с установкой ОС и драйверами в конце любоваться черным экраном монитора. Поэтому предлагаю сразу сделать проброс и уже в виртуальной машине с проброшенным оборудованием устанавливать операционную систему и драйвера.
Создание виртуальной машины с ОС «Альт Рабочая Станция К 10».
В веб-интерфейсе гипервизора нажимаем кнопку «Создать ВМ». В появившемся окне указываем идентификатор виртуальной машины (VM ID), так будет называться файл настроек виртуальной машины. Заполняем «Имя» — оно будет отображено в списке в скобках после ID и нажимаем далее. У меня заполнено как »100» и «AltKDE-dGPU-NVIDIA»:
Мастер создания виртуальных машин. Указываем ID и имя ВМ.
Далее нужно выбрать вид гостевой операционной системы и указать загрузочный ISO — образ. В данном случае, гостевой ОС оставлено значение по умолчанию, а образом указан скачанный ISO-файл установки дистрибутива «Альт Рабочая станция К»:
Мастер создания виртуальных машин. Указываем операционную систему и загрузочный ISO.
В следующей вкладке «Система» выбираем для видеокарты значение «Нет»; Машина выставляем «q35»; BIOS указываем «OVMF (UEFI)»; Для Хранилище EFI указываем «local». Остальное оставляем по умолчанию и жмем «Далее»:
Во вкладке «Диски»: указываем размер »100» Гб; меняем формат на «Несжатый образ диска (raw)»; если у вас диск SSD, то рекомендуется включить флажок «Эмуляция SSD». По умолчанию его не видно, поэтому, для его отображения необходимо выставить флажок «Дополнительно», расположенный внизу, слева от кнопок:
Мастер создания виртуальных машин. Настраиваем диск.
В следующей вкладке «Процессор» выделяем 4 ядра и, в данном случае, рекомендуется выставить флажок «Включить NUMA». Остальное оставляем по умолчанию:
Мастер создания виртуальных машин. Настройки процессора.
Почему именно 4 ядра
Оказывается, для работы видеокарты требуются существенные мощности процессора. В моей конфигурации менее 4-х ядер для этой видеокарты недостаточно. Первоначально я выделил 1–2 ядра и попробовал протестировать графику в виртуальной машине при первых удачных пробросах видео. Для этого использовал игру WorldOfTanks. FPS игры в виртуалке с 2 ядрами было, прямо скажем, довольно удручающим. Потом выставил 10 и получилось совсем другое дело. Таким образом постепенно уменьшая количество ядер, экспериментально установлен минимум в четыре ядра. На других конфигурациях, естественно, количество ядер процессора для работы видеокарты может быть другим. Точное количество ядер можно будет установить опытным путем. Причем следует иметь ввиду, что ядра центрального процессора не будут загружены под 100% в любом случае. Т.е., к примеру, выделено 2 ядра — диспетчер показывает, что они загружены на 30%, а FPS — жалок.
Про NUMA
Из того, что усвоил про этот флажок на просторах интернета: для гостевых машин Линукс рекомендуется включать, так как оно работает надежно, а для Виндовс не включать, так как работает не надежно и может привести к краху виртуальных машин, а то и всего гипервизора. Пока такой алгоритм не подводил.
В следующей вкладке «Память» выделяем для виртуальной машины оперативную память в мегабайтах. В данном случае выделено 32 тысячи. С флажком «Раздувание памяти» так же как и для «NUMA»: для гостей Линукс включаем; для гостей Виндовс — выключаем:
Мастер создания виртуальных машин. Настройки памяти.
В следующей вкладке «Сеть» всё оставляем по умолчанию и просто жмём кнопку «Далее»:
Мастер создания виртуальных машин. Сеть.
Мастер создания виртуальных машин.В следующей вкладке «Подтверждение» просто жмем кнопку «Готово»:
Мастер создания виртуальных машин. Последняя вкладка.
Теперь добавим пробрасываемые в виртуальную машину устройства. Для этого в списке слева выбираем созданную ВМ, щелкаем «Оборудование», затем кнопку «Добавить» и в раскрываемом списке выбираем «Устройство PCI»:
Приступаем к пробрасыванию устройств.
В появившемся окне необходимо выбрать из раскрываемого списка устройство:
В данном случае выбираем видеокарту RTX 4070 Ti:
Выбор видеокарты
После выбора выставляем флажки «Основной графический процессор» и «PCI-Express», остальные реквизиты оставляем по умолчанию и жмем кнопку «Добавить»:
Флажки «Основной графический процессор» и «PCI-Express»
Следом добавляем устройство звука видеокарты. Оно в той же группе IOMMU (в данном случае устройства 0000:01:00.x, группа IOMMU = 12), поэтому его тоже следует пробросить. Здесь уже никаких флажков выставлять не нужно, т.е. все реквизиты оставляем по умолчанию:
Звуковое устройство видеокарты. Оно в той же группе IOMMU (12: 01:00: xx), что и видеокарта.
Для звука всё оставляем по умолчанию. Просто жмём кнопку «Добавить»
Про группы IOMMU
Во всех инструкциях указано, что в виртуальную машину необходимо пробрасывать все, без исключения, устройства одной группы IOMMU. И для видеокарт это всегда сама видеокарта и её звук. Но я лично не перепроверял, т.е. не пробовал пробрасывать только видео, а звук не пробрасывать: в данном аспекте положившись на инструкции.
Также следует отметить, что все устройства группы IOMMU пробрасываются, если в любом устройстве включить флажок «Все функции». Тогда каждое не придется выбирать по отдельности. Но тогда и в списке оборудования будет одна строка. Мне кажется удобнее, когда строки две. Поэтому делаю так.
Следом следует в виртуальную машину пробросить клавиатуру и мышь. Я для виртуальных машин использую беспроводной комплект, где у клавиатуры и мыши один USB адаптер. Поэтому: «Оборудование» — > «Добавить» → «USB-устройство»:
USB
Здесь задействован пункт «Использовать USB-порт», а не «Использовать USB-устройство по номеру» только из-за того, что в списке оборудования USB устройства будут отображены в виде порта устройства, а не буквенно-цифровой номер устройства. Ранее пробовал оба варианта: оба работают прекрасно, никаких проблем никогда не возникало, остановился на таком варианте:
Проброс USB-адаптера комплекта беспроводных клавиатуры+мышь
Использую беспроводные Bluetooth наушники, поэтому для них пробрасываю и блютус свисток. На скрине выше — это следующее устройство с портом 1–3.
Так выглядит скрин списка оборудования:
Общий список оборудования виртуальной машины.
Файлы настроек хранятся в папке:
/etc/pve/qemu-server/
Содержимое файла »100.conf», в котором гипервизор хранит настройки только что созданной виртуальной машины:
bios: ovmf
boot: order=scsi0;sata2;net0
cores: 4
efidisk0: local:100/vm-100-disk-0.qcow2,efitype=4m,pre-enrolled-keys=1,size=528K
hostpci0: 0000:01:00.0,pcie=1,x-vga=1
hostpci1: 0000:01:00.1
machine: q35
memory: 32000
meta: creation-qemu=7.2.0,ctime=1721016361
name: AltKDE-dGPU-NVIDIA
net0: virtio=82:9A:B1:8D:E1:84,bridge=vmbr0,firewall=1
numa: 1
ostype: l26
sata2: local:iso/alt-kworkstation-10.2.1-install-x86_64.iso,media=cdrom,size=7202536K
scsi0: local:100/vm-100-disk-1.raw,iothread=1,size=100G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=6cdb7bbc-f486-4842-a737-73575f8fbcc1
sockets: 1
usb0: host=1-11
usb1: host=1-3
vga: none
vmgenid: 96d751a9-dc97-40df-be5b-bc0151525018
Виртуальная машина готова, можно запускать кнопкой «Запуск» из веб интерфейса.
Создание виртуальной машины с ОС «Windows 10 Pro».
Для Widows 10 требуется комплект драйверов VirtIO. Последнюю стабильную версию можно скачать по ссылке: Скачать последнюю стабильную версию. Ссылка на документацию от Proxmox: Драйверы Windows VirtIO. Копируем ссылку на ISO и скачиваем в хранилище гипервизора также как и дистрибутив «Альт Рабочая станция К».
По настройкам виртуальной машины всё почти то же самое. Ниже ряд скриншотов, на которых выделено важное, где требуется изменить значение по умолчанию или обратить внимание:
Вкладка «Общее»
Вкладка «ОС»
Вкладка «Система»
В отличии от Линукс, установщик Виндовс скорее всего, не увидит «Шина/устройство» = «SCSI virtio», потому мастер сразу подставит «IDE». Потом, после установки Виндовс и драйверов VirtIO на неё вроде бы можно и поменять, я сразу ставлю «SATA», остальное, как и для Линукс машины:
Вкладка «Диски»
Не включайте NUMA для Виндовс:
Вкладка «Процессор»
Отключите «Раздувание памяти» для Виндовс?
Вкладка «Память»
Установите сразу такую модель сетевого адаптера. После установки ОС пока не установите драйвера VirtIO сети не будет, зато оно, как пишут, очень быстро работает, если обмен происходит между виртуальными машинами одного хоста или между виртуальной машиной и гипервизором, т.е. если нет нужды использовать реальную сеть. В инструкциях обычно рекомендуют оставлять по умолчанию, чтобы сразу после установки Виндовс была сеть, а потом изменять модель. Я обычно забываю, потому выставляю сразу.
Вкладка «Сеть»
Точно так же, как и для Линукс пробрасывается видеокарта со своим звуком и USB устройства.
Про важность флажка «PCI-Express» для Виндовс
Следует отметить, что я сразу упустил про этот флажок при создании обоих виртуальных машин во время написания статьи. Поэтому в Виндовс столкнулся с тем, что после установки драйверов второй монитор так и не опознался, а в диспетчере устройств на видеоадаптере написано про отключение устройства из-за ошибки »43». После того, как установил флажок «PCI-Express» всё стало в порядке. Альт Линукс же, по ощущениям, про данный флажок вовсе не в курсе, так как разницы незаметно, что при выключенном, что при включенном флажке.
Содержимое файла настроек этой виртульной машины »101.conf»
balloon: 0
bios: ovmf
boot: order=sata0;sata2;net0
cores: 4
efidisk0: local:101/vm-101-disk-0.qcow2,efitype=4m,pre-enrolled-keys=1,size=528K
hostpci0: 0000:01:00.0,pcie=1,x-vga=1
hostpci1: 0000:01:00.1
machine: pc-q35-7.2
memory: 32000
meta: creation-qemu=7.2.0,ctime=1721017380
name: Win10Pro-dGPU-NVIDIA
net0: virtio=DA:E4:60:45:D3:1A,bridge=vmbr0,firewall=1
numa: 0
ostype: win10
sata0: local:101/vm-101-disk-1.raw,size=100G,ssd=1
sata2: local:iso/Win10-old.iso,media=cdrom,size=4326976K
scsihw: virtio-scsi-single
smbios1: uuid=82279b1b-6398-4976-842e-595fb67da09b
sockets: 1
usb0: host=1-11
usb1: host=1-3
vga: none
vmgenid: 80c547a9-ea7d-484d-ae8e-2dcb29ca819a
Виртуальная машина готова, можно запускать, подключать мониторы и приступать к установке операционной системы.
Подключаете монитор к проброшенной видеокарте и через несколько томительных секунд ожидания после запуска на мониторе должна появиться заставка Альт Линукса. Примерно такая:
Фото заставки старта виртуальной машины с монитором, подключенным к проброшенной видеокарте.
У меня это может быть секунд 10–15. На просторах интернета некоторые экспериментаторы пишут даже о двух минутах ожидания. Если черный экран так и остался черным, значит, вам не повезло. Придется изучать тему более углубленно.
После установки операционной системы на виртуальную машину
Описание установок Линукс и Виндовс в виртуальные машины находится за рамками этой статьи. Всё делается в точности так, словно установка происходит на реальном железе.
В настоящее время дистрибутив «Альт Рабочая станция К» сам всё установит, сразу все драйвера встанут, что очень приятно.
Как было плохо совсем недавно и как удобно стало сегодня.
Когда 1,5 года назад, только приобрел компьютер на новом AM5-ом сокете много чего не работало. Ни блютус свисток, ни мониторы в нужном разрешении. После того, как помучившись с настройками xrandr — ом удалось выставить разрешение: начались глюки и тормоза. Оказалось, что глюки и тормоза исчезают, если оставлять только один монитор. Т.е. или два монитора в непонятном разрешении или один монитор в родном, нормальном разрешении, а иначе пользоваться компьютером невозможно.
Для Windows же, после установки операционной системы, первым делом следует установить драйвера VirtIO. Можно даже не выключая виртуальную машину поменять ISO образ, вместо установочного файла Windows указать скачанный ISO с VirtIO. И он тут же отобразиться в проводнике виртуальной машины:
Выбираем диск с драйверами VirtIO
В проводнике Windows находим файл «Virtio-win-guest-tools.exe» и запускаем его. Он всё установит:
Затем нужно скачать драйвера NVIDIA и установить их. Причем, во всех инструкциях рекомендуют ставить только драйвер, не устанавливая дополнительное программное обеспечение типа приложения NVIDIA Express. Здесь я тоже не экспериментировал, положившись на чужой опыт.
После того, как всё у вас заработает, можно выставить настройку для автоматического запуска виртуальной машины. За это отвечает флажок «Запуск при загрузке» во вкладке «Параметры» конкретной виртуальной машины:
Включение автоматического запуска виртуальной машины после включения компьютера
Следует иметь ввиду, что в один момент времени может работать только одна виртуальная машина, в которую осуществлен проброс реального оборудования. Те же виртуальные машины, в которые нет проброса оборудования, могут работать одновременно, лишь бы хватило ресурсов хоста.
Также рекомендуется включать флажок «QEMU Guest Agent» там же, чуть ниже. Файл «Virtio-win-guest-tools.exe» установит агента на машину с Windows. На «Альт Рабочая станция К» он устанавливается автоматически.
Некоторые заметки:
Удалить виртуальную машину можно кнопкой в интерфейсе справа, через подменю «Дополнительно»:
Здесь можно удалить виртуальную машину
Радикальное средство освобождения видео адаптера для виртуальной машины, если он захвачен гипервизором.
Ещё раз про мониторы. У меня два монитора. Один подключен только к дискретной видеокарте кабелем DisplayPort, он должен быть выключен при включении компьютера. Второй монитор подключен кабелем DisplayPort к дискретной видеокарте и, также, подключен вторым кабелем HDMI к интегрированной видеокарте. При включении компьютера на мониторе должен быть настроен вывод с HDMI. Чтобы гипервизор при включении компьютера стал выдавать видеопоток именно через интегрированную в процессор видеокарту. Если видео пошло через другой видеоадаптер, тот, который планируется пробросить в виртуальную машину: ничего не получиться. Причем ошибок при старте виртуальной машины не будет, но и вывода на монитор не будет. И никакие настройки из тех, что я пробовал, не помогают. Имею ввиду про: /etc/default/grub, /etc/modprobe.d/blacklist.conf, /etc/modprobe.d/vfio.conf, найденные в многочисленных инструкциях на просторах интернета. Но, если очень-очень надо, может помочь одно радикальное средство, а именно — удаление устройств, затем сканирование имеющегося оборудования. В данном случае, на мониторе вовсе ничего не будет, потому следует тут же запускать и виртуальную машину. Т.е. можно создать скрипт, поместить его в папку суперпользователя и из под root-а запускать. Содержимое скрипта для моего оборудования:
#!/bin/bash
echo "1" > /sys/bus/pci/devices/0000:01:00.1/remove
echo "1" > /sys/bus/pci/devices/0000:01:00.0/remove
sleep 1
echo "1" > /sys/bus/pci/rescan
sleep 5
qm start 100
Последняя строчка здесь запускает виртуальную машину с ид = 100.
Про копировать — вставить в Линукс.
В терминале не срабатывают комбинации клавиш «Ctrl+C», «CTRL+V». Но в браузере они отлично работают. Зато и там и там срабатывают комбинации «CTRL+Insert» и «SHIFT+Insert». Так и повелось. Левой рукой «CTRL+C» в браузере, затем в терминале: CTRL+V, которое ни какого эффекта не дает, чертыхнувшись про себя, жмём правый «SHIFT+Insert».
Про команду «update-initramfs»
АльтЛинукс не умеет в команду «update-initramfs», вместо неё можно использовать:
make-initrd --kernel=`uname -r`
Посмотреть текущую версию ядра:
uname -r
Про проблемы
Очень я подозреваю, что во всем виновато обновление БИОС, но не факт. Вроде бы до обновления не замечал таких проблем.
Периодически бывает, что из гипервизора пропадают устройства PCI, как раз те, что пробрасываются. Соответственно, виртуальная машина не стартует, ругаясь на отсутствие устройств. Помогает перезагрузка хоста. Как правило, такое возникает после всяких экспериментов, приводящих к краху виртуальных машин, а то и к перезагрузке хоста, но не каждый раз. Т.е. после аварийной перезагрузки и неудачной попытки запуска виртуальной машины иногда требуется повторная перезагрузка компьютера. Обычно раз в неделю на выходных. Когда же просто работаю, то такого и не бывает.
Также иногда обнаруживаю, что вместо 1Гигабита скорость интернета упала до 100 Мегабит. Тоже отправляю хост в перезагрузку и, пока он грузится, переподключаю патчкорд и у розетки и у компа. Такое обнаруживается примерно раз в месяц.