Автор Тема: Сервер виртуализации 10.1. Проброс видео в ВМ Win10. Получилось с оговорками.  (Прочитано 446 раз)

Оффлайн Onwardv

  • Давно тут
  • **
  • Сообщений: 50
Попробую кратко, но отмечу пару моментов. Возможно, кому-то пригодится.
Долго и безуспешно по различным инструкциям из интернета пробовал сделать проброс видеокарты в виртуальную машину.
Максимум, что удалось - получить ошибку при старте виртуальной машины:
Failed to mmap 0000:01:00.0 BAR 1. Performance may be slow.

Это про дискретную видеокарту (у меня nvidia). Но в самой виртуальной машине видеокарта нвидиа опознавалась, поначалу с известной ошибкой 43. От ошибки 43 избавиться удалось.
Интернет подсказал, что что-то всё таки успевает захватить ресурс видеокарты, потому она и не пробрасывается.

В списке устройств для проброса интегрированная видеокарта тоже опозналась (Raphael). Пробросил её вместо нвидиа. И запустил виртуальную машину.
Виртуальная машина запускается без ошибок. В журнале - "TASK OK". Но через пару минут Хост уходит в перезагрузку. Пробовал несколько раз, ошибок нет, но всегда  проброс видео рафаеля перезагружает хост.

В итоге заводится так:
1) Ставим АльтЛинукс сервер виртуализации. Никаких дополнительных параметров ядра, модулей и пр. настроек. Я выбирал установку только ProxMox. Для него надо сетевой мост настроить и полное имя компьютера указать. Важно, сама установка работает с видеокартой nvidia. Если использовать Raphael, то графическая оболочка установки не стартует.
2) Создаем виртуальную машину. Пока без проброса видео. Указываем процессор как "host", BIOS как "OVMF (UEFI)", Машина "pc-q35-7.2". Меняем модель сетевого устройства  на "VirtIO(паравиртуализовано)".  На хосте уже должны быть два образа, для ОС (у меня Win10Pro) и драйвера virtio под неё. У меня "virtio-win-0.1.229.iso".
Также я сразу добавил в файл настроек виртуальной машины 2 строчки для последующего обхода ошибки с кодом 43 для видеокарт nvidia:
cpu: host,hidden=1,flags=+pcid
args: -cpu 'host,+kvm_pv_unhalt,+kvm_pv_eoi,hv_vendor_id=NV43FIX,kvm=off'
Альт сервер хранит файлы настроек виртуальных машин по  адресу /etc/pve/qemu-server/.
У меня это файл 101.conf
Ставим виндовс, затем устанавливаем драйвера с другого ISO. Настраиваем сеть, убеждаемся, что есть интернет. Выключаем и ВМ и Хост.

2) В БИОС включаем интегрированную карту.

3) Надо добиться чтобы Хост запустился с выводом через интегрированное видео (Raphael). А уже потом подключать мониторы к пробрасываемой видеокарте nvidia  и запускать виртуальную машину. Если это удалось, теперь можно пробросить видеокарту через PCI устройства. И устанавливать драйвера от производителя на проброшенное устройство.

У меня мониторы с несколькими входами. Один монитор к компьютеру подключил двумя кабелями 1) DisplayPort, подключен к nvidia и 2) HDMI подключен к Raphael
Второй монитор подключен одним кабелем DisplayPort к nvidia.
У первого монитора в настройках монитора указываем источник HDMI.
Второй монитор надо выключить, даже если указать другой источник сигнала, то пробрасываемое изображение не появляется. Можно вытащить кабель.
Запускаем компьютер, затем стартуем виртуальную машину. После этого можно у первого монитора менять источник на DisplayPort, а второй монитор включать.

Важный момент, кабель, подключаемый к Raphael должен быть качественный. Иначе начинает стартовать nvidia и в дальнейшем проброс не удается. С этим моментом долго разбирался. Два кабеля HDMI оказались не подходящими, один даже совершенно новый, ни разу не пользованный, пришел с монитором. Только с третьим кабелем завелось. Хорошо, что монитор иногда помаргивал, явно указывая на проблему в передачи данных. Я уж думал, что порт на материнке поломался.

Проброс клавиатуры, мыши, и блютус свистка для музыки в виртуальную машину никаких проблем не вызвали. Даже беспроводной набор Клавиатура+мышь, что неожиданно приятно. Пробросились через "Добавить: USB-устройство" и "Использовать USB-устройство по номеру". Там в списке всё понятно.

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




Оффлайн Onwardv

  • Давно тут
  • **
  • Сообщений: 50
Используемое оборудование:
Материнская плата: Gigabyte B650M DS3H
Процессор: AMD Ryzen 5 7600X
ОЗУ: 128 ГБ
Видеокарта: Geforce RTX 4070 Ti
2 одинаковых монитора: Samsung 31,5 U32J590UQI

Оффлайн Onwardv

  • Давно тут
  • **
  • Сообщений: 50
Вопрос: как-то можно избавиться от манипуляций с мониторами?
Чтобы утром включил компьютер и через некоторое время оно само всё загрузилось и можно было сразу работать в виртуальной машине.
Незаметно для пользователя, что это виртуалка, а не ОС на железе.