В этой статье мы рассмотрим, как создать программное зеркало (RAID1) из двух GPT дисков в Windows Server 2016/Windows 10, установленных на UEFI системе. Мы рассмотрим полноценную конфигурацию BCD загрузчика, позволяющую обеспечить корректную загрузку Windows и защитить данные от выхода из строя любого диска.
Итак, у нас имеется простой компьютер UEFI-архитектуры без встроенного RAID контроллера с двумя идентичными дисками размерами по 50 Гб. Наша задача — установить на первый GPT диск ОС (Windows Server 2016, Windows 10 или бесплатного сервер Hyper-V ), а затем собрать из двух дисков программное зеркало (RAID1 – Mirroring).
Запишите установочный образ Windows на DVD/ USB флешку , загрузите компьютер) с этого загрузочного устройства (в режиме UEFI, не Legacy) и запустите установку Windows Server 2016.
После установки, откройте консоли управления дисками (diskmgmt.msc), убедитесь, что на первом диске используется таблица разделов GPT (свойства диска -> вкладка Volumes -> Partition style –> GUID partition table ), а второй диск пустой (неразмечен).
Откройте командную строку с правами администратора и выполните команду diskpart. Наберите:
DISKPART>List disk
Как вы видите, в системе имеется два диска:
На всякий случай еще раз очистим второй диск и конвертируем его в GPT:
Select disk 1
clean
Convert GPT
Введите список разделов на втором диске:
List part
Если найдется хотя бы один раздел (в моем примере это Partition 1 – Reserved – Size 128 Mb), удалите его:
Sel part 1
Delete partition override
Выведите список разделов на 1 диске (disk 0). Далее вам нужно создать такие же разделы на Disk 1.
Select disk 0
List part
Имеется 4 раздела:
Создаем такие же разделы на Disk 1:
Select disk 1
Create partition primary size=450
format quick fs=ntfs label=»WinRE»
set id=»de94bba4-06d1-4d40-a16a-bfd50179d6ac»
create partition efi size=99
create partition msr size=16
list part
Теперь оба диска нужно преобразовать в динамические:
Select disk 0
Convert dynamic
Select disk 1
Conv dyn
Создадим зеркало для системного диска (диск C:). Нужно выбрать раздел на первом диске и создать для него зеркало на 2 диске:
Select volume c
Add disk=1
Должно появится сообщение:
DiskPart succeeded in adding a mirror to the volume
Откройте консоль управления дисками, и убедитесь, что запустилась синхронизуя раздела C на (Recynching). Дождитесь ее окончания (может занять до нескольких часов в значимости от размера раздела C: ).
При загрузке Windows теперь будет появляться меню Windows Boot Manager с предложение выбрать с какого диска загружаться. Если не выбрать диск вручную, система через 30 секунд попытается загрузиться с первого диска:
Однако проблема в том, что сейчас у вас конфигурация загрузчика хранится только на 1 диске, и при его потере, вы не сможете загрузить ОС со второго без дополнительных действий. По сути вы защитили данные ( но не загрузчик Windows) только от сбоя второго диска.
Программный RAID Windows не получится использовать для создания нормального зеркала EFI раздела. Т.к. на EFI разделе хранятся файлы, необходимые для загрузки ОС, то при выходе их строя первого диска, вы не сможете загрузить компьютер со второго диска без ручного восстановления загрузчика EFI на нем в среде восстановления. Эти операции довольно сложно сделать неподготовленному администратору, а также потребует дополнительного времени (которого может не быть, если у вас за спиной стоит толпа разгневанных пользователей).
Далее мы покажем, как скопировать EFI раздел на второй диск и изменить конфигурацию загрузчика BCD, чтобы вы могли загрузить Windows как с первого, так и со второго диска.
Теперь нужно подготовить EFI раздел на втором диске в зеркале, чтобы компьютер мог использовать этот раздел для загрузки Windows. Назначим EFI разделу на Disk 1 букву S и отформатируем его в файловой системе FAT32:
Select disk 1
Select part 2
assign letter=S
format fs=FAT32 quick
Теперь назначим букву диска P: для EFI раздела на Disk 0:
select disk 0
select partition 2
assign letter=P
exit
Выведите текущую конфигурацию загрузчика BCD с помощью команды:
bcdedit /enum
При создании зеркала, служба VDS автоматически добавила в конфигурацию BCD запись для второго зеркального диска (с меткой Windows Server 2016 – secondary plex).
Чтобы EFI в случае потери первого диска могут загружаться со второго диска, нужно изменить конфигурацию BCD.
Для этого нужно скопировать текущую конфигурацию Windows Boot Manager
bcdedit /copy {bootmgr} /d "Windows Boot Manager Cloned"
The entry was successfully copied to {44d1d6bf-xxxxxxxxxxxxxxxx}
Теперь скопируйте полученный ID конфигурации и используйте его в следующей команде:
bcdedit /set {44d1d6bf-xxxxxxxxxxxxxxxx} device partition=s:
Если все правильно, должна появится строка The operation completed successfully.
Выведите текущую конфигурацию Windows Boot Manager (bcdedit /enum). Обратите внимает, что у загрузчика теперь два варианта загрузки EFI с разных дисков (default и resume object).
Теперь нужно сделать копию BCD хранилища на разделе EFI первого диска и скопировать файлы на второй диск:
P:
bcdedit /export P:EFIMicrosoftBootBCD2
robocopy p: s: /e /r:0
Осталось переименовать BCD хранилище на втором диске:
Rename s:EFIMicrosoftBootBCD2 BCD
И удалить копию на Disk 0:
Del P:EFIMicrosoftBootBCD2
Теперь при выходе из строя первого диска, вам нужно при загрузке компьютера выбрать устройство «Windows Boot Manager Cloned», а затем «Microsoft Windows Server 2016 — secondary plex».
При загрузке с отказавшим дисков, в диспетчере Disk Management вы увидите сообщение Failed Redndancy.
В этом случае вы должны заменить неисправный диск, удалить конфигурацию зеркала и пересоздать программный RAID с начала.
Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…
В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…
Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…
Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…
Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…
В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…