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

В этой статье вы найдёте понятные объяснения, команды и рабочие процессы, необходимые для создания и поддержки 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 0 | 2 | Максимальная скорость чтения/записи (striping) | Сумма всех дисков | Кэш, временные рабочие наборы, игровые/медиа хранилища без важности данных |
| RAID 1 | 2 | Зеркалирование — высокая доступность | Размер самого малого диска | Системные диски, критичные данные при невысокой ёмкости |
| RAID 5 | 3 | Баланс скорости и резервирования (1 блок parity) | Сумма − 1 диск | Файловые хранилища с чтено-ориентированными нагрузками |
| RAID 6 | 4 | Двойная parity — устойчив к двум сбоям | Сумма − 2 диска | БД/хранилища с высокой важностью данных и большим количеством дисков |
| RAID 10 | 4 (пары) | 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
В примере ниже мы используем три диска по 1 ГБ для наглядности. В рабочем окружении применяйте реальные размеры.
Разметка дисков
Разметка дисков — деструктивная операция. Сделайте бэкап важных данных заранее.
Пример разметки на /dev/sdb:
sudo fdisk /dev/sdbВ интерактивном fdisk выполните:
- n — создать новую партицию
- p — сделать её primary
- 1 — номер партиции
- t — изменить тип
- fd — код типа Linux RAID
- w — записать изменения и выйти
Повторите для /dev/sdc и /dev/sdd.
Сообщите ОС об изменениях:
sudo partprobe /dev/sdb
sudo partprobe /dev/sdc
sudo partprobe /dev/sddПроверьте таблицу разделов ещё раз:
sudo fdisk -l
Создание 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
Файловая система и точка монтирования
Форматируем массив и создаём каталог:
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
Сохранение конфигурации 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
- Обнаружьте потерю:
cat /proc/mdstat
sudo mdadm --detail /dev/md0- Пометьте диск как failed и удалите из массива (если система не сделала это автоматически):
sudo mdadm --fail /dev/md0 /dev/sdb1
sudo mdadm --remove /dev/md0 /dev/sdb1Физически замените диск (если есть hot-swap) или выключите и замените.
Разметьте новый диск так же, как старый (тип partition fd) и примените partprobe:
sudo fdisk /dev/sdb
# выполнить ту же разметку
sudo partprobe /dev/sdb- Добавьте раздел в массив:
sudo mdadm --add /dev/md0 /dev/sdb1- Наблюдайте за процессом rebuild:
watch -n 5 cat /proc/mdstat- После завершения проверьте целостность и обновите конфиг mdadm при необходимости:
sudo mdadm --detail --scan | sudo tee /etc/mdadm/mdadm.conf
sudo update-initramfs -uImportant: во время 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 до наступления инцидента.

Спасибо за внимание. Есть ли у вас конкретная конфигурация дисков или цель (производительность/ отказоустойчивость)? Могу помочь подобрать оптимальный уровень и шаги настройки.
Похожие материалы
Поддельные сообщения об ошибке в Windows
Как изменить фон Instagram Stories
Steam Deck как портативный ПК
Как использовать стоковое видео в проектах
Как выбрать игровой контроллер — полное руководство