Надежность программного raid windows

Обновлено: 02.07.2024

Если вы хоть немного заботитесь о безопасности ваших данных, тогда вам приходилось слышать о RAID массивах. В этой статье мы разберемся как создать массив RAID 10 в операционной системе Windows 10.

Содержание:

Главным заданием RAID массивов является обеспечение безопасности данных в случае выхода из строя одного из накопителей, однако каждый из уровней RAID имеет свои особенности. Некоторые уровни обеспечивают максимально возможный уровень защиты, но при этом снижается скорость записи данных (RAID 1), некоторые наоборот – повышают скорость чтения/записи на диски, но при этом сильно снижается уровень безопасности данных (например, RAID 0). Это привело к объединению разных уровней с целью получения максимально возможной скорости чтения/записи и высокому уровню защиты данных. Так появились комбинированные уровни RAID, коим и является RAID 10.

Если вы не знакомы с типами RAID массивов – вы можете прочесть о них в статье «Типы RAID массивов»

Еще одним преимуществом RAID 10 является возможность его реализации как на аппаратном, так и на программном контроллере.

Разница между программным и аппаратным RAID 10

Решение о том, какой контроллер использовать для работы с RAID 10 каждый принимает сам, основываясь на своих потребностях. Однако, перед тем, как принять такое решение стоит сравнить их под взглядом цены, быстродействия и надёжности.

Что касается цены, то тут однозначно аппаратные решения будут дороже. Больше того, чем важнее информация хранится на компьютере, сервере, или NAS хранилище – тем качественнее должен быть контроллер (и cсоответственно дороже).

В то же время, следует сказать, что реализовать полноценный программный RAID 10 можно используя только встроенные возможности операционной системы Windows 10, а значит теоретически, такой RAID должен быть дешевле.

Поэтому, если у вас старая машина – вы можете попробовать создать программный RAID 10. Процесс создания детально расписан в следующем пункте этой статьи.

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

Как создать программный RAID 10 в Windows 10 используя «Дисковые пространства»?

Как уже упоминалось выше, встроенный функционал операционной системы Windows не поддерживает создание массива RAID 10, однако вы можете поступить иначе и сначала создать два массива RAID 1, а затем из них собрать массив RAID 0.

Для начала создайте два массива RAID 1. Для этого выполните следующие шаги:

Шаг 1: Щелкните правой кнопкой мыши по «Пуск» и выберите «Панель управления» («Control Panel»).

Шаг 2: В открывшемся окне выберите «Дисковые пространства»

Шаг 3: Выберите «Создать новый пул и дисковое пространство»

Шаг 4: Выберите диски, которые вы хотите добавить в массив RAID.

Важно: все данные на дисках, из которых создается RAID-массив, будут удалены. Поэтому заранее сохраните все важные файлы на другой диск или внешний носитель.

После того, как вы настроили массив, вы должны дать ему имя и правильно настроить.

Шаг 5: В поле «Имя» введите имя вашего RAID-массива.

Шаг 6: Затем выберите букву и файловую систему для будущего RAID

Именно с этим именем и буквой массив будет отображаться в системе Windows.

Шаг 7: Теперь вы должны выбрать тип устойчивости.

  • Простой (без отказоустойчивости) – это RAID 0;
  • Двустороннее зеркало — RAID 1;
  • Трехстороннее зеркало – это тоже RAID 1 (с разницей только в количестве копий основного жесткого диска);
  • Четность – RAID 5.

Нас интересует второй вариант «Двустороннее зеркало»

Программа автоматически установит максимально доступную емкость дискового массива.

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

Шаг 8. Нажмите «Создать дисковое пространство».

После того, как мастер настроит ваш новый RAID, он будет доступен как отдельный диск в окне «Этот компьютер». Он не будет отличаться от обычного жесткого диска, и вы можете выполнять с ним любые операции.

Эту же операцию выполните для оставшихся двух дисков.

После того, как оба массива созданы можно приступать к объединению их в один RAID 0 массив.

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

Как только процесс создания массива завершится – вы получите полностью готовый к работе RAID 10 массив.

Как создать программный RAID 10 в Windows 10 используя «Управление дисками»?

Еще одним способом создания программного RAID 10 в операционной системе Windows является использование встроенной утилиты под названием «Управление дисками». Также, как и предыдущий, этот способ достаточно легкий и не требует глубоких знаний операционной системы. Итак, для начала создадим два массива RAID 1:

Шаг 1: Щелкните правой кнопкой мыши по «Пуск» и выберите «Управление дисками»

Шаг 2: Перед вами откроется «Управление дисками», в котором будут отображаться все подключенные диски. Щелкните правой кнопкой мышки и выберите «Создать зеркальный том»

Шаг 3: Откроется «Мастер создания зеркальных томов». Щелкните «Далее», затем выделите в левой части окна мастера диски, которые хотите добавить в массив RAID 1 и нажмите «Добавить». Когда все нужные диски будут добавлены нажмите «Далее»

Шаг 4: Назначьте букву массива, выбрав нужную из списка (буква устанавливается автоматически, так что вы можете оставить все так, как предлагает мастер создания массива) и снова нажмите «Далее»

Шаг 5: На этом этапе нужно выбрать файловую систему будущего «зеркала». Выберите «NTFS» и снова нажмите «Далее»

Шаг 6: Проверьте правильность параметров и нажмите «Готово». Система покажет предупреждение, что выбранные диски будут конвертированы в динамические и что вся информация на них будет уничтожена. Нажмите «Да»

Начнется форматирование и синхронизация дисков, после чего наш массив RAID 1 будет создан. Не закрывайте окно «Управление дисками», и повторите шаги с 3 по 6 для второй группы дисков, создав тем самым еще один RAID 1 массив. Оба массива будут отображаться в проводнике Windows как обычные диски.

Теперь нужно объединить только созданные два массива в RAID 0. Для этого:

Шаг 1: Снова запустите «Управление дисками», как это описано выше.

Шаг 2: После этого щелкните правой кнопкой мыши на любом из двух RAID 1 массивов и выберите «Создать чередующийся том»

Шаг 3: Перед вами откроется Мастер создания чередующихся томов. Повторите вышеописанные шаги с третьего по шестой.

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

Как создать программный RAID 10 в операционной системе Windows 10 при помощи командной строки (Windows PowerShell)?

Этот способ создания программного массива RAID 10 менее удобен, чем два предыдущие, однако он отлично подходит для тех, кто любит работать с командной строкой. Также, как и прежде, нам нужно сначала создать два массива RAID 1, а затем объединить их в RAID 0. Итак, давайте создадим массивы RAID 1:

Шаг 1: Щелкните правой кнопкой мыши по «Пуск» и выберите «Windows PowerShell (Администратор)»

Шаг 2: В открывшемся окне введите команду «diskpart» и нажмите «Enter»

Шаг 3: Введите команду «list disk» и снова нажмите «Enter». Эта команда отображает все диски, подключенные к компьютеру.

Шаг 4: Приступаем к созданию наших RAID 1 массивов. Выполните следующие команды (нажимая после каждой «Enter» для ее выполнения):

  • select disk 0 – где « » это номер диска, с которым будут проводится манипуляции;
  • convert dynamic – этак команда преобразует диск в динамический;
  • select volume 0 – выбор нужного диска;
  • add disk=1 – где «1» это номер диска, который будет добавлен в качестве зеркала

Эти же команды нужно выполнить для другой группы дисков, подставив нужные номера дисков.

После того, как мы создали два RAID 1 массива – объединяем их в RAID 0. Для этого снова откройте командную строку или Windows PowerShell и введите следующие команды (после каждой нажимая «Enter» для ее выполнения):

  • list disk – для отображения списка дисков (в этом случае наши RAID 1 массивы будут отображаться как обычные диски);
  • create volume stripe size=n disk=0,1 – где n — размер в мегабайтах, а 0,1 — номера дисков, которые будут включены в массив RAID 0.

После нажатия клавиши «Enter» будет создан новый массив RAID 10.

Как восстановить утерянные данные с RAID 10 массива?

Массив RAID 10, при условии правильной настройки и своевременного и качественного обслуживания отлично справляется со своей наиболее важной задачей — обеспечением сохранности информации на дисках. Однако даже RAID массивы могут выходить из строя, причем причин для этого достаточно немало. Если вы хотите узнать об основных причинах выхода массива RAID 10 из строя — прочтите статью «Причины выхода из строя RAID массивов»

Но что делать, если массив RAID 10 сломался?

В первую очередь, независимо от причины поломки извлеките данные с дисков в безопасное место, поскольку данные могут быть утеряны во время попытки восстановить работоспособность массива RAID 10.

Воспользуйтесь RS RAID Retrieve — лучшим RAID реконструктором на сегодняшний день.

Программа очень проста и удобна в использовании, но самое главное, она поддерживает ВСЕ типы RAID массивов, включая комбинированные, как наш RAID 10.

Кроме этого, в RS RAID Retrieve встроен мощный RAID конструктор с автоматическим режимом, благодаря которому вам не нужно вручную вводить параметры RAID массива. Конструктор сам определяет порядок дисков и другие параметры.

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

Итак, для того, чтобы извлечь данные с дисков массива RAID 10 подключите их к рабочему компьютеру, а затем выполните ряд простых действий:

Шаг 2: Выберите тип добавления RAID массива для сканирования. RS RAID Retrieve предлагает на выбор три варианта:

  • Автоматический режим – позволяет просто указать диски, из которых состоял массив, и программа автоматически определит их порядок, тип массива и остальные параметры;
  • Поиск по производителю – эту опцию следует выбрать, если вам известен производитель вашего RAID контроллера. Эта опция также автоматическая и не требует каких-либо знаний о структуре RAID массива. Наличие данных о производителе позволяют сократить время на построение массива, соответственно она быстрее предыдущей;
  • Создание вручную – эту опцию стоит использовать если вы знаете какой тип RAID массива вы используете. В этом случае вы можете указать все параметры, которые вам известны, а те, которых вы не знаете – программа определит автоматически.

Как видите, процесс восстановления данных с массива RAID 10 достаточно прост и не требует глубоких знаний ПК, соответственно RS RAID Retrieve является отличным приложением как для профессионалов, так и для начинающих пользователей.

ettaluni

Безопасность программного рейда не сильно отличается от аппаратного, но программный рейд позволяет создавать очень гибкие конфигурации, например рейд поверх iscsi дисков, размещенных на разных физических машинах (а это уже повышение надежности, так как выход из строя машины к примеру из-за пожара может чисто территориально не повлиять на другие диски).

У программного рейда наверное есть только одна проблема касаемо надежности - отсутствие энергонезависимого кеша на запись (но никто его и не включает на win), но и не все аппаратные такой имеют. Еще аппаратный может комплектоваться со своим кешем на чтение и своими алгоритмами оптимизации доступа, что повышает скорость результата - т.е. в итоге это вопрос производительности а не надежности.

Зато такие вещи как вендорлок у аппаратных рейдов - создают невероятно большую. головную боль и генерируют лишние траты денег (зачастую очень большие)

leahch

Поддержу! На все 100. Давно отказался от аппаратных рейдов, ибо вендор-лок, даже в рамках одного производителя, убивает все остальное. Готов расстаться с мифическими 5% производительности и немного больший загрузкой CPU. Но уже не готов мучаться с настройками, кривыми интерфейсами и постоянными апдейтами фирмваре.
Хорошо, когда один-два сервера, еще можно мириться, но когда их за 20 - ну нафиг.
Последние годы заказываю серверы или с HBA адаптерами или без всяких аппаратных рейдов.
Замена диска на аппаратном рейде часто выливается в перезапуск сервера, тупление в биосе рейда, магией пересборки и прочей херне.
С програмным рейдом все обычно делается без перезапуска и на горячую. Да про hot spare мне напоминать не нужно.

yurybx

Алексей Черемисин, задам вопрос немного не по теме. В прошлом году купил два RAID-контроллера HP HBA H240. В итоге оказалось, что они не могут быть загрузочными, если сервер не HP (а у меня Supermicro). Пришлось систему устанавливать на Fake RAID (Intel RST). И как их выбирать, эти RAID-контроллеры, чтобы не наступить на подобные грабли?

leahch

Григорий Бондаренко, очень странно, что не можете загрузиться с контроллера. А может быть нужно обновить фирмваре!
Но может быть, что контроллеры не работают в ЕFI режиме, тогда да, загрузиться с них можно только в legacy, а вбиосе нужно прописать подгрузку биос контроллеров.
HBA это не совсем рейд-контроллер, а фактически просто плата с интерфейсами SAS/SATA, используется для подключения дисковых корзин, дисковых полок и отдельных дисков, если и есть рейд-возможности, то они незначительные, а основной режим - JBOD, кеши и расширение интерфейсов.
И если покупаете или собираете сервер, то HBA лучше ставить не на внутренние диски, а на полку или корзину. А загрузку ОС производить с обыкновенных SATA (можно в зеркале). Ставите два sata SSD или HDD (небольшого объема) в софтовом рейде на наплатные sata для системы, а остальное подключаете к HBA.
Тогда и проблем с загрузкой не будет, и будете правильно использовать и диски и адаптеры.
Система зависает, т.к. не может произвести операцию чтения/записи. После перезагрузки сервера автоматически запускается ресинхронизация дисков,

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

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

я стал искать информацию, подтверждающую/опровергающую данное утверждение. И не смог найти.
1.Странно, что система зависает, если не может произвести любую операцию с диском.

тоже момент удивил но если это будет ide на одном контроллере - то вполне реально, точно помню затыки при чтении с cdrom висящем на том же шлейфе что и жесткий диск, тормозили работу этого диска

Как мы понимаем, с современным sata такой проблемы не стоит.

yurybx

Меня ещё смущает вот что: если отключить первый диск и попытаться загрузиться со второго, то на экране появится выбор загрузки из двух пунктов:

По-умолчанию, выбран первый пункт, но система отказывается по нему загружаться. При выборе второго - загружается нормально. То-есть, операционная система считает первый диск как-бы основным. Не получится ли так, что при повреждении первого диска и последующей перезагрузке, ОС попытается синхронизировать диски, считывая данные с первого диска и записывая на второй? Не получим ли мы таким образом сценарий, описанный в статье? Где можно почитать подробнее об этом?

Вообще такое поведение было больше характерно для старых рейд контроллеров.
Лично сталкивался с тем, что первый диск в рейде 1-м считается главным. И соответственно все действительно рушилось, если первый диск рушился. Решалось выставлением второго диска в место первого при сбое и заменой диска, но да бага была.
А вообще сейчас это больше зависит от реализации рейда, точнее его логики. Софтовый рейд может действительно не загрузиться, так как рейд в системе включается только когда загружен драйвер, соответственно до его включения система как-то должна стартовать. Раньше решалось прописыванием загрузчика на второй диск и загрузкой с него.
И еще софтовый рейд не может быть загрузочным, если он не зеркало, т.е. вские raid 0,5,6 и далее - не могут стартовать систему.

Но у софтового рейда есть другая проблема. а именно резервирование производительности.
т.е. его нельзя ставить на системы с высокой нагрузкой.
Поясню: драйвер это по сути программа, с большим приоритетом но программа, т.е. предположим, что вы загрузили свой сервер задачами, которые сильно эксплуатируют диск, память и проц. и в итоге у вас драйвер окажется вытеснен из списка активных задач или памяти - в этот момент у вам все встанет.
Еще одной проблемой может встать восстановление. Помнится мой софтовый рейд 5 из 4-х дисков при восстановлении диска упал в производительности в 16 раз.

anthtml

RAID выбырается с определенной целью и вариантов тут вагон и две тележки:
Во первых RAID необходим только на высоконагруженных системах 0, 0Х, Х0 или на системах требующих безостановочной работы 1, 1Х, Х1 и тд. В остальных случаях достаточно бэкапов и синхронизации.
Во вторых смотрится на аппарат/программа: аппаратный не ест ресурсы системы, т.к. все операции выполняются на отдельном контроллере имеющим полную логику, но в случае полета контроллера, нужно иметь в запасе совместимый аналог, без него массив не оживить. Программный обрабатывает все на ресурсах системы, соответственно собрать его можно на любой системе, также как и восстановить.
Так что все зависит от конкретной ситуации. На "старенький сервер" обычно критические сервисы не выводят, так что вполне возможно хватит и регулярного бэкапа +/- простого программного массива (если он там действительно нужен, а не то что "сервер должен быть априоре с raid")

firedragon

Основная проблема в том что на фэйк рэйде вы надеетесь что 10 это крайне надежно, и не замечаете или просто ждёте, в какой то момент все идёт нах. В остальном они надёжны, но как всегда люди.

Jump

Программный опасен не более чем аппаратный.

Аппаратный работает быстро, без нагрузки на процессор хоста.
Программный работает не так быстро, и нагрузка на процессор хоста может быть очень большой.
Программный гибкий, аппаратный наоборот.
Есть еще куча нюансов.

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

P.S. Самый тугой, очень жрущий ресурсы, ненадежный, и самое главное - не производительный.

(1) Как сказать еще. С фейкрейдом для восстановления мать может понадобиться запасная, с виндовым попроще. юзал под никсами. из плюсов - можно на соседнюю машину переставить - и все будет работать. при аппаратном - можно напороться на взбрык контроллера (5) В линуксе более-мене нормальный. В винде по тесту ахтунг какой-то. Тестил сам лично. При аппаратном проблема была 1 раз. Ступил и потеряли все данные в рейде. Ну бэкапы и ещё раз бэкапы. Такое и с программным и с файк рейдом бывает тоже. (6) >В винде по тесту ахтунг какой-то
можно это повторить на языке цифр?

А какие могут быть проблемы?
Ничуть не хуже аппаратного.

Только вопрос какой именно рэйд вы собрались делать?

(6)+1 рейд не избавляет от необходимости делать бэкапы

(10)Без проблем. Именно его и только его есть смысл делать программно.

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

в одной конторе с 2006го года работает зеркало под w2k3 (мать аппаратно не поддерживает) (0) когда-то давно юзал. В конторе на 200человек, считая охранников, шофёров и уборщиц, два винта в программном рэйде на win2000 под файлопомойник отданы были. Нормально работало все, но там нагрузка была с гулькин нос. Когда один винт таки сдох, его заменили, а потом всяк онтора целый день ждала, пока оно redundancy восстановит. Оно восстановили и всё продолжило работать. (8) Делал объдинение 2 винтов в 1, запустил тест скорости чтения/записи. По факту оказалось что операции чтения записи в win 2003 в рейде в 1,5 раза меньше чем без него.
В линуксе скорость чтения-записи чуть чуть увеличилась, порядка 10%. Было очень давно и голых цифр предоставить не могу. Пишу по памяти (16)Зеркало в windows - скорость чтения равна скорости одного винта, либо чуть больше, запись чуть меньше скорости самого медленного винта. Делал, один проработал 7 лет, потом компания закрылась. Проблем не было. Это на Вин2003 работало.
Полтора года назад настраивал на Вин2012, работает по сей день. Вы, таки, будете смеяться, но все популярные NAS'ы - типа QNAP'а, NetApp'а и разных там Synology это софтовый рейд на пропиетарной ОС. Поэтому ненадёжность и тормознутость софтового рейда это фантазии производителей аппаратных рейдов и догматы динозавров от админства. (0) Не использую принципиально. Если у конторы нет денег на 10ый рейд на адаптеке, то работать с ними нецелесообразно.

(22)С чего бы это?
Чем лучше зеркальный рэйд на адаптеке чем софтварный?

А если говорить про пятый и нулевой - действительно нет смысла, хоть софтом, хоть аппаратно.

(25) В программном работает кэш ОС, который в реализации Microsoft не является шедевром. (26)Да в программном тоже работает кэш.
Так какие собственно проблемы у программного рейда, и какие преимущества у аппаратного? (27) Потому что на аппаратном процессор работает в дополнение к ЦПУ, потому что он специализирован на обработке данных, потому, что кроме обработки данных он больше ни чем не занят, потому что его проектированием, разработкой софта и тестированием занимается фирма, которая на этом собаку съела (например LSI или Adaptec). Потому что практика - главный критерий истины, а на серьезных нагруженных системах используются все-таки аппаратные контроллеры. И за мою 15-летнюю практику у меня бесчисленное количество раз разваливались полуаппаратные массивы, причем только зеркала и ни разу на аппаратном контроллере. Но я не настаиваю, можете учиться только на своих ошибках.

(28)Какая нагрузка на процессор в случае с зеркалированием?
Мизерная!
И за мою не меньшую практику я ни разу не видел развалившегося программного зеркала.

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

Настраиваем программный RAID на UEFI-системах в Windows

Программный RAID пользуется заслуженной популярностью, позволяя легко создавать отказоустойчивые дисковые конфигурации в недорогих системах, отличаясь простотой создания и управления. Но с переходом современных систем на UEFI появились некоторые особенности, касающиеся процесса загрузки, которые следует понимать и принимать во внимание. В противном случае отказоустойчивость может оказаться мнимой и при отказе одного из дисков вы просто не сможете загрузить систему.

Данная инструкция может кому-то показаться сложной, действительно, для создания программного RAID на UEFI-системах требуется довольно много подготовительных действий. Также определенное количество операций придется выполнить и при замене отказавшего диска, но это тема для отдельной статьи. В связи с этим встает вопрос выбора между программным RAID и встроенным в материнскую плату, т.н. fake-raid.

Если брать вопрос производительности, то сегодня он абсолютно неактуален, тем более что вся обработка данных так или иначе осуществляется силами CPU. Основным аргументов в пользу встроенного RAID служит простота его использования, но за это приходится платить совместимостью. Собранные таким образом массивы будут совместимы только со своим семейством контроллеров. К счастью, сейчас уже нет того зоопарка, который был еще лет 10 назад, но все равно, собранный на базе платформы Intel массив вы не запустите на AMD-системе.

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

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

Также есть другая особенность, вытекающая из архитектуры программных RAID массивов, если некритически отказал тот жесткий диск, с которого осуществляется загрузка, то система не будет автоматически загружена со второго, исправного HDD, вы получите ошибку (или BSOD) и вам потребуется вручную изменить порядок загрузки для восстановления работы системы.

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

Конфигурация разделов Windows-систем с UEFI

Прежде всего рассмотрим стандартную конфигурацию разделов, автоматически создаваемую Windows с UEFI, приведенный ниже пример соответствует последним версиям Windows 10 и Windows Server 2016/2019, у более ранних версий Windows разметка может несущественно отличаться.

softraid-uefi-windows-001.jpg

Windows RE - NTFS раздел со средой восстановления, в последних версиях Windows имеет размер в 500 МБ, при создании ему присваиваются специальные атрибуты, препятствующие назначению буквы диска и удалению раздела через консоль управления дисками. В тоже время данный раздел не является необходимым для работы системы, среда восстановления может находиться на системном диске и даже может отсутствовать. Вынос среды восстановления на отдельный раздел преследует две цели: возможность работы на зашифрованных системах и защита от некорректных действий пользователя.

EFI - раздел специального типа с файловой системой FAT32, который содержит загрузчик, вызываемый микропрограммой UEFI. Данный раздел должен находиться в основной таблице разделов и не может быть расположен на динамическом диске. В Windows он ошибочно называется зашифрованным, имеет критическое значение для нормальной работы системы. В современных Windows-системах имеет размер в 100 МБ.

MSR (Microsoft System Reserved) - служебный раздел с файловой системой NTFS, является обязательным для GPT-разметки, которая не позволяет использовать скрытые сектора диска, используется для служебных операций встроенного и стороннего ПО, например, при преобразовании диска в динамический. Является скрытым и не отображается в оснастке управление дисками. Его размер в современных системах - 16 МБ.

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

Производители ПК могут добавлять дополнительные разделы, например, с резервным образом системы для отката к заводским настройкам или собственными инструментами восстановления, чаще всего они имеют специальные GPT-атрибуты, как и у раздела Windows RE.

Подготовка к созданию программного RAID

Будем считать, что вы уже установили операционную систему на один из дисков, в нашем примере будет использоваться Windows Server 2019 установленный на виртуальной машине. Если мы откроем оснастку Управление дисками, то увидим примерно следующую картину:

softraid-uefi-windows-002.jpg

Первым идет раздел Windows RE, размером в 499 МБ, а за ним раздел EFI, который ошибочно именуется шифрованным. Но как мы говорили выше, данная оснастка не дает полного представления о структуре разметки, поэтому запустим утилиту командной строки diskpart и получим список разделов:

Первая команда запускает утилиту, вторая выбирает первый диск (диск 0) и третья выводит список разделов.

softraid-uefi-windows-003.jpg

Здесь присутствуют все существующие на диске разделы, включая MSR, размером в 16 МБ. Теперь нам нужно воспроизвести аналогичную разметку на втором жестком диске. Будем считать, что вы еще не вышли из утилиты diskpart, поэтому выберем второй жесткий диск (диск 1) и очистим его:

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

Преобразуем диск в GPT:

При преобразовании на диске будет автоматически создан MSR раздел, нам он пока не нужен, поэтому удалим его командой:

После чего убедимся, что диск не содержит разделов.

softraid-uefi-windows-004.jpg

Теперь можно создавать разметку. Разделы должны идти в том же порядке и с тем же типом, что и на первом диске. Поэтому первым создадим раздел восстановления, он не является обязательным и не влияет на работу системы. В принципе его можно даже не форматировать, но во избежание каких-либо недоразумений в дальнейшем мы рекомендуем создать раздел с теми же атрибутами, что и оригинальный раздел восстановления.

На всякий случай явно выберем диск и создадим на нем раздел размером в 499 МБ, который отформатируем в NTFS:

Затем зададим ему нужные GPT-атрибуты:

Идентификатор de94bba4-06d1-4d40-a16a-bfd50179d6ac задает тип раздела как Windows RE, а атрибут 0x8000000000000001 препятствует назначению буквы диска и помечает раздел как обязательный для работы системы, во избежание его удаления из оснастки управления дисками.

Следующим шагом создадим раздел EFI:

Если все сделано правильно, то вы должны получить следующую схему разметки, которая будет полностью повторять (за исключением системного раздела) разметку первого диска.

softraid-uefi-windows-005.jpg

После чего систему обязательно следует перезагрузить.

Создание программного RAID

Прежде всего преобразуем диски в динамические, это можно сделать в оснастке Управление дисками:

softraid-uefi-windows-006.jpg

или утилитой diskpart:

Затем добавим зеркало к системному диску через графический интерфейс

softraid-uefi-windows-007.jpg

или с помощью diskpart:

После чего следует обязательно дождаться ресинхронизации данных, в зависимости от скорости и объема дисков это может занять некоторое время.

softraid-uefi-windows-009.jpg
Настройка загрузчика EFI и его копирование на второй раздел

Снова запустим утилиту diskpart и присвоим буквы EFI разделам на дисках, но перед этим уточним расположение нужного нам раздела:

softraid-uefi-windows-010.jpg

Как видим интересующий нас раздел имеет номер 2, выберем его и присвоим букву:

Повторим аналогичные манипуляции со вторым диском:

Выйдем из утилиты diskpart (команда exit) и перейдем в EFI раздел первого диска:

Для просмотра текущих точек загрузки выполните:

softraid-uefi-windows-011.jpg

Вывод команды покажет нам единственную запись диспетчера загрузки (на текущем EFI-разделе) и две записи загрузчика Windows, на каждом из зеркальных томов. Нам потребуется создать второй экземпляр диспетчера загрузки:

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

softraid-uefi-windows-012.jpg

В фигурных скобках должен быть указан идентификатор, полученный на предыдущем шаге.

После чего экспортируем BCD-хранилище загрузчика:

И скопируем содержимое EFI-раздела на второй диск:

softraid-uefi-windows-013.jpg

Ошибка при копировании активного экземпляра BCD-хранилища - это нормально, собственно поэтому мы и сделали его экспорт, вместо того, чтобы просто скопировать. Затем переименуем копию хранилища на втором диске:

и удалим ее с первого:

Осталось удалить буквы дисков EFI-разделов, для этого снова запустим diskpart:

Теперь можно перезагрузить систему и в загрузочном меню BIOS выбрать Windows Boot Manager 2, затем Windows Server - вторичный плекс - это обеспечит использование EFI-загрузчика и системного раздела второго диска. Если вы все сделали правильно - загрузка будет удачной. Таким образом у нас будет полноценное зеркало системного раздела на динамических дисках в UEFI-системе.

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