Вопрос или проблема
У меня был массив хранения AXS-6320 с 8 жесткими дисками по 1 Тб (RAID5). Внезапно он перестал распознавать массив и видит только отдельные диски. Я боюсь, что создание нового массива с нуля приведет к обнулению всех данных. (В его консоли управления, конечно, есть опция восстановления, но она не дала положительных результатов).
Я установил все 8 HDD на ПК с Linux. Они обозначены как sda до sdh. Проблема в том, что эта система НЕ имеет суперблока в каком-либо распознаваемом формате.
root@PartedMagic:~# mdadm --examine -e imsm /dev/sda
mdadm: no IMSM anchor on /dev/sda
mdadm: Failed to load all information sections on /dev/sda
root@PartedMagic:~# mdadm --examine -e ddf /dev/sda
mdadm: no DDF anchor found on /dev/sda
root@PartedMagic:~# mdadm --examine -e 1 /dev/sda
mdadm: No super block found on /dev/sda (Expected magic a92b4efc, got 00000000)
mdadm: No super block found on /dev/sda (Expected magic a92b4efc, got d08ec033)
mdadm: No super block found on /dev/sda (Expected magic a92b4efc, got 00000000)
То, что у него есть, это:
root@PartedMagic:~# dd if=/dev/sda skip=1 count=1 |hexdump -C
00000000 24 52 61 69 64 53 44 24 08 00 00 00 08 00 00 00 |$RaidSD$........|
00000010 0a 5f 0e 03 f6 b2 f6 b2 f6 b2 f6 b2 f6 b2 f6 b2 |._..............|
00000020 f6 b2 f6 b2 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 00 00 09 23 0e 2a 13 2c 0a 23 11 23 13 28 |.....#.*.,.#.#.(|
00000040 0a 1f 0a 1e 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000050 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 |................|
00000060 00 54 6a 74 00 00 00 00 52 61 69 64 20 53 65 74 |.Tjt....Raid Set|
00000070 20 23 20 30 30 20 20 20 00 00 00 00 00 00 00 00 | # 00 ........|
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
---
root@PartedMagic:~# dd if=/dev/sdh skip=1 count=1 |hexdump -C
00000000 24 52 61 69 64 53 44 24 08 00 00 00 08 00 00 00 |$RaidSD$........|
00000010 ce 01 00 00 00 00 f6 b2 f6 b2 f6 b2 f6 b2 f6 b2 |................|
00000020 f6 b2 f6 b2 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 00 00 00 00 0e 2a 13 2c 0a 23 11 23 13 28 |.......*.,.#.#.(|
00000040 0a 1f 0a 1e 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000050 00 00 00 00 07 00 00 00 02 00 00 00 02 00 00 00 |................|
00000060 00 54 6a 74 00 00 00 00 52 61 69 64 20 53 65 74 |.Tjt....Raid Set|
00000070 20 23 20 30 30 20 20 20 00 00 00 00 00 00 00 00 | # 00 ........|
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
Похоже,
0[8] – это сигнатура,
x08[4] – количество дисков
x10[4] – какой-то серийный номер
x54[4] – идентификатор диска
сканируя диск дальше, я нашел фактический сектор раздела по смещению x41000
root@PartedMagic:~# dd if=/dev/sda skip=520 count=1 |hexdump -C
00000000 33 c0 8e d0 bc 00 7c 8e c0 8e d8 be 00 7c bf 00 |3.....|......|..|
00000010 06 b9 00 02 fc f3 a4 50 68 1c 06 cb fb b9 04 00 |.......Ph.......|
00000020 bd be 07 80 7e 00 00 7c 0b 0f 85 0e 01 83 c5 10 |....~..|........|
00000030 e2 f1 cd 18 88 56 00 55 c6 46 11 05 c6 46 10 00 |.....V.U.F...F..|
00000040 b4 41 bb aa 55 cd 13 5d 72 0f 81 fb 55 aa 75 09 |.A..U..]r...U.u.|
00000050 f7 c1 01 00 74 03 fe 46 10 66 60 80 7e 10 00 74 |....t..F.f`.~..t|
00000060 26 66 68 00 00 00 00 66 ff 76 08 68 00 00 68 00 |&fh....f.v.h..h.|
00000070 7c 68 01 00 68 10 00 b4 42 8a 56 00 8b f4 cd 13 ||h..h...B.V.....|
00000080 9f 83 c4 10 9e eb 14 b8 01 02 bb 00 7c 8a 56 00 |............|.V.|
00000090 8a 76 01 8a 4e 02 8a 6e 03 cd 13 66 61 73 1c fe |.v..N..n...fas..|
000000a0 4e 11 75 0c 80 7e 00 80 0f 84 8a 00 b2 80 eb 84 |N.u..~..........|
000000b0 55 32 e4 8a 56 00 cd 13 5d eb 9e 81 3e fe 7d 55 |U2..V...]...>.}U|
000000c0 aa 75 6e ff 76 00 e8 8d 00 75 17 fa b0 d1 e6 64 |.un.v....u.....d|
000000d0 e8 83 00 b0 df e6 60 e8 7c 00 b0 ff e6 64 e8 75 |......`.|....d.u|
000000e0 00 fb b8 00 bb cd 1a 66 23 c0 75 3b 66 81 fb 54 |.......f#.u;f..T|
000000f0 43 50 41 75 32 81 f9 02 01 72 2c 66 68 07 bb 00 |CPAu2....r,fh...|
00000100 00 66 68 00 02 00 00 66 68 08 00 00 00 66 53 66 |.fh....fh....fSf|
00000110 53 66 55 66 68 00 00 00 00 66 68 00 7c 00 00 66 |SfUfh....fh.|..f|
00000120 61 68 00 00 07 cd 1a 5a 32 f6 ea 00 7c 00 00 cd |ah.....Z2...|...|
00000130 18 a0 b7 07 eb 08 a0 b6 07 eb 03 a0 b5 07 32 e4 |..............2.|
00000140 05 00 07 8b f0 ac 3c 00 74 09 bb 07 00 b4 0e cd |......<.t.......|
00000150 10 eb f2 f4 eb fd 2b c9 e4 64 eb 00 24 02 e0 f8 |......+..d..$...|
00000160 24 02 c3 49 6e 76 61 6c 69 64 20 70 61 72 74 69 |$..Invalid parti|
00000170 74 69 6f 6e 20 74 61 62 6c 65 00 45 72 72 6f 72 |tion table.Error|
00000180 20 6c 6f 61 64 69 6e 67 20 6f 70 65 72 61 74 69 | loading operati|
00000190 6e 67 20 73 79 73 74 65 6d 00 4d 69 73 73 69 6e |ng system.Missin|
000001a0 67 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 |g operating syst|
000001b0 65 6d 00 00 00 63 7b 9a 00 00 00 00 00 00 00 00 |em...c{.........|
000001c0 02 00 ee ff ff ff 01 00 00 00 ff ff ff ff 00 00 |................|
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa |..............U.|
похожие сектора в sdb-sdg равны нулю, и sdh содержал точную копию sda, так что я предполагаю, что это контрольная сумма, и это “ra” стиль. Из другого подобного контроллера я думаю, что размер страйпа составляет 64k, но, конечно, это можно проверить.
Как я понимаю, mdadm –build может создавать только массивы RAID0-1, есть ли какой-то драйвер для ручного создания RAID5 БЕЗ попыток восстановления/исправления чего-либо или создания метаданных, просто чтения секторов и, возможно, сигнала “ПЛОХО” в случае ошибки контрольной суммы?
Ответ или решение
создание массива RAID5 с доступом только для чтения в Linux — это сложный процесс, особенно в ситуации, когда суперблоки недоступны или повреждены. В сценарии, который вы описали, ваши диски RAID5 потеряли видимость в сетевом массиве AXS-6320. Причиной этого может быть сбой контроллера, физическое повреждение или другие аппаратные проблемы. Важно помнить, что RAID5 уже с первого шага направлен на обеспечение устойчивости к отказам и приемлемого уровня защиты данных, однако отсутствие суперблоков усложняет восстановление.
Теория (Theory)
RAID5 достигает баланса между производительностью, стоимостью и отказоустойчивостью. Он распределяет данные и экстраблоки чекс-сумм (паритетов) по всем дискам, что позволяет в случае сбоя одного диска все еще сохранить доступ к данным. Однако удаление или повреждение метаданных суперблока затрудняет автоматическое восстановление, и вместо этого требуется ручное вмешательство.
Пример (Example)
Ваш случай: у вас 8 дисков по 1 ТБ, и вы пытаетесь восстановить массив RAID5 с нулевой конфигурацией суперблоков. Использование команд mdadm --examine
на каждом диске не обнаруживает суперблоки, что указывает на отсутствие метаданных, которые помогли бы в автоматической реконфигурации массива.
Команда dd
указывает на то, что вы обнаружили некоторые маркеры, такие как сигнатура $RaidSD$
и предполагаемую структуру идентификаторов и номеров дисков. Однако, это не является стандартной метаданной RAID5, и требует более глубокого анализа или вмешательства экспертов.
Применение (Application)
В данном контексте идейно неправильным будет пытаться использовать mdadm --build
для создания нового массива RAID5, так как этот инструмент рассчитан на другие уровни RAID. Вместо этого ручное восстановление требует более глубокой работы с физическим представлением данных на дисках.
-
Создание Точного Плана: Убедитесь, что у вас есть достаточно места для создания резервных копий ваших данных, если дальнейшие вмешательства могут привести к повреждению существующих данных.
-
Идентификация Параметров RAID:
- Определите конфигурацию stripe size, вероятнее всего 64k, если ваш контроллер настроен таким образом.
- Выясните порядок расположения дисков по паритету и данным, так как диски идентифицируются в определённой последовательности.
-
Использование Низкоуровневых Инструментов:
- Инструменты, такие как
dd
иhexdump
, могут пригодиться для извлечения небольших фрагментов данных напрямую с физических секторов диска. - Например, вы сможете вручную реконструировать первое соглашение (расположение партий блока), чтобы понять, как данные распределяются между дисками.
- Инструменты, такие как
-
Алгоритмы Восстановления:
- Если контент по частям может быть извлечён, используйте доступные алгоритмы для проверки данных на предмет ошибок и восстановления. Например, программы для анализа паритета RAID существуют и могут помочь в проверке и восстановлении данных без необходимости ремапа.
-
Поддержка: Консультация с профессионалами, имеющими опыт работы в области восстановления данных RAID, в какой-то момент может быть неизбежной, если данные критически важны.
-
Консультация Профессионалов и Возможность Аппаратного Ремонт: При неверии в собственные силы или отсутствии дальнейших идей можно всегда обратиться к специалистам по восстановлению данных, которые могут предложить как программное, так и аппаратное решение, если массив всё еще имеет аппаратные компоненты, требующие обслуживания.
Этот процесс может быть трудоемким и требовать доступа к специализированным инструментам и знаниям, особенно если выбрать подход ручного вмешательства в попытке восстановления целостности файловых данных массива RAID5.