резервное копирование содержимого RAID с дисков, извлеченных из NAS

резервное копирование содержимого RAID с дисков, извлеченных из NAS

У меня есть друг, у которого NAS застрял в процессе обновления прошивки. Он работает на базе Linux и, по-моему, использует программный RAID-5 на 4 дисках с использованием mdadm /dev/md*.

Служба поддержки клиентов только что рассказала, как переустановить заводскую прошивку, но все данные будут потеряны.

Друг обратился в профессиональную службу восстановления, но они просят определенную сумму денег (недешево).

Я достаточно уверенно работаю с Linux (раньше писал прошивки для встраиваемых устройств), но не очень хорошо разбираюсь в RAID.

Я хотел бы подключить диски к компьютеру с Debian и смонтировать RAID только для чтения. Если я правильно понимаю, есть хорошие шансы, что RAID и его конфигурация будут автоматически обнаружены ядром (или с помощью mdadm), но как убедиться, что на диски не записаны никакие данные, и каковы шаги по монтированию RAID ro?

решение1

Сначала подключите диски и запустите:

mdadm --examine /dev/sdb1

После этого, если они читабельны, вы сможете собрать их заново, используя:

mdadm --assemble /dev/md/... /dev/sdxn

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

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

dd if=/dev/sdxN | gzip > /content/sdxN.gz

решение2

Мне пришлось сделать гораздо меньше, чем ожидалось.

Перед подключением дисков я установил mdadmпакет и dpkg-reconfigure mdadmотключил все автоматические функции на любом рейде.

После подключения дисков ядро ​​Debian (3.16.0-4-amd64) обнаружило RAID во время загрузки.

/proc/mdstat:

Personalities : [raid6] [raid5] [raid4] [raid1] 
md126 : active (auto-read-only) raid1 sdb1[0] sdd1[3] sde1[2]
      20955008 blocks super 1.2 [4/3] [U_UU]

md127 : active (auto-read-only) raid5 sdb2[0] sdd2[3] sde2[2] sdc2[1]
      5797132800 blocks super 1.1 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]

unused devices: <none>

Я не знаю md126, как правильно, но правильно — md127.

Я попытался смонтировать его /dev/md127во временный каталог, но возникла ошибка:mount: unknown filesystem type 'LVM2_member'

Я установил lvm2пакет и использовал lvmdiskscanкоманды lvdisplay, чтобы показать интересующий меня объем.

# lvmdiskscan
  /dev/14b46bb0_vg/lv53a3800a [       5,40 TiB] 
  ...

# lvdisplay

  --- Logical volume ---
  LV Path                /dev/14b46bb0_vg/lv53a3800a
  ...
  LV Size                5,40 TiB
  ...

Потом просто монтируется и всё.

mount -o ro /dev/14b46bb0_vg/lv53a3800a /tmp/raid/

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