Преобразование VHDX в VHD (Get-VHD и Convert-VHD не распознаются)

Я хотел преобразовать некоторые файлы VHDX в VHD, чтобы загрузить их в Microsoft Azure, поскольку мне нужно перенести некоторые серверы в облако для компании. Проблема в том, что мой сервер, похоже, не знает команд VHD в PowerShell.

Get-VHD : The term 'Get-VHD' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Get-VHD -Path * | %{Convert-VHD -Path $_.Path -DestinationPath ($_.Pa ...
+ ~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Get-VHD:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

а также

Convert-VHD -Path ".\VHDName.vhdx" -DestinationPath ".\VHDName.vhd"

Convert-VHD : The term 'Convert-VHD' is not recognized as the name of a cmdlet, function, script file, or operable
    program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
    At line:1 char:1
    + Convert-VHD -Path ".\Windows 8.1 x86 Update1 UpdatePack Upgrade.vhdx" ...
    + ~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (Convert-VHD:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException

У кого-нибудь есть идея, как это исправить? Не могу установить ни Hyper-V, ни VirtualBox. Сам сервер представляет собой виртуальную машину Windows 10 Technical Preview 3, размещенную в Azure. Версия Powershell — 5.0.10514.0.


person Daniel Steiner    schedule 26.10.2015    source источник
comment
Что вы имеете в виду, что Hyper-V не может быть установлен? Если у вас есть файл .vhdx, Hyper-V уже установлен.   -  person Panagiotis Kanavos    schedule 26.10.2015
comment
Неа. Файлы VHDX загружаются для дальнейшей обработки. Сценарий такой: есть сервер Hyper-V в офисе в Германии, я нахожусь в Австрии. Компания в Германии хочет перенести свои виртуальные машины в Azure, поэтому они загружают файлы VHDX на мой сервер, который я использую для преобразования дисков, а затем для создания виртуальных машин в Azure. Кроме того, сервер, на котором хранятся файлы VHDX, является гостем гипервизора Hyper-V (управляемого Microsoft).   -  person Daniel Steiner    schedule 26.10.2015
comment
Эта информация вообще не имеет отношения к вопросу. Если у вас есть виртуальная машина с файлами vhdx, у вас уже есть Hyper-V. Даже если вы используете настольный хост, технология по-прежнему остается Hyper-V. Команда Convert-VHD доступно в Windows 8 и окончательной первоначальной версии Windows 10, если они доступны на соответствующих серверах.   -  person Panagiotis Kanavos    schedule 26.10.2015
comment
Вы не пытаетесь преобразовать файл vhdx изнутри самой виртуальной машины?   -  person Panagiotis Kanavos    schedule 26.10.2015
comment
Нет, конечно нет. Файлы VHDX были загружены на виртуализированный сервер, где я не могу включить Hyper-V. команда Convert-VHD недоступна внутри этой виртуальной машины, поэтому я не могу преобразовать файлы. Поскольку мы говорим о нескольких файлах размером около 150 ГБ, я не хочу их повторно загружать.   -  person Daniel Steiner    schedule 26.10.2015


Ответы (2)


Какая версия powershell установлена ​​в вашей системе? Командлет Convert-VHD поддерживается только в PS V4. В противном случае, если по какой-либо причине ваш модуль PS для Hyper-V не установлен, вы можете скачать и импортировать модуль для Hyper-V по этой ссылке: http://pshyperv.codeplex.com/

person kekimian    schedule 26.10.2015
comment
Я использую PS V5.0.10514.0, и, поскольку это виртуальная машина в Hyper-V, я не могу установить Hyper-V. На данный момент я узнал, как установить модули, но теперь я получаю Convert-VHD: операция на компьютере «SVR» не удалась: недопустимый класс в строке: 1 char: 1 + Convert-VHD -Path .\ ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Convert-VHD], VirtualizationException + FullyQualifiedErrorId : Unspecified,Microsoft.Vhd.PowerShell.Cmdlets .ConvertVhd Любая идея? а - person Daniel Steiner; 26.10.2015

Вы также можете попробовать это с Virtualbox. Сначала откройте Powershell и перейдите в папку установки.

компакт-диск C:\Program Files\Oracle\VirtualBox

Тогда попробуй

.\VBoxManage.exe convertfromraw C:\Users\имя пользователя\ваш\путь\файл.VHDX C:\Users\имя пользователя\ваш\путь\файл.VHD --format VHD

person bjoern.stark    schedule 19.05.2021