Думаю, что написанное здесь будет актуально и для 2012\2012R2, а так же
для 7,8 и 10, но проверялось на 2008 R2. Проблема возникла с
восстановлением системы, для которой ранее была сделана резервная копия
full-image. В целом, как и всегда во всех подобных статьях, следует
указать, что процедура восстановления хорошо описана на Microsoft
Technet, но есть нюансы, которые наверняка гуглятся, но я решил их
собрать в одном месте для помощи гуглящим, тем более, что сам я даже не
смог толком сформулировать запрос о возникшей проблеме, уж настолько она
была не очевидна.
Начальные условия
Имеется сервер с установленным на нем гипервизором VMWare ESXi, на котором работает виртуальная машина с установленной гостевой операционной системой Windows 2008 R2. Сервер выполняет роль контроллера домена. Серверу выделен один диск под операционную систему. С помощью утилиты wbadmin было выполнено резервное копирование системы (полное, full-image) в сетевую папку на другом сервере.
Описание проблемы
Решил воспользоваться бэкапом, нашел две хорошие статьи по восстановлению системы (ссылкараз, ссылкадва). Однако, а) у меня бэкап находится в доступной по сети папке, и б) когда я иду по шагам из первой ссылки, дохожу до пункта 5 в ней, то при точной уверенности в верности адреса папки с бэкапом и задания верного пользователя для доступа к папке, я не вижу ни одной доступной версии для восстановления.
Причину такого поведения выявить не удалось. Вероятнее всего это связано с восстановлением системного раздела, идентификаторы которого отличаются в WinPE от тех, которые видно в самой ОС. Но это лишь мои догадки, подтверждения им я, кроме как на практике в описанном ниже случае, не нашел.
Тем не менее восстановление удалось завершить, опираясь именно на догадку выше, и перестройку действий в соответствии с ней.
Инструкция по восстановлению из full-image backup
Ниже представлена пошаговая инструкция со скринами на каждый чих и описаниями действий.
Для начала необходим прямой доступ к серверу через консоль гипервизора или iLo и его аналоги. Первые несколько шагов описывать не буду, т.к. тривиально: необходимо загрузиться с установочного диска, выбрать в первом меню язык установки, формат времени и раскладку клавиатуры, после чего нажать на ссылку Repair your computer.
В открывшемся окне будет предложено либо выбрать операционную систему для исправления ошибок, либо восстановить систему с использованием образа, созданного ранее:
Выбираем второй пункт и переходим в окно Re-image your computer:
Для
начала необходимо установить драйвер сетевого адаптера, т.к. иначе
просто невозможно будет достучаться до сетевой папки. Как описано на
различных форумах и сайтах, в случае с Hyper-V драйвер на сетевые
адаптеры устанавливается автоматически. Во всех остальных случаях, таких
как VMWare или физический сервер, необходимо установить драйвер
самостоятельно. Для этого его необходимо как-либо передать в систему
(например, на флешке) и выбрать для установки. В моем случае (VMWare с
ранее установленными в систему Tools'ами) необходимый драйвер находился
в: <SYSTEMDISK>\Program Files\Common Files\VMWare\drivers\vmxnet3.
Для того, чтобы начать установку, необходимо нажать Advanced и выбрать
Install a Driver:
После выбираем драйвер:
Далее закрываем окно Re-image your computer, в открывшемся окне System Recovery Options выбрать Command Prompt:
Дальнейшую работу будем проводить здесь. Поскольку бэкап находится в сетевой папке, необходимо настроить сетевой адаптер для работы с сетью. Перед выполнением настройки сетевого адаптера вводим команду wpeinit - активируем утилиту, инициализирующую Windows PE. Далее с помощью команды netsh interface ipv4 show interface проверяем, видны ли адаптеры, для которых ранее мы установили драйверы, а так же узнаем параметры этих адаптеров:
После выбираем драйвер:
Далее закрываем окно Re-image your computer, в открывшемся окне System Recovery Options выбрать Command Prompt:
Дальнейшую работу будем проводить здесь. Поскольку бэкап находится в сетевой папке, необходимо настроить сетевой адаптер для работы с сетью. Перед выполнением настройки сетевого адаптера вводим команду wpeinit - активируем утилиту, инициализирующую Windows PE. Далее с помощью команды netsh interface ipv4 show interface проверяем, видны ли адаптеры, для которых ранее мы установили драйверы, а так же узнаем параметры этих адаптеров:
Полезной здесь будет колонка Name. Настраивать будем интерфейс с индексом 2. Для того, чтобы задать сетевые параметры данному интерфейсу, необходимо ввести следующую команду - netsh interface ipv4 set address name=”NAME” source=static address=<ServerAddress> mask=<Mask> gateway=<DefaultGateway>, где параметр NAME - имя адаптера, полученное в выводе прошлой команды, address, mask, gateway - сетевые адрес, макса и шлюз по умолчанию для восстанавливаемого сервера при условии, что параметр source - источник адреса - имеет значение static. В случае DHCP все остальные поля заполняются исходя из данных DHCP сервера.
Опционально можно дополнительно задать параметры DNS. Для этого командой net start dnscache включаем службу DNS-клиента, а командой netsh interface add dns name="Name" address=<DNSServer> index=<NumberOfDNSAddressInList>.
На этом вспомогательные действия для восстановления завершены. Далее в инструкциях рекомендуют закрыть командную строку и пройти по пути System Rocovery Options --> System Image Recovery --> Re-image your computer --> Advanced --> Указать сетевую папку и логин\пароль для доступа к ней, но в моем случае после указанного действия не отображается ни одной доступной версии резервных копий при условии, что они гарантированно есть в папке, а так же что связь между восстанавливаемым сервером и папкой не блокируется межсетевыми экранами. Никаких предупреждений и ошибок не возникает. Справиться с этим не получилось, поэтому было принято решение перейти к CMD и восстанавливать сервер из нее.
Вновь переходим к командной строке и с помощью утилиты wbadmin начинаем восстановление. Во-первых, с помощью команды wbadmin get disks определяем, какое дисковое пространство есть в нашем распоряжении. Поскольку я собираюсь восстанавливать бэкап на тот же сервер, на котором он и был сделан, отличие в конфигурации будет минимальное:
На этом этапе меня смутило наличие раздела System Reserved раздела, который помечен буквой C. Возможно, именно этот раздел мешает восстановлению системы из графического режима, но утверждать это на 100% я не готов. Тем не менее видно, то будут отличия при восстановлении - основной раздел - это раздел D, поэтому восстанавливать необходимо на него.
Далее проверяем наличие версий
резервных копий и их идентификаторы. Для этого вводим команды wbadmin get versions с
указанием параметров восстанавливаемой системы:
-machine:<DCSystemName> - имя восстанавливаемого сервера
-backupTarget:<BackupSharedFolder> - адрес сетевой
папки, содержащей резервную копию
Как видно из рисунка, в папке есть резервная копия для указанного мною сервера, несмотря на то, что в графическом режиме бэкап не отображался. осталось последнее действие: запуск процесса восстановления с помощью команды wbadmin start recovery с
указанием следующих параметров:
-version:<VersionIdentifier> - значение версии резервной копии, полученное на
предыдущем шаге;
-backupTarget:<BackupSharedFolder> - адрес сетевой папки, содержащей резервную копию
контроллера домена;
-machine:<DCSystemName> - имя
восстанавливаемого контроллера домена;
-itemtype:Volume – указать данный параметр для восстановления полной копии;
-item:C: - указать восстанавливаемую область – ранее созданную
резервную копию диска С контроллера домена;
-recoveryTarget:D: - указываем место назначения
восстанавливаемой резервной копии;
После ввода команды и указания имени пользователя, имеющего доступ к папке с бэкапом, и его пароля, необходимо подтвердить восстановление вводом Y:
Комментариев нет:
Отправить комментарий