Собрать Raid 0 без суперблоков?

0

У меня была запущена Ubuntu 10.04. Я создал программный рейд 0 с 3-мя дисками.

Сегодня я обновился до Ubuntu 12.04 (на самом деле новая установка), и теперь я столкнулся с огромной проблемой:

Я не могу собрать рейд, потому что, видимо, все суперблоки исчезли. Я старался

sudo mdadm --assemble /dev/md0 /dev/sdb /dev/sdd /dev/sde

Неудачно. dumpe2fs показывает только для одного диска (sde) некоторую информацию о рейде, такую ​​как информация о шагах и полосах.

mdadm --examine только показывает no md superblock detected " К сожалению, я не могу сделать резервные копии 1: 1 для каждого диска, потому что у меня просто нет дисков, чтобы сэкономить. Поэтому я не могу поиграть и надеюсь, что это сработает.

Можно ли собрать массив без потери данных? Спасибо.

Pythoneer
источник
Возможно полезная информация: askubuntu.com/questions/69086/mdadm-superblock-recovery
Hennes
RAID 0 не допускает сбоя одного диска. У вас действительно нет вариантов. RAID 1 и RAID 1 + 0 позволили бы восстановить данные. Вы можете прочитать больше о ваших будущих вариантах здесь: en.wikipedia.org/wiki/RAID#RAID_0
Ramhound
Но с самими данными все должно быть в порядке ... нужно просто сказать mdadm, что на дисках есть рейд, и его просто нужно как-то собрать
Pythoneer
@ramhound True RAID 0 не позволяет сбою диска. Но Суперблок не обнаружен Сообщение может иметь несколько причин. Одна из них заключается в том, что проблема заключается в использовании всего диска, а не раздела, таким образом, что подписи RAID и таблицы разделов диска перекрываются. Это может сработать, если ваш загрузчик распознает часть RAID и правильно ее анализирует. С обновлением загрузчик мог быть написан. Таким образом, для возникновения проблем не требуется сбой оборудования.
Hennes
Я попробовал кое-что в ссылке Хеннеса выше. Используя --create или --build, я могу создать raid md0, и он, кажется, работает, но я не могу его смонтировать. Когда я использую --create, я получаю сообщение о том, что он не выглядит как ext2 / 3/4, если я использую --build, он говорит "неизвестный тип файловой системы" linux_raid_member ""
Pythoneer

Ответы:

0

Хорошо, мне удалось решить этот рассол. Я запишу это, чтобы другие, у кого может быть такая же проблема, могли попробовать это.

Я нашел программу под названием ReclaiMe Free Raid Recovery. Это для Windows, и это бесплатно. После того, как вы сообщаете ему, какие диски были в raid0, он сканирует, в зависимости от размера, в течение нескольких часов. Для меня это заняло около 2 часов, пока он не был уверен, что нашел правильные параметры для raid0.

И так оно и было. Он нашел их, и затем он может либо открыть программу восстановления, либо просто сообщить вам параметры. С этими я вернулся в Linux и использовал

mdadm --create -l 0 -n 3 -c 64 -metadata 0.9 /dev/md1 devices

Важнейшей вещью здесь был номер метаданных. Видимо по умолчанию это 1.2, но моя рейдовая шапка 0.9. Поэтому я в основном попробовал их и использовал fsck, чтобы посмотреть, работает ли он. С 0,9 он обнаружил файловую систему, которая оказалась поврежденной.

Используя e2fsck, он исправил кучу ошибок в inode 7. В какой-то момент я отменил, потому что он, казалось, ничего не делал. Но после этого я смог его смонтировать.

Все файлы есть. Я скопировал важные вещи прямо на другой диск. Все файлы, которые я тестировал, работают правильно. Рейд был восстановлен.

Хотя, похоже, что-то не так в файловой системе, потому что

df -h

показывает, что я использую -27 ГБ :)

Спасибо!

Pythoneer
источник