Есть Windows Server 2016. Аппаратный RAID отсутствует полностью. Надо сделать на системном диске програмное зеркало (RAID-1). Разбиение диска - GPT.
Автор впервые создавал програмное зеркало на GPT разделе, поэтому при написании использовал статью "How to set up dynamic boot partition mirroring on GUID partition table (GPT) disks in Windows Server 2008".
Также обнаружено странное поведение система. Стоило хотя, бы раз загрузиться со вторичного диска, как зеркало разрушалось. Система нормально стартовала со вторичного диска и прекрасно работала. Но в диспетчере дисков было видно, что диски в зеркале уже не синхронизировались. Зеркало снова приходилось восстанавливать вручную. Я не знаю, баг это или так и должно быть.
Исходная конфигурация винчестеров
DISKPART> list disk
Диск ### Состояние Размер Свободно Дин GPT
-------- ------------- ------- ------- --- ---
Диск 0 В сети 1117 Gбайт 805 Gбайт * *
Диск 1 В сети 1117 Gбайт 1117 Gбайт
DISKPART> select disk 0
Выбран диск 0.
DISKPART> list part
Раздел ### Тип Размер Смещение
------------- ---------------- ------- -------
Раздел 1 Восстановление 450 Mб 1024 Kб
Раздел 2 Системный 99 Mб 451 Mб
Раздел 3 Динамический (за 1024 Kб 550 Mб
Раздел 4 Зарезервирован 15 Mб 551 Mб
Раздел 5 Динамические дан 311 Gб 566 Mб
Раздел 6 Динамические дан 805 Gб 312 Gб
DISKPART> list vol
Том ### Имя Метка ФС Тип Размер Состояние Сведения
---------- --- ----------- ----- ---------- ------- --------- --------
Том 0 C NTFS Простой то 311 Gб Исправен Загрузоч
Том 1 Восстановит NTFS Раздел 450 Mб Исправен Скрытый
Том 2 FAT32 Раздел 99 Mб Исправен Системны
В оснастке "Управление дисками это выглядит так"
Скрин 2. Оснастка "Управление дисками" |
Начинаем.
Подготовка
Вторичный диск 1 должен быть абсолютно чист. Если в процессе создания разделов, зеркал появяется ошибка, то часто причина в том, что остался мусор. Сначала в diskpart запустите:select disk 1Конвертируем вторичный диск в GPT
clean
DISKPART> select disk 1Проверяем разбиение вторичного винчестера 1
Выбран диск 1.
DISKPART> convert GPT
DiskPart: выбранный диск успешно преобразован к формату GPT.
Видим, что на винчестере был какой-то раздел. Удаляем его.DISKPART> list partРаздел ### Тип Размер Смещение------------- ---------------- ------- -------* Раздел 1 Зарезервирован 128 Mб 17 KбDISKPART> sel part 1
Выбран раздел 1.
DISKPART> delete part override
DiskPart: выбранный раздел успешно удален.
DISKPART> list part
Разделы на диске отсутствуют.
Теперь приступаем к созданию разделов на вторичном диске 1. Смотрим какого размера разделы на первичном винте 0 и пытаемся делать такого же размера на диске 1. Раздел 1 на 450 МБ я не создавал. Более того, когда я его сделал, то потом при создании зеркала показывало ошибку.
DISKPART> select disk 0Видим что разделы созданы.
Выбран диск 0.
DISKPART> list part
Раздел ### Тип Размер Смещение
------------- ---------------- ------- -------
Раздел 1 Восстановление 450 Mб 1024 Kб
Раздел 2 Системный 99 Mб 451 Mб
Раздел 3 Динамический (за 1024 Kб 550 Mб
Раздел 4 Зарезервирован 15 Mб 551 Mб
Раздел 5 Динамические дан 311 Gб 566 Mб
Раздел 6 Динамические дан 805 Gб 312 Gб
DISKPART> select disk 1
DISKPART> create partition efi size=99
DiskPart: указанный раздел успешно создан.
DISKPART> create partition msr size=15
DiskPart: указанный раздел успешно создан.
DISKPART> list part
Раздел ### Тип Размер Смещение
------------- ---------------- ------- -------
Раздел 1 Системный 99 Mб 1024 Kб
Раздел 2 Зарезервирован 15 Mб 100 Mб
Конвертирование винчестеров в динамические диски
Для работы в зеркале оба винчестера должны быть динамическимиDISKPART> select disk 1Сделай то же самое для диска 0.
Выбран диск 1.
DISKPART> convert dynamic
DiskPart: выбранный диск успешно преобразован к динамическому формату.
DISKPART> select disk 0
Выбран диск 0.
DISKPART> convert dynamic
DiskPart: выбранный диск успешно преобразован к динамическому формату.
Создание зеркала
Смотрим список томов. Диск с системой у нас C:. Выбираем его и командой "add disk=1" создаем зеркало.DISKPART> select volume c
Выбран том 0.
DISKPART> add disk=1
DiskPart: зеркало успешно добавлено к тому.
Скрин 2. Диски сразу после создания зеркала |
На этом скрине видно состояние дисков сразу после этих команд. В инструкции написано ждать окончания синхронизации разделов C:. Это может занять несколько часов. Теперь при старте Windows у нас будет 30 сек задержки и предложение выбрать "Microsoft Windows Server 2016 - первичный плекс" и "Microsoft Windows Server 2016 - вторичный плекс"
Форматирование EFI раздел
Теперь надо отформатировать EFI раздел на вторичном винчестере 1. Это тот раздел, который мы создавали командой diskpart "create partition efi size=99".У меня EFI раздел является разделом 1. У вас может быть другой номер. Нужный вам раздел смотри с помощью "list partition".
Тут также назначаются EFI-разделам назначаются буквы дисков S: и P: они нам понадобятся на следующих шагах.
DISKPART> select disk 1Можно проверить правильно ли вы назначили буквы дисков P: и S:. На диске P: должна быть папка EFI. Если такой папки нет, значит буква диска назначена неправильно. Диск S: должен быть пустым. Мы ведь только что его отформатировали.
Выбран диск 1.
DISKPART> select partition 1
Выбран раздел 1.
DISKPART> assign letter=S
DiskPart: назначение имени диска или точки подключения выполнено успешно.
DISKPART> format fs=FAT32 quick
Завершено (в процентах): 100
Программа DiskPart успешно отформатировала том.
DISKPART> select disk 0
Выбран диск 0.
DISKPART> select partition 2
Выбран раздел 2
assign letter=P.
DISKPART> assign letter=P
DiskPart: назначение имени диска или точки подключения выполнено успешно.
DISKPART> exit
Завершение работы DiskPart…
Насколько помню эти диски были доступны только в администраторской командной строке. Проводником посмотреть их не удалось.
Конфигурируем точки загрузки для зеркального диска с помощью Bcdedit.exe
Можно посмотреть текущие точки загрузки командой "bcdedit /enum" и после наших манипуляций еще раз ее запустить и сравнить разницу. Продолжим.
C:\install>p:Запомним "{739b******************b6c4}". На следующем шаге это нам пригодится. У вас тут бубут другие цифры
P:\EFI\Microsoft\Boot>
P:\EFI\Microsoft\Boot>bcdedit /copy {bootmgr} /d "Windows Boot Manager Cloned"
Запись успешно скопирована в {739b8421-1e39-11e9-8067-a6f5c530b6c4}.
P:\EFI\Microsoft\Boot>bcdedit /set {739b8421-1e39-11e9-8067-a6f5c530b6c4} device partition=s:
Операция успешно завершена.
Тут между фигурными скобками должна стоять строка из предыдущей команды.
Можете еще раз запустить "bcdedit /enum" и сравнить с предыдущим запуском.
Копирование раздела EFI и BCD-хранилища на вторичный винчестер
Экспортируем BCD-хранилище на EFI разделе диска 0P:\EFI\Microsoft\Boot>bcdedit /export P:\EFI\Microsoft\Boot\BCD2
Операция успешно завершена.
Копируем системные файлы из EFI-раздела первичного диска (P:) на EFI-раздел вторичного диска (S:).
P:\EFI\Microsoft\Boot>robocopy p:\ s:\ /e /r:0Далее идет длинный вывод, который я здесь пропущу.
Переименуем BCD-хранилище на диске 1 так, чтобы оно соответствовало хранилищу на диске 0.
P:\EFI\Microsoft\Boot>rename S:\EFI\Microsoft\Boot\BCD2 BCDУдалить копию BCD-хранилища на первичном диске
P:\EFI\Microsoft\Boot>del P:\EFI\Microsoft\Boot\BCD2Далее удаляем символы дисков P: и S:
P:\EFI\Microsoft\Boot>c:
C:\install>diskpart
Microsoft DiskPart, версия 10.0.14393.0
(С) Корпорация Майкрософт (Microsoft Corporation), 1999-2013.
DISKPART> select volume p
Выбран том 3.
DISKPART> remove
DiskPart: удаление имени диска или точки подключения выполнено успешно.
DISKPART> select volume s
Выбран том 1.
DISKPART> remove
DiskPart: удаление имени диска или точки подключения выполнено успешно.
Мы победили.
Теперь если что-то случится с первичным жестким диском, надо при загрузке сервера указать устройство загрузки "Windows Boot Manager Cloned" и далее выбрать "Microsoft Windows Server 2016 - вторичный плекс."
Спасибо, полезная статья! Но есть вопрос по восстановлению целостности массива. Было сдделано пошагово все вышеизложенное и для проверки вынут первичный диск. Далее загрузка во вторичный плекс. После этого выключаем ПК, возвращаем первичный диск на место. Загрузка во вторичный плекс, в управлении дисками наблюдаю ДИСК 0 - Foreign, а так же появился еще один диск с состоянием Missing. Какие дальнейшие действия?
ОтветитьУдалитьвы раздел восстановления забыли, если конечно вы не скопировали тему с другого ресурса
ОтветитьУдалить