Гид по технологиям

RAID в Linux: руководство по настройке, режимы и эксплуатации

9 min read DevOps Обновлено 18 Apr 2026
RAID в Linux: настройка, руководство, команды
RAID в Linux: настройка, руководство, команды

RAID — это способ объединить несколько дисков для повышения производительности, резервирования или и того и другого. В Linux чаще всего используют mdadm (software RAID). В этой статье — сравнение уровней RAID, пошаговая настройка RAID 5, советы по обслуживанию, план действий при отказе диска и критерии приёмки.

linux-hdd-array

В этой статье вы найдёте понятные объяснения, команды и рабочие процессы, необходимые для создания и поддержки RAID-массивов в Linux с помощью mdadm. Подойдёт как для домашнего сервера, так и для начального уровня в небольшой инфраструктуре.

Оглавление

  • Что такое RAID
  • Сравнение популярных уровней RAID
  • Когда RAID недостаточно и нужны бэкапы
  • Подготовка дисков и установка mdadm
  • Пошаговая сборка RAID 5 (пример)
  • Файловая система и монтирование
  • Мониторинг, обслуживание и тестирование
  • Восстановление массива после отказа диска — пошаговый план
  • Плюсы и минусы, альтернативы
  • Критерии приёмки и чек‑листы ролей
  • Краткий глоссарий и FAQ

Что такое RAID

RAID (Redundant/Independent Array of Inexpensive/Independent Disks) — это объединение нескольких физических дисков в единый логический массив для достижения одной или нескольких целей:

  • Повышение скорости ввода/вывода (через striping — распределение данных по дискам).
  • Защита от выхода из строя отдельных дисков (через mirroring или parity).
  • Комбинация скорости и надёжности.

Определение: parity — контрольная информация, позволяющая восстановить данные при потере одного или более дисков.

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

Сравнение популярных уровней RAID

УровеньМинимум дисковЧто даётДисковая ёмкостьПрименение
RAID 02Максимальная скорость чтения/записи (striping)Сумма всех дисковКэш, временные рабочие наборы, игровые/медиа хранилища без важности данных
RAID 12Зеркалирование — высокая доступностьРазмер самого малого дискаСистемные диски, критичные данные при невысокой ёмкости
RAID 53Баланс скорости и резервирования (1 блок parity)Сумма − 1 дискФайловые хранилища с чтено-ориентированными нагрузками
RAID 64Двойная parity — устойчив к двум сбоямСумма − 2 дискаБД/хранилища с высокой важностью данных и большим количеством дисков
RAID 104 (пары)Striping + mirroring — высокая производительность и отказоустойчивостьСумма/2 (пары)Базы данных, виртуализация, высоконагруженные сервисы

Notes: при смешении дисков разных объёмов массив ограничится размером самого маленького диска. Аппаратный RAID использует контроллер — снимает нагрузку с CPU, ПО RAID (mdadm) — использует ресурсы процессора.

Когда RAID недостаточно

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

Рекомендация: храните как минимум одну независимую копию данных (off-site или в облаке) и проверяйте резервные копии.

RAID 0: когда использовать

RAID 0 распределяет данные по нескольким дискам (striping), даёт прирост производительности, но не даёт резервирования. Если любой диск выходит из строя — массив теряет все данные.

Когда подходит: временные рабочие наборы, кеши, видео/рендер-сторедж, где потеря данных допустима.

RAID 1: зеркалирование

RAID 1 создаёт точную копию данных на каждом диске массива. При выходе из строя отдельных дисков данные остаются доступными. Вместо объёма суммы дисков вы получите объём равный самому маленькому диску.

Когда подходит: системные диски серверов, критичные конфигурационные данные.

RAID 5 и RAID 6: баланс скорости и надёжности

RAID 5 хранит parity, эквивалентную одному диску; RAID 6 — двух дисков. RAID 5 выдерживает потерю одного диска; RAID 6 — двух дисков. В период реконструкции (rebuild) массив работает в деградированном режиме и может быть медленнее.

Пример: 4×100 ГБ в RAID 5 → доступно 300 ГБ; в RAID 6 → 200 ГБ.

Важно: время восстановления зависит от размера дисков и нагрузки. На больших массивах вероятность появления второго отказа во время rebuild увеличивается, потому RAID 6 часто предпочтительнее при больших объёмах и количестве дисков.

RAID 10: сочетание скорости и зеркалирования

RAID 10 — это спровоцированное сочетание striping и mirroring: данные разбиваются на полосы, а каждая полоса зеркалируется на вторую пару дисков. Даёт высокую производительность и высокую отказоустойчивость (в зависимости от того, какие диски выйдут из строя).

Когда подходит: БД с высокой нагрузкой, виртуализация.

Аппаратный RAID vs программный RAID

  • Аппаратный RAID: выполняется контроллером (обычно серверные контроллеры), снимает нагрузку с CPU, но добавляет зависимость от контроллера при переносе дисков.
  • Программный RAID (mdadm): гибкий, переносим между системами, бесплатный, но использует ресурсы процессора.

Для домашних/мелких инсталляций mdadm — простой и надёжный вариант.

Подготовка: установка mdadm и проверка дисков

Установите утилиту mdadm (пример для Debian/Ubuntu):

sudo apt install mdadm

Проверьте текущие диски в системе:

sudo fdisk -l

configure raid hdd array linux

В примере ниже мы используем три диска по 1 ГБ для наглядности. В рабочем окружении применяйте реальные размеры.

Разметка дисков

Разметка дисков — деструктивная операция. Сделайте бэкап важных данных заранее.

Пример разметки на /dev/sdb:

sudo fdisk /dev/sdb

В интерактивном fdisk выполните:

  1. n — создать новую партицию
  2. p — сделать её primary
  3. 1 — номер партиции
  4. t — изменить тип
  5. fd — код типа Linux RAID
  6. w — записать изменения и выйти

Повторите для /dev/sdc и /dev/sdd.

Сообщите ОС об изменениях:

sudo partprobe /dev/sdb
sudo partprobe /dev/sdc
sudo partprobe /dev/sdd

Проверьте таблицу разделов ещё раз:

sudo fdisk -l

configure raid hdd array linux

Создание RAID 5 (пошагово)

После подготовки дисков создаём массив RAID 5 из трёх разделов /dev/sdb1, /dev/sdc1, /dev/sdd1:

mdadm -C /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

Разбор ключей:

  • mdadm — инструмент для управления md-устройствами
  • -C — create (создать массив)
  • /dev/md0 — имя создаваемого md-устройства
  • –level=raid5 — уровень
  • –raid-devices=3 — количество устройств

Посмотреть статус:

sudo mdadm --detail /dev/md0

configure raid hdd array linux

Файловая система и точка монтирования

Форматируем массив и создаём каталог:

sudo mkfs.ext4 /dev/md0
sudo mkdir /data

Временно монтируем:

mount /dev/md0 /data/

Чтобы монтирование выполнялось автоматически при старте, добавьте запись в /etc/fstab. Откройте файл редактором:

sudo nano /etc/fstab

Добавьте строку (пример для ext4):

/dev/md0  /data  ext4  defaults  0  2

Сохраните и примените изменения:

sudo mount -a

Проверьте доступное место:

df -h

configure raid hdd array linux

Сохранение конфигурации mdadm

Чтобы при загрузке система могла автоматически собрать массив, запишите конфигурацию в /etc/mdadm/mdadm.conf (или /etc/mdadm.conf в некоторых дистрибутивах):

sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
sudo update-initramfs -u

Строка в конфиге будет содержать UUID массива и устройства — это помогает при автоматической сборке на старте.

Мониторинг и обслуживание

Регулярный мониторинг помогает быстро обнаружить деградацию массива:

  • Используйте mdadm –detail или /proc/mdstat для проверки:
cat /proc/mdstat
sudo mdadm --detail /dev/md0
  • Настройте уведомления mail или systemd-тревоги при изменениях массива. mdadm может отправлять почтовые уведомления при ошибках:
# пример запуска демона мониторинга
sudo systemctl enable --now mdmonitor

(Настройка почты и уведомлений зависит от вашей среды и MTA.)

Восстановление после отказа диска — runbook

  1. Обнаружьте потерю:
cat /proc/mdstat
sudo mdadm --detail /dev/md0
  1. Пометьте диск как failed и удалите из массива (если система не сделала это автоматически):
sudo mdadm --fail /dev/md0 /dev/sdb1
sudo mdadm --remove /dev/md0 /dev/sdb1
  1. Физически замените диск (если есть hot-swap) или выключите и замените.

  2. Разметьте новый диск так же, как старый (тип partition fd) и примените partprobe:

sudo fdisk /dev/sdb
# выполнить ту же разметку
sudo partprobe /dev/sdb
  1. Добавьте раздел в массив:
sudo mdadm --add /dev/md0 /dev/sdb1
  1. Наблюдайте за процессом rebuild:
watch -n 5 cat /proc/mdstat
  1. После завершения проверьте целостность и обновите конфиг mdadm при необходимости:
sudo mdadm --detail --scan | sudo tee /etc/mdadm/mdadm.conf
sudo update-initramfs -u

Important: во время rebuild массив работает в деградированном режиме; избегайте тяжёлых операций ввода/вывода.

Тестирование и критерии приёмки

Критерии приёмки для новой RAID-конфигурации:

  • Массив собирается автоматически после перезагрузки.
  • Файловая система монтируется и доступна по ожидаемому пути.
  • Проверка целостности (mdadm –detail) не показывает failed/removed.
  • Тестовое чтение/запись успешны в пределах ожидаемой производительности (сравните с базовой одиночной дисковой производительностью).
  • Настроены оповещения о состоянии массива.

Тестовые шаги:

  • Симуляция отказа: отключите один диск (или пометьте как failed) и убедитесь, что массив продолжает работать.
  • Вставьте/добавьте диск и проверьте завершение rebuild.

Полезные сниппеты и конфиги (cheat sheet)

Пример строки для /etc/mdadm/mdadm.conf:

ARRAY /dev/md0 metadata=1.2 UUID=your-uuid-here name=your-hostname:0

Просмотр статуса:

cat /proc/mdstat
sudo mdadm --detail /dev/md0

Остановка и удаление массива (внимание — удаляет данные):

sudo umount /data
sudo mdadm --stop /dev/md0
sudo mdadm --remove /dev/md0

Риски, ограничения и когда лучше выбрать альтернативы

  • Большие диски увеличивают время rebuild; вероятность второго отказа во время rebuild растёт с размером массива.
  • RAID не защищает от человеческих ошибок, вирусов или логических повреждений.
  • При смешивании дисков разного объёма свободное место ограничено самым маленьким диском.

Альтернативы:

  • ZFS (использует Copy-on-Write, контроль целостности и встроенное сжатие) — хорош для серверов хранения данных и если вы готовы изучать новую файловую систему.
  • Btrfs — поддерживает RAID-подобные режимы, snapshots, но требует осторожности при эксплуатации.
  • Аппаратные RAID-контроллеры — для производительных корпоративных сред.

Чек‑листы ролей

Для системного администратора:

  • Проверить таблицу разделов и метки дисков.
  • Настроить mdadm.conf и initramfs.
  • Настроить мониторинг и оповещения.
  • Документировать последовательность действий при отказе.

Для домашнего пользователя:

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

Мини‑методология выбора уровня RAID (эвристика)

  • Нужна ли вам высокая скорость записи/чтения и данные можно потерять? — RAID 0.
  • Нужна полная надёжность при малом объёме? — RAID 1.
  • Нужно сочетание скорости и защиты, есть 3+ диска? — RAID 5.
  • Большие массивы или повышенная требовательность к надёжности? — RAID 6.
  • Максимум скорости и зеркалирования (пары дисков)? — RAID 10.

Краткий глоссарий

  • mdadm — утилита Linux для управления программными RAID.
  • md — устройство Linux (например, /dev/md0) — итоговый RAID.
  • striping — распределение данных по дискам.
  • mirroring — зеркалирование данных на несколько дисков.
  • parity — контрольная информация для восстановления.

Частые вопросы (FAQ)

Нужны ли одинаковые диски?

Нет, mdadm работает с дисками разных размеров, но объём массива ограничится размером самого маленького диска в каждой «полосе». Для предсказуемости и производительности лучше использовать одинаковые модели.

Можно ли добавить диск в существующий массив и увеличить размер?

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

Сколько времени занимает rebuild?

Зависит от объёма данных, скорости дисков и нагрузки. На больших массивах это может занимать часы или дни.

Как mdadm уведомляет об ошибках?

mdadm может отправлять почтовые уведомления и интегрироваться с systemd/логерами. Проверьте настройки mdadm.conf и локальный MTA.

Локальные рекомендации и подводные камни

  • В средах с нестабильным электропитанием используйте UPS: деградация и rebuild на фоне потерянного питания увеличивают риск.
  • На десктопе/домашнем сервере срок службы дисков может отличаться — проверяйте SMART (smartctl).
  • В России и других странах учитывайте доступность одинаковых моделей дисков при расширении массива: держите запасной диск того же поколения.

Концовка и контрольные выводы

RAID — мощный инструмент для повышения доступности и/или производительности, но это не заменитель бэкапов. mdadm в Linux даёт гибкость и переносимость, подходящую для большинства домашних и малых корпоративных нужд.

Ключевые рекомендации:

  • Планируйте резервное копирование отдельно от RAID.
  • Используйте мониторинг и автоматические оповещения.
  • Тестируйте процедуру замены и rebuild до наступления инцидента.

configure raid hdd array linux

Спасибо за внимание. Есть ли у вас конкретная конфигурация дисков или цель (производительность/ отказоустойчивость)? Могу помочь подобрать оптимальный уровень и шаги настройки.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Поддельные сообщения об ошибке в Windows
Windows

Поддельные сообщения об ошибке в Windows

Как изменить фон Instagram Stories
Instagram

Как изменить фон Instagram Stories

Steam Deck как портативный ПК
Гаджеты

Steam Deck как портативный ПК

Как использовать стоковое видео в проектах
Видео

Как использовать стоковое видео в проектах

Как выбрать игровой контроллер — полное руководство
Гейминг

Как выбрать игровой контроллер — полное руководство

Miro — руководство по началу работы
Визуальная коллаборация

Miro — руководство по началу работы