Восстановление массива mdadm RAID 5 с несколькими неисправными дисками

У меня был 5-дисковый массив Raid5, и у меня произошел сбой двух дисков. У меня есть свежие диски для замены, но когда я пытаюсь запустить его, он жалуется на «/ dev / md / 0, собранный из 3 дисков – недостаточно для запуска массива»

данные суперблока с одного из оригинальных дисков:

 mdadm -E / dev / sdb / dev / sdb: Магия: a92b4efc Версия: 1.2 Карта возможностей: 0x1 UUID массива: eece6340: 50c5f548: fec6e083: 8e175d25 Имя: nas2: 0 (локально для хоста nas2) Время создания: сб. 11 июня 15 : 08: 47 2016 Уровень рейда: raid5 Рейд-устройства: 5 Доступен Dev Размер: 3906767024 (1862.89 ГиБ 2000.26 ГБ) Размер массива: 7813533696 (7451.57 ГиБ 8001.06 ГБ) Используемый размер Dev: 3906766848 (1862.89 ГБ 2000.26 ГБ) Смещение данных: 262144 сектора Суперсмещение: 8 секторов Неиспользуемое пространство: до = 262056 секторов, после = 176 секторов Состояние: чистый UUID устройства: f99f8f44: bbf30563: 35183897: 5563d56a Внутренний битовый образ: 8 секторов из суперблока Время обновления: Вс 12 августа 15:01:12 2018 Bad Журнал блокировки: доступно 512 записей со смещением 72 сектора. Контрольная сумма: 3c38edaa - правильная. События: 364523 Роль устройства: активное устройство 0 Состояние массива: AA..A ('A' == активный, '.' == отсутствует, 'R' = = замена) 

и вот результат попытки собрать:

 mdadm: / dev / sdb идентифицируется как член / dev / md / 0, слот 0.
 mdadm: / dev / sdf определяется как член / dev / md / 0, слот 4.
 mdadm: / dev / sdc определяется как член / dev / md / 0, слот 1.
 mdadm: добавлен / dev / sdc в / dev / md / 0 как 1
 mdadm: устройство без обновления для слота 2 из / dev / md / 0
 mdadm: устройство без обновления для слота 3 из / dev / md / 0
 mdadm: добавлен / dev / sdf в / dev / md / 0 как 4
 mdadm: добавлен / dev / sdb в / dev / md / 0 как 0
 mdadm: / dev / md / 0 собран из 3 дисков - недостаточно для запуска массива.
 mdadm: ищу устройства для дальнейшей сборки
 mdadm: массивы не найдены в конфигурационном файле или автоматически

Есть ли способ клонировать данные суперблока (например, dd) на новый диск, чтобы массив мог быть собран?

2 Solutions collect form web for “Восстановление массива mdadm RAID 5 с несколькими неисправными дисками”

RAID 5

Выдержка из статьи в Википедии :

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

Поэтому я пришел к выводу, что если эти два накопителя действительно мертвы, assembly массива теперь невозможна, извините.

Вы не сможете собрать без потери данных массив RAID-5 с более чем одним неисправным диском. Теоретически, вы можете читать данные с остальных дисков, но между ними не будет частей.

Структура RAID-5 с 5 дисками выглядит примерно так: D – это блоки данных, P – блоки четности.

 12345 DDDDP DDDPD DDPDD DPDDD PDDDD 

Если два любых диска не работают, у вас есть 8 блоков данных и 2 блока четности, пропущенные из каждых 20 блоков данных и 5 блоков четности. Как работает четность, система может восстановить один отсутствующий кусок данных, если четность не нарушена (для каждой строки в диаграмме). С двумя отсутствующими порциями данных нет уникального способа восстановить порции. Таким образом, оставшиеся блоки четности бесполезны, и у вас остается 12 блоков данных из каждых 20. Вы потеряли 40% данных.

Согласно справочной странице mdadm , блоки по умолчанию составляют 512 кБ, поэтому вы можете найти неповрежденные fragmentы данных размером до 1,5 МБ. Но код файловой системы не будет рад видеть, что основные fragmentы метаданных отсутствуют, а любые файлы, размер которых превышает этот, с большой вероятностью будут отсутствовать, даже если вы сможете найти правильное устройство, блокирующее данные файла.

Interesting Posts

Настройка поведения фильтра NAT с помощью iptables

Как сделать цвета дисплея Vim указанными цветовыми кодами?

Преобразование файлов в OGG с помощью FFMPEG создает чрезвычайно большой файл

Как Debian выбирает или устанавливает приоритеты для соединений IPv4 и IPv6?

Что означает восклицательный знак при разностном выходе?

Как распечатать (часть) справочную страницу?

Объединение операторов sed

Греп для числа в строке

Есть ли способ узнать оставшееся время автономной работы вашей клавиатуры / мыши в Ubuntu / Linux?

Как определить, какие возможности необходимы для команды?

как подавить интерпретацию восьмеричного числа bash? (интерпретироваться как десятичное)

Обзор результатов GREP и FIND в Xemacs

Как копировать и переименовывать файлы, найденные в функции «найти» Linux?

Не удалось выполнить настройку VConsole: виртуальная консоль / dev / tty0 не находится в K_XLATE или K_UNICODE

Присоедините два файла, соответствующие столбцу, с повторениями

Linux и Unix - лучшая ОС в мире.