Как включить поддержку RemoteFX vGPU в Hyper-V
- Категория: Сетевой Администратор
Полезная функция, которая была представлена не так давно для Windows 10, теперь отключена. Функция RemoteFX vGPU позволяет пользователям виртуальных машин (ВМ) под управлением Windows Server 2008 R2, Server 2012, Server 2016 и Windows 10 под управлением Hyper-V использовать физический графический процессор (GPU) хост-компьютера для визуализации своей графики. выход.
Что касается самого последнего обновления Microsoft для Windows 10, KB4571757, Microsoft решила прекратить поддержку этой функции из-за критической уязвимости, обнаруженной в Remote Code Execution.
Давайте подробно рассмотрим эту функцию, почему она была прекращена и сможем ли мы найти способ, чтобы она по-прежнему работала. Краткое резюме Спрятать 1 Что такое RemoteFX vGPU? 2 Почему Microsoft удалила функцию RemoteFX vGPU? 3 Как включить RemoteFX vGPU на Hyper-V, работающем в Windows 10 4 Альтернатива RemoteFX vGPU 4.1 Настройте виртуальную машину для DDA 4.2 Отсоедините графический процессор от главного компьютера. 4.3 Назначьте графический процессор виртуальной машине 5 Заключительные слова
Что такое RemoteFX vGPU?
Виртуальные машины, работающие на Hyper-V, могут использовать физический графический процессор на главном компьютере для выполнения своих задач, касающихся рендеринга видео и обработки изображений, с помощью функции RemoteFX vGPU. Это позволяет пользователям снимать нагрузку с процессора и выполнять интенсивную обработку изображений на своих виртуальных машинах с использованием общего графического процессора.
Благодаря этой функции выделенный графический процессор для каждой виртуальной машины не требуется и одновременно обеспечивает повышенную масштабируемость и удобство использования графического процессора, а также виртуальных машин. Направляйтесь к Веб-страница Microsoft чтобы узнать больше об этой функции.
Почему Microsoft удалила функцию RemoteFX vGPU?
Хотя функция RemoteFX vGPU устарела, поскольку она была представлена в Windows 7, в настоящее время она используется хакерами для выполнения удаленных команд на главном компьютере. Эта функция не может аутентифицировать ввод действительного пользователя на виртуальной машине. Хакер может использовать эту уязвимость для запуска измененных приложений на виртуальной машине, чтобы использовать драйверы графического процессора хоста и получить доступ. Получив доступ к главному компьютеру, они могут выполнять удаленные команды и сценарии.
Хотя Microsoft устраняет такие уязвимости с помощью своих регулярных обновлений, им не удалось этого сделать, поскольку недостаток является архитектурным.
Microsoft начала удалять эту функцию для разных версий ОС еще в июле 2020 года. Однако накопительное обновление Windows 10 за сентябрь 2020 года отключило эту функцию во всех выпусках Windows 10 версии 2004.
Microsoft заявляет, что пользователи по-прежнему смогут повторно включить эту функцию до февраля 2021 года с помощью специальных команд, но им следует начать работу над альтернативными методами, которые будут обсуждаться ниже в статье. Вот уведомление Microsoft об отключении RemoteFX vGPU .
Как включить RemoteFX vGPU на Hyper-V, работающем в Windows 10
Хотя Microsoft выделила серым цветом функцию включения RemoteFX vGPU через Hyper-V в Windows 10, ее по-прежнему можно включить с помощью команды с помощью PowerShell. Более того, параметры групповой политики по-прежнему присутствуют в гостевых операционных системах (виртуальных машинах), которые можно использовать для включения функции на виртуальной машине, как и раньше.
- Сначала включите виртуальную машину, на которой вы хотите настроить эту функцию, и откройте редактор групповой политики, набрав gpedit.msc в Run.
- в Редактор групповой политики , перейдите к следующему на левой панели:
- Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленного рабочего стола -> Узел сеанса удаленного рабочего стола -> Среда удаленного сеанса -> RemoteFX для Windows Server
- На правой панели дважды щелкните Настроить RemoteFX .
- в Настроить RemoteFX в окне свойств выберите Включено , а затем щелкните Подать заявление а также Ok .
- Теперь откройте командную строку и введите gpupdate / force для обновления групповых политик.
- Загрузите и установите рекомендуемый драйвер графического процессора в соответствии с вашим физическим графическим процессором. Вот подробный обзор Графические процессоры и как ими управлять .
- Теперь выключите виртуальную машину и вернитесь на хост-компьютер с Hyper-V.
- Поскольку Видеоадаптер RemoteFX 3D в настройках ВМ выделена серым цветом, включим через PowerShell. Запустите PowerShell с правами администратора. Вот полное руководство о том, как всегда запускать PowerShell в административном режиме.
- Введите следующую команду, заменив (name) именем вашей виртуальной машины:
Add-VMRemoteFX3dVideoAdapter -VMName (name)
- Теперь откройте настройки виртуальной машины через панель управления Hyper-V, и вы найдете Видеоадаптер RemoteFX ED под Процессор таб. Щелкните по нему и настройте его в соответствии с вашими потребностями.
Теперь вы можете запустить виртуальную машину и подключиться к ней, и теперь она будет использовать графический процессор хоста для обработки своей рабочей нагрузки. Вы также можете настроить несколько виртуальных машин для работы на общем физическом графическом процессоре.
Альтернатива RemoteFX vGPU
Microsoft планирует окончательно удалить эту функцию к февралю 2021 года. Однако они не оставили своих пользователей в затруднительном положении. Microsoft также предложила альтернативное решение для прямого подключения физического графического процессора через порт PCIe к виртуальной машине через Назначение дискретных устройств (DDA).
Этот метод состоит из трех этапов, которые необходимо выполнить, чтобы предоставить виртуальной машине выделенный графический процессор:
- Настройте виртуальную машину для DDA
- Отсоедините графический процессор от главного компьютера.
- Назначьте графический процессор виртуальной машине
Настройте виртуальную машину для DDA
На главном компьютере выполните одну за другой следующие команды, чтобы настроить его параметры. Замените (name) на имя виртуальной машины:
Set-VM -Name (name) -AutomaticStopAction TurnOff
Set-VM -GuestControlledCacheTypes $true -VMName (name)
Set-VM -LowMemoryMappedIoSpace 3Gb -VMName (name)
Set-VM -HighMemoryMappedIoSpace 33280Mb -VMName (name)
Отсоедините графический процессор от главного компьютера.
Во-первых, вам нужно отключить графический процессор на порту PCIe, а затем отключить его. Но перед этим вам понадобится физический адрес порта. Это можно определить, выполнив следующие действия:
- Перейдите в диспетчер устройств, набрав devmgmt.msc в строке «Выполнить».
- Теперь разверните Display Adapters и щелкните правой кнопкой мыши GPU. Выберите «Свойства» в контекстном меню.
- Перейдите на вкладку Details и выберите Location Paths в раскрывающемся меню в разделе Property.
- Обратите внимание, что запись начинается с PCIROOT, так как это потребуется при отключении графического процессора от хост-устройства.
Теперь выполните следующие действия, чтобы разобрать устройство:
- Направляйтесь к Характеристики окно графического процессора из Диспетчер устройств .
- Перейти к Водитель вкладка, а затем нажмите Запрещать устройство .
Теперь, когда устройство отключено, вам нужно его разобрать.
Введите следующую команду в командной строке: Dismount-VMHostAssignableDevice -force -LocationPath $(LocationPath)
Замените (LocationPath) на путь PCIe, который вы указали ранее.
После этого вы можете переходить к следующему этапу.
Назначьте графический процессор виртуальной машине
Теперь все, что вам нужно сделать, это запрограммировать Hyper-V, чтобы указанная виртуальная машина могла использовать физический графический процессор. Это можно сделать, выполнив следующую команду в командной строке: Add-VMAssignableDevice -LocationPath $locationPath -VMName (name)
Замените (имя) именем виртуальной машины.
Теперь вы можете запустить гостевую операционную систему и увидеть, что видеоадаптер, который она сейчас использует, будет физическим на вашем главном компьютере.
Если в любой момент вы захотите вернуть графический процессор обратно на хост-устройство, просто выполните следующие две команды в том же порядке, одну за другой, в командной строке, заменив (name) на имя виртуальной машины: Remove-VMAssignableDevice -LocationPath $locationPath -VMName VMName
Mount-VMHostAssignableDevice -LocationPath $locationPath
Заключительные слова
В версии 2004 года виртуальный графический процессор RemoteFX не был широко распространен. Тем не менее, людям понравилась его идея. Увидеть это может быть не так сложно, как ожидалось, если не учитывать фактор стоимости.
Хотя Microsoft предоставила альтернативу использованию выделенных графических процессоров для каждой виртуальной машины, было бы не идеально размещать на материнской плате главного компьютера столько же графических процессоров, сколько виртуальных машин. Затраты были бы слишком высоки, а энергопотребление не было бы идеальным.
Microsoft необходимо найти обходной путь для решения этой проблемы, поскольку предоставленное решение не подходит для большинства пользователей.