Востановление данных с жестких дисков из NAS с файловой системой SGI XFS

Ситуация возникла с одним из файловых хранилищ Promise на 4-е винчестера. Но на данный момент стоят 4-е винчестера. 2 шт WD black по 2 ТБ. Прошу заметить что стоят они в зеркальном рейде, и еще 2-а WD green по 2 ТБ каждый тоже в отдельном зеркальном рейде. В один прекрасный день, после выключения, Promise мигает красной лампочкой «обнаружены ошибки» и не поднимает SMB и AFP. Веб интерфейс тоже не работает. Достаю все 4-е винчестера, запускаю Promise — веб интерфейс поднимается. Засовываю назад винчестера — SMB и AFP запускается, но монтируются только первые 2-а блека в рейде. Promise винчестера WD green видит как неотформатированную область. Поигрался винтами, но результата это не дало. Прежде чем выяснять причины почему так произошло, надо достать данные.

Поскольку встроенных каких-то утилит в NAS для востановления данных нет, и официальный сайт насчет таких проблем молчит, то надо пробовать восстанавливать данные своими силами. Для начала я подцепил винчестер к Mac OS, на что он мне выдал:

Mac-Os-ne-moget-montirovat-disk

Ну в принципе я другого не ожидал, ведь Promise работает с ext3 или ext4, поэтому я поставитл Paragon ExtFS, который позволяет монтировать ext2, ext3 и ext4 разделы, но после перезагрузки выскакивает все таже табличка…

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

Data Rescue — сканировала трое суток, вытащила данные, но без соблюдения иерархии папок.

Boomerang Data Recovery — тоже самое

StellarPhoenix Mac DataRecovery — тоже самое

Поскольку все эти утилиты данные видят, но не могут восстановить иерархию папок значит что-то тут не так. Поехал гуглить и нашел утилиту UFS Explorer Standard Recovery которая вытаскивает данные с линуксовых файловых систем. Ломаную не нашел, но скачал бета версию с сайта производителя. И вот оно:

SGI-XFS

Видим файловую систему диска- SGI XFS. Программа без сканирования заходит на винчестер и видит все файлы с иерархией папок. Вот только программа demo, и вытаскивает файлы не более 3мб. Поскольку данные нужны не мне, а знакомому, то и покупать программу за 75$ за свой счет я пожалуй не буду. Но главное мы от нее узнали:

  1. Файловую систему винчестера
  2. Понимание почему другие утилиты сканируют винт и видят файлы но не видят иерархию папок — потому что они не работают с SGI XFS.

И сделал первый, но самый важный вывод — прежде чем восстанавливать данные и терять время, нужно понять в какой он файловой системе, т.к. некоторые программы дружат по-разному с различными файловыми системами, если вообще дружат.

Ок, давайте рассмотрим что же за файловая система такая SGI XFS, и как ее подмонтировать: XFS отличается от других ФС тем, что она изначально была рассчитана для использования на дисках большого объёма (более 2 ТБ к примеру в RAID- массивах).

Вывод №2 в большинстве NAS, как пишет интернет, на дисках используется XFS в качестве файловой системы.

Также чиатем как ее подмонтировать: Поддержка XFS была включена в ядро Linux версий 2.4 и 2.6, таким образом, она стала довольно универсальной для Linux-систем. XFS читают такие операционные системы: openSUSE, Gentoo, Mandriva, Slackware, Ubuntu, Fedora и Debian, а FreeBSD стала поддерживать XFS в режиме чтения в декабре 2005 года.

Кстате википедия пишет: Восстановление удалённых файлов в XFS — очень сложный процесс, поэтому на данный момент существует всего лишь несколько программных продуктов для восстановления удаленных файлов с этой файловой системы, например «Raise Data Recovery for XFS» для ОС Windows и Mac OS.

Т.е. У нас готовый ответ клиенту, другу, знакомому который удалил данные с NAS с файловой системой XFS: «Выключайте срочно NAS, и несите к нам», ведь мы уже знаем чем восстанавливать данные А тем временем готовим компьютер с программой Raise Data Recovery for XFS.

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

Восстановление данных с SGI XFS

Я решил монтировать диска под Убунтой. Скачал последнюю версию с офф сайта и поставил на винтруальную машину. Кстати, нормально убунта версий 10, 11, 12 начала работать только под VMware Fusion 4 или более раней и установкой вручную, а не используя быструю установку Fusion.

Итак Ubuntu 12 стоит, подключаем к ней внешний винчестер из Promise и… И он не отображается как носитель. Проверяем видит ли Ubuntu в принципе этот жесткий диск, для этого открываем терминал и пишем

1
fdisk -l

(аналог команды diskutil list на Mac OS) Вывод команды выдает только один /dev/sdb (нету /dev/sdb1) т.е. убунту не распознает partition table винта, но радует что она его видит. Пытаемся подмонтировать винчестер руками:

1
mount -t xfs /dev/sdb /home/ubuntu/Desktop

т.е. Подмонтирую диск нам на рабочий стол. Вывод говорит что система не может найти суперблок.Ubuntu-1Проблема может быть и в неправильном UUID диска (Уникальный Идентификатор). Пробуем подмонтировать без UUID:

1
mount -o nouuid /dev/sdb /home/ubuntu/Desktop

Результат тот же. Поселяться мысля, что на винчестере просто битая файловая система. Пробуем починить:

1
xfs_repair -n /dev/sdb

Система пытаеться найти суперблок, и найти его так и не смогла.

Делаем blkid — читает содержимое файлов блочных устройств (ноды устройств)Ubuntu-2После долгих раздумий которые привели к мысли, что если диск был в рейде, то partion table на своем месте я не найду, рейд надо ломать, делаем

1
 dmraid -rE /dev/sdb

Команда убирает с диска метаданные raid, и диск иожно будет видеть как самостоятельный. Важно: dmraid -rE перед тем как удалить, создаст дамп метаданных в *.dat файлах. Чтоб не порушить инфу случайно надо не забыть их сохранить, чтоб восстановить если что не так.

После dmraid и перезагрузки пробуем подмонтировать еще раз:Ubuntu-3О! уже что-то. Пошли разбираться с LVM. В конфигурации RAID из томов LVM, состоящих из разных дисков можно наворотить разных систем, в которых из одного только диска вытащить информацию может не получиться. Но у нас зеркальный RAID поэтому все ок. Отлично, используя lvm2 утилиты сканируем диски

1
lvmdiskscan

ubunt-5Делаем

1
lvdisplay

что бы получить LV Name и VG Nameubunt-6и

1
vgdisplay

чтобы убедится что это тот диск что нам надо:ubunt-7пробуем подмонтировать снова только используя VG Name

ubunt-8Снова не получилось. Пробуем

1
lvscan

чтобы увидеть статус lv дисковubunt-9

Загружаем модуль ядра LVM

1
modprobe dm-mod

И делаем группы LVM дисков доступными

1
vgchange -ay

ubunt-10

Все! Теперь можно монтировать!

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

загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *