Установка Integration Components в Hyper-V

Все об администрировании Windows NT/2000/2003/2008/2012 Server (в т.ч. R2) серверов. Групповые политики, домены, безопасность и пр. То, чего не найдешь в бескрайних просторах Интернета. Решения тех проблем, которые не решаются типовыми ответами, которые можно получить в техподдержке Майкрософта - а именно: переустановить продукт или купить какой-ть другой лицензионный диск.


Модератор: UncleFather

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1505
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Установка Integration Components в Hyper-V

Сообщение UncleFather »

Задача:

Имеется виртуальная машина Hyper-V и гостевая операционная система, для которой Integration Components не включены в состав Hyper-V и предоставляются не в виде iso образа, который можно смонтировать и установить компоненты, а в виде cab-файла.

Как интегрировать Integration Components из cab-файла в виртуальную машину Hyper-V.


Решение:

Скачиваем cab-файл с нужной версией Integration Components. Ссылки приведены в статье Hyper-V integration components update for Windows virtual machines

Можно интегрировать компоненты непосредственно в гостевой ОС. Для этого нужно от имени Администратора выполнить команду, указав путь до скачанного cab-файла:

Код: Выделить всё

Dism.exe /online /Add-Package /PackagePath:"c:\Distr\IntegrationComponents\windows6.x-hypervintegrationservices-x64.cab"

А можно интегрировать их на хосте Hyper-V. Для этого нужно завершить работу гостевой операционной системы на хосте Hyper-V и выполнить PowerShell команды от имени Администратора:
Указываем путь до скачанного cab-файла с Integration Components:

Код: Выделить всё

$integrationServicesCabPath="D:\Hyper-V\IntegrationServices\windows6.x-hypervintegrationservices-x64.cab"

Указываем виртуальный диск, на котором установлена операционная система, в которую нужно интегрировать компоненты:

Код: Выделить всё

$virtualHardDiskToUpdate="D:\Hyper-V\Virtual Hard Disks\WinServer2008R2_1.vhdx"

Монтируем в систему диски гостевой ОС:

Код: Выделить всё

$diskNo=(Mount-VHD -Path $virtualHardDiskToUpdate –Passthru).DiskNumber

Выбираем диск, на котором установлена гостевая операционная система:

Код: Выделить всё

$driveLetter = "F"

или

Код: Выделить всё

$driveLetter=(Get-Disk $diskNo | Get-Partition).DriveLetter

Проверяем статус диска, и если он отключен (offline), подключаем его (online):

Код: Выделить всё

if ((Get-Disk $diskNo).OperationalStatus -ne 'Online') {Set-Disk $MountedVHD.Number -IsOffline:$false -IsReadOnly:$false}

Интегрируем дистрибутив из cab-файла в гостевую ОС:

Код: Выделить всё

Add-WindowsPackage -PackagePath $integrationServicesCabPath -Path ($driveLetter+":")

При удачном выполнении система ответит:

Код: Выделить всё

Path          : F:
Online        : False
RestartNeeded : False
01.jpg

Размонтируем диски:

Код: Выделить всё

Dismount-VHD -Path $virtualHardDiskToUpdate

По материалам статей How to install integration services when the virtual machine is not running и Integration components available for virtual machines not connected to Windows Update


Alexander A. Manaeff©

Понравилась статья? Будем крайне признательны за репосты в соцсетях! Материально поддержать проект можно здесь

Мои странички:
ВКонтакте
Одноклассники
Youtube
Facebook
Instagram

Изображение
Изображение
Изображение
Изображение