Вопрос или проблема
У меня есть SOFTRAID-5 из семи 2TB дисков, теперь после отключения электроэнергии RAID не запускается и после принудительной сборки,
sudo mdadm --assemble --scan -v --force
он удалил два рабочих диска (sde1 и sdf1), поэтому теперь я не могу даже восстановить. Я вижу статус mdadm следующим образом.
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
- 0 0 1 removed
- 0 0 2 removed
3 8 1 3 active sync /dev/sda1
4 8 113 4 active sync /dev/sdh1
5 8 33 5 active sync /dev/sdc1
6 8 96 6 active sync /dev/sdg
2 8 65 - faulty /dev/sde1
7 8 81 - spare /dev/sdf1
Полагаю, мой лучший шанс – вернуть один из вышедших из строя дисков в массив, а затем восстановить оттуда. Я проверил статус всех дисков, кажется, /dev/sd[abcfh]1 имеют одинаковое количество событий (11939), а /dev/sde1 имеет гораздо меньшее количество (3351) – не уверен, как это произошло, так что какой был бы наилучший вариант, чтобы извлечь что-то из этого хаоса, где два диска были удалены? Я видел, что существует несколько стратегий, описанных в вики, одна из них – принудительная сборка (что я пробовал, и это не удалось из-за того, что два диска были не в сети), другая – это создание нового массива с той же конфигурацией RAID, но с принудительным добавлением резервного диска (/dev/sdf1), учитывая, что у него одинаковое количество событий – я не знаю, следует ли мне что-то сделать, чтобы сказать mdadm включить /dev/sdf1, даже если он был отмечен как резервный.
Ответ или решение
Для решения вашей проблемы с программным RAID5, состоящим из семи дисков по 2 ТБ, вашему вниманию предлагается следующее пошаговое руководство. Важно отметить, что манипуляции с RAID-массивом могут привести к потере данных, поэтому всегда рекомендуется делать резервные копии важных данных перед выполнением операций.
1. Анализ текущего состояния массива RAID5
В результате сбоя электропитания массив оказался в нерабочем состоянии, и после принудительного сбора с помощью команды mdadm --assemble --scan -v --force
, были исключены два работающих диска: /dev/sde1 и /dev/sdf1. Текущее состояние дисков указывает, что /dev/sde1 отмечен как неисправный, а /dev/sdf1 — как запасной.
2. Проверка событий дисков
Поскольку три диска /dev/sd[abcfh]1 имеют одинаковое количество событий (11939), а диск /dev/sde1 – значительно меньшее количество (3351), это может указывать на то, что /dev/sde1 не синхронизировался должным образом перед отказом.
3. Восстановление RAID5
Для восстановления массива с минимальными потерями, можно попробовать следующее:
- Начнем с попытки принудительно добавить диск /dev/sdf1 обратно в массив, поскольку он имеет необходимое количество событий. Используйте следующую команду:
sudo mdadm --add /dev/md0 /dev/sdf1
Если диск /dev/sdf1 был отмечен как запасной, инициализация восстановления массива должна начаться автоматически, если состав массива позволяет.
4. Воссоздание массива
Если предыдущий шаг не помог, возможно, потребуется воссоздать массив с теми же параметрами, что и раньше. Обратите внимание, что данный процесс может привести к потере данных, если он выполнен некорректно. Используйте команду:
sudo mdadm --create /dev/md0 --level=5 --raid-devices=7 /dev/sdb1 /dev/sda1 /dev/sdh1 /dev/sdc1 /dev/sdg /dev/sdf1 missing
Здесь нужно добавить параметр --assume-clean
, чтобы избежать перезаписи данных:
sudo mdadm --create /dev/md0 --level=5 --raid-devices=7 /dev/sdb1 /dev/sda1 /dev/sdh1 /dev/sdc1 /dev/sdg /dev/sdf1 missing --assume-clean
5. Проверка и мониторинг состояния
После выполнения команды, необходимо проверить статусы с помощью:
sudo mdadm --detail /dev/md0
Отслеживайте консольные сообщения на предмет ошибок.
6. Планирование резервного копирования
Чтобы предотвратить подобные проблемы в будущем, настройте резервное копирование критически важных данных и изучите возможность использования источника бесперебойного питания (ИБП), чтобы минимизировать влияние перебоев в электроснабжении на оборудование.
Выполнять операции с RAID всегда следует с осторожностью. Если описанные шаги не помогают, рассмотрите возможность обращения к профессионалам по восстановлению данных.