Попытка восстановления MDADM RAID на образах, созданных с помощью dd

Попытка восстановления MDADM RAID на образах, созданных с помощью dd

У меня программный массив RAID5 с 4 + 1 дисками, в котором 2 диска вышли из строя. Я надеюсь, что с помощью некоторого ударного обслуживания я смогу заставить один из отказавших дисков работать достаточно долго, чтобы сделать копию на уровне блоков и снять образ.

План состоит в том, чтобы создать образы 4 (или всех 5) дисков с помощью dd, а затем попытаться перестроить массив на этих образах.

Есть ли что-то, что я упустил из виду, что сделало бы это невозможным? Если нет, то как бы я:

  1. Скопируйте изображение каждого устройства в файл
  2. Смонтируйте эти
  3. Перенастройте mdadm для использования этих образов в качестве устройств.

Очевидно, что могло произойти множество событий, из-за которых данные были повреждены, но есть основания полагать, что фактические данные на всех четырех дисках могут быть нетронутыми:

  1. Второй отказ диска мог быть вызван отключением питания.
  2. Данные, которые мне нужно восстановить, не были записаны после первого сбоя.

решение1

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

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

losetup /dev/loopX /path/to/imagefileX

после того как это будет сделано, вы можетесобратьваш массив с использованием блочных устройств loopback. Если вы не можете восстановить последний отказавший диск, так что временные метки на вашем образе избыточного диска будут отличаться от остальных, массив откажется собираться. Пока выДействительноинтересуют только данные, записанные до сбоев, взгляните на«Восстановление неисправного программного RAID»раздел документации Kernel RAID. Он должен помочь вам собрать массив, сохранив хотя бы часть данных, подлежащих восстановлению.

Связанный контент