Рейтинг:2

wbadmin — восстановление VHDX-файла без перезаписи хост-ВМ

флаг co

Мне нужно восстановить файл vhdx из резервной копии на сервере Windows 2019 Hyper-V Core с помощью командной строки. Это команда, которую я использую:

wbadmin start recovery -версия:12.10.2021-05:00 -itemType:hyperV -items:F3D...1E -recoveryTarget:C:\temp

Команда генерирует следующие предупреждения. После чего мне будет предложено продолжить восстановление или отменить его.

Предупреждение. Если виртуальная машина, которую вы пытаетесь восстановить, местоположение было скопировано с этого хоста, это удалит и перезапишет исходная виртуальная машина, если она все еще существует.

Вы выбрали восстановление приложения HyperV. Файлы для следующие компоненты будут восстановлены в C:\temp. Примечание: Восстановление файлы в альтернативное место без участия записи не будут восстановить приложение.

Предупреждение. Виртуальные машины могут не запуститься, если их сеть настройки другие после восстановления. После полного восстановления используйте Диспетчер Hyper-V для проверки сетевых настроек виртуальных машин. до того, как они будут запущены.

Я не хочу, чтобы операция восстановления удаляла и перезаписывала исходную виртуальную машину, как указано в предупреждении. Далее предупреждение кажется противоречивым.Сценарий, который я хотел бы воспроизвести, описан в примечании, поскольку я предполагаю, что «... без участия автора приложение не восстановит приложение», возможно, означает, что wbadmin, несмотря на свое предупреждение, не перезапишет виртуальную машину на хозяин. Я не могу найти информацию об этом в Интернете.

Кроме того, есть параметр [-alternateLocation] для команды восстановления запуска wbadmin, который плохо документирован. Кажется, он даже не включен в официальную онлайн-документацию Microsoft.

-alternateLocation Допустимо только при восстановлении HyperV в альтернативную цель восстановления.
                    Позволяет восстанавливать компоненты HyperV, обновлять конфигурацию и
                    регистрация виртуальной машины в службе управления Hyper-V.

Его использование немного меняет предупреждения, которые я получаю, а именно примечание опускается.

Предупреждение. Если виртуальная машина, которую вы пытаетесь восстановить, местоположение было скопировано с этого хоста, это удалит и перезапишет исходная виртуальная машина, если она все еще существует.

Вы выбрали восстановление приложения HyperV. Файлы для следующие компоненты будут восстановлены в C:\temp.

Предупреждение. Если виртуальная машина, которую вы пытаетесь восстановить, местоположение было скопировано с этого хоста, это удалит и перезапишет исходная виртуальная машина, если она все еще существует.

Предупреждение. Виртуальные машины могут не запуститься, если их сеть настройки другие после восстановления. После полного восстановления используйте Диспетчер Hyper-V для проверки сетевых настроек виртуальных машин. до того, как они будут запущены.

То, чего я хочу добиться, - это в основном «Копировать в файл», как это можно найти в версии с графическим интерфейсом (Windows Server Backup), и я подозреваю, что способ добиться этого — исключить параметр [-alternateLocation]. Я хотел бы посмотреть, может ли кто-нибудь подтвердить это, прежде чем я нажму на курок и выстрелю себе в ногу. Кстати, я говорю о рабочей виртуальной машине контроллера домена. Так что я не могу рисковать.

Рейтинг:1
флаг in

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

  • Сделай wbadmin показать версии и найдите GUID «идентификатора моментального снимка», который необходимо предоставить. Я рекомендую поместить это в буфер обмена.

  • Бег тень диска и в ДИСКОВАЯ ТЕНЬ> подсказка введите выставить {идентификатор снимка} x: где «x:» — это буква диска, под которым вы хотите открыть моментальный снимок. Буфер обмена здесь пригодится. обычно я ухожу тень диска работает и продолжите процесс (потому что он понадобится позже).

  • Используйте свой любимый метод для монтирования резервной копии VHDX с буквы диска, где вы открыли тень. Обычно я использую Powershell и делаю что-то вроде $x = Mount-VHD -Path <<VHDX PATH>> -ReadOnly -Passthru поэтому у меня есть данные о монтировании, сохраненные в переменной на потом.

  • Вы можете убедиться, что вновь смонтированному тому не была автоматически назначена буква диска в Powershell (при условии, что вы смонтировали диск, как я сделал выше) с помощью $z = Get-Disk -Number $x.Number | Получить раздел | Get-объем и $z чтобы увидеть, что было возвращено.

  • Вы можете назначить тому букву диска. Меня это разочаровывает в чистом Powershell, поэтому я делаю что-то вроде mountvol r: $z.UniqueId где «r:» — это буква диска, которую я хочу присвоить смонтированной резервной копии VHDX.

  • Наконец, выставив снимок и смонтировав резервную копию VHDX, вы можете получить доступ к тому через назначенную вами букву диска и скопировать нужный файл.

  • Чтобы разорвать все это, я бы сделал mountvol r: / r чтобы удалить букву диска из смонтированной резервной копии VHDX. Я бы размонтировал VHDX, используя $х | Dismount-VHD. Наконец, я бы вернулся к тень диска и сделать РАЗВЕРНУТЬ X: чтобы отменить экспонирование снимка. Это возвращает машину в то состояние, в котором я ее нашел.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.