Как восстановить виндовс на виртуальной машине

Обновлено: 02.07.2024

Хочу поделиться с вами опытом о том, что у меня отняло море времени — о бэкапах виртуальных машин и обычных компьютеров. Как сделать дешево и красиво.

Пожалуй, начну с того, что если вы хотите бэкапы на VMWare, то готовьтесь платить. Бесплатный VMWare — это бесплатно до тех, пока речь не идет о миграциях, бэкапах и тому подобное. На этом месте можно начать бесконечный холивар, но без моего участия. Мои повествования будут только о Hyper-V на Windows Server 2012R2. Хотя часть статьи можно применить и к VMWare, но, вероятно, будут подводные камни.

Бэкапить на Hyper-V мы можем бесплатно, а точнее, теми средствами Windows, за которые мы уже заплатили, приобретая лицензии Windows Server. Для удобства работы с нашими бэкапами (к тому же за это мы тоже заплатили) будем использовать WDS и дедупликацию (может и групповые политики).

1. Бэкап изнутри виртуальных машин

1.1. Бэкап сегодняшнего дня

Насколько мы знаем, любой Windows умеет делать бэкап. Причем, любые настройки бэкапа Windows через интерфейс сводятся, в конечном счете, к фоновому использованию утилиты wbadmin. А что, собственно, умеет wbadmin? А умеет она делать как бэкап образа с системным разделом, так и бэкап отдельных папок. В данной части статьи нас интересует только бэкап образ (системного раздела). Остальное — это специфичные данные виртуальных машин и бэкапить нужно отдельно. Отсюда вывод: Не храните на системном разделе виртуальных машин (и на обычных компьютерах тоже) никакой ценной информации и баз данных, отдельных приложений. MS SQL Server / MS Exchange / «Сервер приложений 1С» и другое ставим только на не системные разделы или на отдельные диски.

Итак, что же нужно, чтобы бэкап отработал? А нужна всего лишь одна команда:


На самом деле, для этой команды нужны особые права, но о них позже. Сейчас важно понять одну вещь. Данная команда делает не просто бэкап. Она делает инкрементальный бэкап. Причем, для серверных и настольных (клиентских) Windows бэкапы формируются разные. И разница заключается в том, что для серверных ОС у нас получатся снимки каждого бэкапа, а вот для настольных — снимок останется всегда только последний. Спросите, а что это за такой инкрементальный бэкап? А «инкрементальный» он остается, потому что бэкапим мы не весь образ, а только изменившуюся часть со времени последнего бэкапа (а значит и меньше трафика и быстрее создается бэкап).

Те, кто сталкивался с аналогичной ситуацией заметят, что бэкап всегда будет «инкрементальный» (полный). Так как бэкап происходит в нашем случае на сетевой диск. То есть для серверной Windows снимки остаются тоже только последние.

Позже, выявил, что нет никакой разницы в работе wbadmin на серверной и клиентской ОС. Разве, что разница есть в интерфейсе. wbadmin производит инкрементальный бэкап (кроме первого бэкапа), если указан жесткий диск в ключе -backupTarget (команда использует ключ по умолчанию -vssСopy). Или производит полный бэкап, если добавить ключ -vssFull.

1.2. Бэкап с историей предыдущих снимков

На данный момент, мы сделали бэкап образов виртуальных машин. Но это же у нас бэкап снимков только сегодняшнего дня. Завтра он будет совершенно другой… Но что будет, если бэкапить бэкапы? Да и ещё по-настоящему инкрементально. Так и поступим.


Но мне было этого недостаточно и я сделал так:


Скрипт подключает виртуальный диск из сети. После бэкапа подобный же скрипт отключает диск. ОС помнит, что у диска определена буква E. Но не дай бог подсунуть чужой диск с той же буквой E, бэкап отработает уже по полной (не инкрементально и на чужой диск). Имейте это в виду и используйте, букву, ближе к концу алфавита (X, Y, Z)…

Замечу сразу, если бэкап сегодняшний будет производиться параллельно с бэкапом с историей, то получим в итоге бэкап, который невозможно поднять.

Чтобы достать бэкап предыдущих дней можно воспользоваться интерфейсом (GUI) сервера, на котором производятся бэкапы с историей. Более того, все запуски команды wbadmin в консоли Windows знает и помнит. Служба восстановления даст возможность вам выбрать нужный архив в бэкапах с историей.

2. Бэкап файлов vhdx виртуальных машин

Производится легко и непринужденно:


Но с некоторыми особенностями. Эта команда должна выполняться в PowerShell и с предварительным получением списка виртуальных машин в переменную. За подробным примером обращаемся в Google.

Бэкап виртуальных машин в Windows Server 2012 R2 идет с помощью моментальных снимков Hyper-V. Также замечу, что происходят приостановка работы виртуальных машин, если на них ядро Linux или отсутствуют Hyper-V драйвера. Я лично отказался бэкапить виртуальные машины таким способом. Причина в том, что на Windows Server 2012 (не R2) требовалось останавливать виртуальные машины до бекапа. Да и сейчас на Windows Server 2012 R2 приостановки Linux меня не устраивают, когда есть первый неплохой способ бэкапа. (в комментариях к данной статье есть замечание). После очередного обновления в Windows Server 2012 R2 бэкап любых виртуальных машин проходит без приостановок. ОС Linux также можно бэкапить «изнутри» с помощь Dump (CentOS, Ubuntu), но это отдельная тема с puppet'ами и другим ПО в моем случае.

3. Восстановление бэкапа и WDS

А теперь, по-моему мнению, самая полезная часть этой статьи про бэкапы.

WDS — это Windows Deployment Services (службы развертывания Windows) и часть функционала Windows Server 2012R2. Раньше эта служба называлась RIS, но я с ней не сталкивался. Вообщем, суть WDS проста. Прописались в DHCP (автоматически для DHCP Windows Server) в виде отдельных параметров и далее загружаем на компьютер по сети (такая настройка BIOS компьютера для загрузки по сети) через TFTP загрузчик WDS. Далее загрузчик WDS позволяет выбрать из доступных на ней образов «загрузчиков» Windows. Загрузчики бывают разные — это и образы загрузчиков установщика, и PE, и RE образы. Для загрузчика установщика ещё нужны образы самих Windows в WDS, но это в случае, если нужно установить Windows по сети. Нас интересуют RE образы, которые позволяют поднять машину из бэкапа.

Как и что работает в WDS подробно объяснять не буду. Но вот важные заметки:

  1. Если у вас загрузчик RE загружается на Hyper-V виртуальной машине по сети, но не работает клавиатура в ней. Поздравляю, ваш RE образ для WinXP или древнее и не знает о существовании Hyper-V драйверов.
  2. Если у вас система начинает восстанавливать бэкап, но останавливается. Удалите все разделы на жестком (на котором восстанавливается бэкап) и попробуйте заново. Только не забывайте, что бэкап может быть битый и после удаления всех разделов на жестком у вас может ничего не остаться от старой информации.
  3. Если бэкап с загрузкой UEFI, а вы хотите восстановить на комп без UEFI, то не стоит тратить время. Скорее всего развернуть бэкап не получится.
  4. Бэкап с загрузкой UEFI и разделами GPT можно восстанавливать на машины с другим процессором / материнкой, а вот с разделами MBR формата и с загрузкой обычного BIOS на другой машине развернуть вряд ли получится. Ну у меня точно не получалось.
  5. Если бэкап пытаться развернуть на диск с меньшим объемом, то сделать это не получится. Даже если диск в бэкапе был почти пуст. В этом случае помогает восстановление на виртуальную машину с динамическим диском. Далее уменьшение этого диска и создание нового бэкапа. Но такое можно только с загрузчиком UEFI в бэкапе (почему, читаем предыдущий пункт).
  6. Стоит перед восстановлением бэкапа отключить лишние диски, чтобы не затереть информацию на них.

4. Особенности дедупликации

Можно дедуплицировать работающие виртуальные машины. Можно дедуплицировать бэкапы сегодняшнего дня и можно дедуплицировать бэкапы с историей. Все это дает большой положительный плюс к объему жестких дисков (как для HDD, так и SSD). Но не стоит забывать о некоторых вещах:

  1. Если дедупликация будет работать с дисками с объемом более чем 1 ТБ, то оптимизатор дедупликации будет использовать очень много памяти.
  2. Если дедупликация будет работать с сжатыми данными, но с объемом сжатого более чем 10 ТБ, то длительность работы оптимизатора дедупликации будет слишком большим. Такое может получиться, если просто копировать данные ежедневно на дедуплицированный диск в разные папки.
  3. Бэкапы на HDD хранить можно и даже нужно, а вот рабочие виртуальные машины хранить на HDD в количестве больше 5-10 не стоит. К дедупликации это относиться с той лишь стороны, что дедупликация таких рабочих виртуальных машин сведет производительность HDD в ноль.

5. Групповые политики

Вот тут можно долго и по-разному реализовывать установку скрипта бэкапа с помощью GPO. Но хотелось бы обратить внимание на важные моменты:

Виртуальные машины - это наборы файлов операционной системы, которые запускаются с помощью программы виртуализации. Как и любые другие файлы, файлы виртуальной машины могут быть выведена из строя. И это происходит достаточно часто. Виртуальные машины могут быть запущены на любом гипервизоре, таком как Hyper-V, VMware Esxi, VMware Workstation, XenServer и т.д.

Традиционные методы восстановления виртуальных машин

Традиционные методы восстановления виртуальных машин подразумевали периодическое создание снапшотов. Но эти подходы имели очевидные недостатки:

  • Если снапшоты виртуальных машин делались средствами самого гипервизора и хранились на его системах хранения - то в случае гибели гипервизора снапшоты погибали вместе с ним.
  • Если снапшоты виртуальных машин делались традиционными системами резервного копирования, то каждый раз программа бэкапа запрашивала и получала полный снимок для виртуальной машины. Это создавало излишний объем передаваемой информации. Задания на резервное копирование работали непрерывно многие часы загружая корпоративную сеть.
  • Что бы восстановить виртуальную машину, необходимо было вернуть снапшот этой машины из хранилища резервных копий в систему хранения виртуального гипервизора. Это занимало несколько часов рабочего времени.

Можно сколь угодно долго проявлять навыки решения нестандартных ситуаций. Но зачем?

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

Возьмите пробную версию и убедитесь в этом самостоятельно.

Современные методы восстановления виртуальной машины

Современные методы восстановления основаны на совместном использовании механизмов журналирования изменений блоков виртуальных дисков и средств синтетического бэкапа программ резервного копирования.

Использование новых технологий позволяют вернуть машину в работу буквально за считанные минуты.

Механизмы журналирования изменения блоков данных

Первопроходцем в создании технологии журналирования измененных блоков виртуальных дисков была компания VMware. Но с выходом Windows Server 2016 компания Microsoft сократила технологическое отставание.

Давайте коротко рассмотрим эти технологии

Технология Change Block Tracking (CBT) компании Vmware

Технология Change Block Tracking является частью стандартного API VMware (VMware VDDK). Основное предназначение этой технологии - вести журнал блоков данных виртуальных дисков, которые были изменены с момента последнего резервного копирования.

Виртуальная машина Windows - Change Block Tracking

Гипервизор VMware записывает изменения в специальные файлы, которые он создает в том же хранилище где находится файл виртуального диска. На рисунке выше показан файл журнала VMware Change Block Tracking.

Технология Resilient Change Tracking (RCT) компании Microsoft

Компания Microsoft долгое время не имела для Windows технологии слежения за изменением блоков виртуальных машин. Поэтому, современные системы резервного копирования, такие как Arcserve UDP были вынуждены самостоятельно разрабатывать драйверы слежения изменений.

Но с выходом Windows Server 2016, Microsoft преодолела это технологическое отставание включив в состав сервера Hyper-V 2016 технологию Resilient Change Tracking.

Виртуальная машина Windows - Resilient Change Tracking

Механизм работы технологии Microsoft Resilient Change Tracking очень похож на механизм работы технологии VMware Change Block Tracking.

resilint chnage tracking screen

Аналогично технологии VMware, гипервизор Microsoft Hyper-V записывает изменения в блоках виртуальных дисков в специализированные файлы, которые передает системам резервного копирования при их обращении. С помощью этой информации программы резервного копирования могут восстановить виртуальную машину на любую временную точку, которая найдется в этих журналах изменений. Для Windows это был важный шаг в конкурентной борьбе с VMware.

Синтетическое резервное копирование

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

Давайте в нескольких словах расскажем, что такое синтетическое резервное копирование. Как следует из самого названия технологии - это возможность синтезирования полной резервной копии по набору измененной информации.

То есть, вместо традиционного подхода с полным резервным копированием по выходным дням и инкрементальным бэкапаом в остальные дни недели, современные программы резервного копирования могут делать только одну полную резервную копию.

Виртуальную машину Windows - синтетический бэкап

Программа для восстановления Arcserve UDP

Все современные технологии, позволяющие восстановить любую виртуальную машину собраны в программе бэкапа Arcserve UDP.

Более 20 лет компания Arcserve развивает технологии резервного копирования и восстановления, которые помогают компаниям по всему миру защищать свои информационные ресурсы.

Подробную информацию о программном продукте Arcserve UDP можно получить из статьи на этом сайте " Знакомство с программой Arcserve UDP "

Вы можете получить бесплатную пробную версию Arcserve, что бы лично убедиться в ее превосходном функционале.

Внимание! Нам важно ваше мнение. Поставьте свою оценку этой статье в верхней части экрана.

Существует несколько способов преобразования установленной ОС Windows в образ для виртуальной машины. Созданный образ можно использовать, например, для тестирования, для проверки стабильности системы после установки какого-либо обновления, или для того, чтобы зафиксировать состояние старой машины перед внесением изменений.

Большинство программ виртуализации поддерживают функцию преобразования установленной ОС Windows в образы виртуальной машины. Некоторые решения уже поставляются со встроенными функциями, но в ряде случаев для этой же цели может понадобится использование сторонних продуктов.

В этом руководстве собраны инструкции по преобразованию установок Windows в виртуальные образы Microsoft Hyper-V, VirtualBox и VMware.

VHDX - Microsoft Hyper-V

VHDX - Microsoft Hyper-V

Перенос ОС Windows в виртуальную машину Microsoft Hyper-V выполняется очень просто благодаря программе Disk2vhd от Sysinternals.

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

Примечание: программу можно запустить в режиме командной строки, используя формат:

Основное окно приложения отображает путь назначения и имя файла, а чуть ниже - доступные тома. Обратите внимание, что вам нужно выбрать целевое расположение с достаточным свободным пространством для хранения, иначе процесс создания образа будет прерван.

Пользователь должен выбрать целевой путь и имя файла (с расширением vhdx), а также тома, которые следует включить в виртуальный образ.

Вы можете выбрать только раздел Windows или даже преобразовать несистемные разделы в образы VHD, не выбирая раздел Windows.

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

VHDX имеет несколько преимуществ, такие как поддержка более крупных виртуальных дисков (64 ТБ против 2 ТБ), лучшая защита от повреждений, дистанционное онлайн изменение размера и др. VHD необходим в основном для целей совместимости, например, когда продукт не поддерживает VHDX, а также когда вы хотите преобразовать образ в Virtualbox.

Второй параметр позволяет использовать теневую копию тома.

Disk2VHD обрабатывает выбранные тома и превращает их в образы виртуальных дисков, которые сохраняются в выбранном месте.

VDI - VirtualBox

VDI - VirtualBox

VirtualBox поставляется без встроенного инструмента конвертации установок Windows в образы виртуальной машины.

Однако, вы можете использовать альтернативное решение. Прежде всего, вам нужно создать образ VHD (как показано в разделе Microsoft Hyper-V выше).

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

  1. Нажмите на клавишу Windows , введите cmd.exe, зажмите Ctrl + Shift и нажмите клавишу Enter , чтобы запустить командную строку с правами администратора.
  2. Перейдите в папку VirtualBox в системе, например, C:\Program Files\Oracle\VirtualBox с помощью команды cd .
  3. Используйте команду vboxmanage clonemedium disk [source] [destination] , чтобы преобразовать образ диска VHD в формат VDI. Например: vboxmanage clonemedium disk o:\source.vhd o:\output.vdi

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

VMX - VMware

VMX - VMware

Вы можете создавать виртуальные образы машин Windows для VMware с помощью VMware vCenter Converter. Вы можете загрузить программу с официального сайта VMware, но для этого требуется учетная запись. На нашем сайте утилита доступна для загрузки без регистрации.

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

Размер установщика равен примерно 170 мегабайт. Во время установки вам будет предложено присоединиться к программе улучшения качества обслуживания клиентов.

Чтобы преобразовать запущенную систему Windows в виртуальный образ для VMware, выберите опцию “Конвертировать машину” в главном интерфейсе программы, чтобы начать работу.

После загрузки мастера, убедитесь, что для типа источника установлено значение “включено” и выбран “этот локальный компьютер”. Вы также можете создавать виртуальные образы удаленных компьютеров, но для этого необходимо указать имя или IP-адрес устройства, а также учетные данные.

Выберите виртуальную машину VMware в разделе тип цели на следующей странице и выберите целевую папку для сохранения образа.

Создание образа может занять некоторое время, в зависимости от количества томов, их размеров и ресурсов устройства.

Перенос Windows 7 со стационарного компьютера на виртуальную машину VirtualBox установленную на ноутбуке с Windows 10

Итак, имеем обычный стационарный компьютер с установленной Windows 7 64 бит, переносить её будем на виртуальную машину VirtualBox установленную на ноутбуке с Windows 10.


Windows 7 установлена на диске (C:) и его точную копию сохраним в файле виртуального диска VHD на разделе (F:) переносного жёсткого диска USB.


Конвертацию Windows 7 в файл VHD можно осуществить несколькими способами, сегодня проделаем это небольшой программкой Disk2vhd v2.01, скачиваем утилиту по ссылке

Запускаем Disk2vhd v2.01


В главном окне программы снимаем галочку с пункта «Use Vhdx».

В левой части окна отмечаем галочкой диск C:\ с установленной Windows 7.

Даём имя будущему файлу виртуального диска «Windows 7».

Жмём на кнопку проводника в правой части окна.


Сохраним виртуальный файл VHD на переносном винчестере USB буква диска (F:).



Пошёл процесс создания виртуального диска VHD.


Файл виртуального диска с Windows 7 создан


и находится на переносном жёстком диске USB, буква диска (F:).


Подключаем переносной жёсткий диск USB с файлом VHD к ноутбуку с Windows 10. Устанавливаем на ноутбук виртуальную машину VirtualBox 5.0.4




Даём имя виртуальной машине «Windows 7 (64 bit)»

Тип: «Microsoft Windows».

Версия: « Windows 7 (64 bit) ».


Памяти можете выделить побольше, например 1024 Мб


Отмечаем пункт «Использовать существующий виртуальный жёсткий диск» и жмём на кнопку проводника справа.


В открывшемся проводнике находим на переносном жёстком диске USB файл виртуального диска VHD, выделяем его левой мышью и жмём «Открыть».



Виртуальная машина «Windows 7» создана, но если её сейчас запустить, то наверняка выйдет ошибка при загрузке.



При переносе любой версии Windows на виртуальную машину всегда страдает загрузчик системы и его нужно просто восстановить, для этого загрузим виртуальную машину с ISO-образа Win 7 и войдём в среду восстановления для исправления загрузчика.

Исправляем загрузчик системы.


Во вкладке «Система» изменяем порядок загрузки, первым устройством выставляем - Оптический диск, а вторым - Жёсткий диск.


На вкладке «Носители» нужно подсоединить ISO-образ Windows 7.

Выделяем левой мышью пустое поле и жмём на значок дисковода.


«Выбрать образ оптического диска»


В открывшемся проводнике находим ISO-образ 7, выделяем его левой мышью и жмём «Открыть».



Запускаем нашу виртуальную машину «Windows 7»


На предложение загрузиться с ISO-образа Windows 7 - «Press any key to boot from CD or DVD», соглашаемся и нажимаем любую клавишу на клавиатуре, происходит загрузка VirtualBox с ISO-образа Windows 7.


Жмём клавиатурное сочетание «Shift+F10» и открывается окно командной строки.


lis vol (выводим все разделы жёсткого диска или дисков (если их несколько) в список).

sel vol 1 (Том 1, это скрытый раздел System Reserved (Зарезервировано системой) размер 100 Мб - отвечающий за загрузку Windows 7, он некорректен (файловая система RAW) и его нужно удалить, а затем создать заново).

del vol (удаляем некорректный раздел образуя нераспределённое пространство на жёстком диске)

lis dis (выводим список дисков подключенных к компьютеру)

sel dis 0 (выбираем единственный Диск 0)

create par primary size=100 (создаём заново скрытый раздел System Reserved (Зарезервировано системой) размер 100 Мб).

format fs=NTFS (форматируем его в файловую систему NTFS).

activ (делаем активным).

assign (присваиваем букву).

lis vol (выводим все разделы накопителей подключенных к компьютеру в список).

bcdboot D:\Windows (создаём заново файлы загрузки на скрытом разделе System Reserved для Windows 7, так как буква диска операционной системы в среде восстановления (D:)).

Файлы загрузки успешно созданы



Выходим из командной строки и перезагружаемся.

Загружается Windows 7



Очень важно установить "Дополнения гостевой ОС", после этого VirtualBox установит все недостающие драйвера,


также вы сможете перейти в «Режим полного экрана», создавать общие папки и многое другое.



Рекомендуем другие статьи по данной теме

Комментарии (26)

Рекламный блок

Подпишитесь на рассылку

Навигация

Облако тегов

Архив статей

Сейчас обсуждаем

ираклий казанцев

У меня задействована утилита KillUpdate которая отключает обновление (в службах диспетчера, и я

Дмитрий

Здравствуйте! Опять от меня чисто теоретический вопрос. Упоминавшийся мною в другом разделе

Фёдор

Цитата: STAROGIL При запуске AOMEI Backupper в главном окне было предложено создать загрузочную

Фёдор

Цитата: Владимир С.П. Лично я уже 15 лет пользуюсь Acronis. Просто скачиваю на торренте Acronis

RemontCompa — сайт с огромнейшей базой материалов по работе с компьютером и операционной системой Windows. Наш проект создан в 2010 году, мы стояли у истоков современной истории Windows. У нас на сайте вы найдёте материалы по работе с Windows начиная с XP. Мы держим руку на пульсе событий в эволюции Windows, рассказываем о всех важных моментах в жизни операционной системы. Мы стабильно выпускаем мануалы по работе с Windows, делимся советами и секретами. Также у нас содержится множество материалов по аппаратной части работы с компьютером. И мы регулярно публикуем материалы о комплектации ПК, чтобы каждый смог сам собрать свой идеальный компьютер.

Наш сайт – прекрасная находка для тех, кто хочет основательно разобраться в компьютере и Windows, повысить свой уровень пользователя до опытного или профи.

Читайте также: