Программный RAID заслуженно пользуется популярностью благодаря простоте настройки и управления. Он позволяет создавать отказоустойчивые дисковые конфигурации без дополнительного оборудования. Однако с переходом современных систем на UEFI процесс создания программного RAID приобрел свои особенности, которые важно учитывать, чтобы избежать проблем с загрузкой системы при отказе одного из дисков.
В этой статье мы рассмотрим, как создать программный RAID на основе динамических дисков в системах с UEFI, а также подготовку дисков и настройку загрузчика.
Конфигурация разделов Windows с UEFI
Современные версии Windows (10, 11, Windows Server 2016/2019) автоматически создают стандартную конфигурацию разделов на GPT-дисках:
1) Windows RE: Раздел для восстановления системы (NTFS), размер 500 МБ.
2) EFI: Системный загрузочный раздел (FAT32), размер 100 МБ.
3) MSR (Microsoft System Reserved): Служебный раздел, размер 16 МБ.
4) Windows: Основной системный раздел, на котором установлена ОС.
Шаг 1: Подготовка к созданию программного RAID
1) Установите Windows на один из дисков.
После установки зайдите в «Управление дисками». Здесь первым идет раздел Windows RE, размером в 499 МБ, а за ним раздел EFI, который ошибочно именуется шифрованным. Но как мы говорили выше, данная оснастка не дает полного представления о структуре разметки.
2) Поэтому запустите Командную строку с правами администратора и выполните команды:
diskpart
sel disk 0
list par
Это покажет структуру разделов на первом диске.
3) Подготовьте второй диск для зеркалирования:
sel disk 1
clean
Внимание! Команда clean удалит все данные на выбранном диске.
4) Преобразуйте второй диск в GPT:
convert gpt
При преобразовании на диске будет автоматически создан MSR раздел, нам он пока не нужен, поэтому удалим его командой:
sel par 1
delete part override
После чего убедимся, что диск не содержит разделов.
5) Создайте разделы на втором диске, аналогичные первому:
— Для раздела восстановления:
sel disk 1
create partition primary size=499
format quick fs=ntfs
Затем зададим ему нужные GPT-атрибуты:
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
gpt attributes=0x8000000000000001
Идентификатор de94bba4-06d1-4d40-a16a-bfd50179d6ac задает тип раздела как Windows RE, а атрибут 0x8000000000000001 препятствует назначению буквы диска и помечает раздел как обязательный для работы системы, во избежание его удаления из оснастки управления дисками.
— Для раздела EFI:
create partition efi size=99
format quick fs=fat32
— Для раздела MSR:
create partition msr size=16
Если все сделано правильно, то вы должны получить следующую схему разметки, которая будет полностью повторять (за исключением системного раздела) разметку первого диска.
После чего перезагрузите систему.
Шаг 2: Создание программного RAID
Прежде всего преобразуем диски в динамические, это можно сделать в оснастке Управление дисками.
Или через diskpart:
1) Преобразуйте оба диска в динамические:
sel disk 0
convert dynamic
sel disk 1
convert dynamic
2) Создайте зеркальный массив (RAID 1) для системного раздела:
sel vol c
add disk 1
Так же это можно сделать через «управление дисками»
3) Дождитесь завершения ресинхронизации данных. Это может занять некоторое время в зависимости от объема и скорости дисков.
Теперь при загрузке появится меню с выбором раздела, загрузиться можно с обоих, но не будем забывать, что загрузчик по-прежнему присутствует только на первом диске и при смене порядка загрузки в BIOS загрузиться со второго диска не удастся.
Шаг 3: Настройка загрузчика EFI и его копирование на второй раздел
Для полноценной работы программного RAID в среде UEFI необходимо настроить загрузчик EFI на обоих дисках. Это обеспечит возможность загрузки системы в случае отказа одного из дисков
—
Шаг 1: Присвоение букв EFI разделам
1) Запустите diskpart через командную строку или PowerShell от имени администратора.
2) Уточните расположение нужного раздела на первом диске:
sel disk 0
list par
Найдите раздел EFI (обычно это раздел с номером 2).
3) Выберите раздел и присвойте ему букву:
sel par 2
assign letter=P
4) Повторите действия для второго диска:
sel disk 1
sel par 2
assign letter=S
Создание второго экземпляра загрузчика
1) Перейдите в раздел EFI первого диска:
P:
cd EFI\Microsoft\Boot
2) Просмотрите текущие точки загрузки:
bcdedit /enum
Вы увидите единственную запись диспетчера загрузки и две записи загрузчика Windows.
3) Создайте второй экземпляр загрузчика:
bcdedit /copy {bootmgr} /d "Windows Boot Manager 2"
Скопируйте идентификатор, выданный в результате выполнения команды.
4) Привяжите новый загрузчик к EFI-разделу второго диска:
bcdedit /set {ID} device partition=s:
Вставьте идентификатор вместо {ID}, полученный ранее.
5) Экспортируйте BCD-хранилище загрузчика:
bcdedit /export P:\EFI\Microsoft\Boot\BCD2
Копирование загрузчика
1) Скопируйте содержимое EFI-раздела первого диска на второй:
robocopy P:\ S:\ /E /R:0
Примечание: Ошибка при копировании активного экземпляра BCD-хранилища является нормальной.
2) Переименуйте копию BCD на втором диске:
rename S:\EFI\Microsoft\Boot\BCD2 BCD
3) Удалите временную копию с первого диска:
del P:\EFI\Microsoft\Boot\BCD2
Удаление букв дисков
1) Запустите diskpart и выполните команды:
sel vol P
remove
2) Повторите действия для второго диска:
sel vol S
remove
Тестирование загрузки
Перезагрузите систему и в BIOS выберите Windows Boot Manager 2. Затем выберите загрузку с вторичного диска. Если все настройки выполнены правильно, система загрузится успешно.
Теперь ваша система готова работать с программным RAID в среде UEFI. При правильной настройке вы обеспечите отказоустойчивость данных и сможете загружаться с любого диска. Однако помните, что для поддержки RAID требуется регулярное обслуживание и контроль за состоянием массива.