Всем привет. Сегодня расскажу историю которая длилась почти неделю (не считая времени на слив данных). Придя утром на работу в хорошем настроении и напевая про себя “яву яву взял я на халяву”, я как обычно зашел в серверную чтобы сделать Backup на магнитную ленту и заметил что ничего не работает. Сервера выключены, телефонная станция тоже, UPS к которому было подключено сетевое хранилище находится в зависшем состоянии, горит индикатор что идёт питание от батареи, на кнопки UPS не реагирует. Оказывается, после 17 часов когда все ушли с работы домой, у энергоснабжающей организации произошло аварийное отключение электроэнергии. В итоге сдохло пару блоков питания, UPS в серверной к которой было подключено хранилище Net Gear Nas 2100. Включив его без UPS обнаружил что он не подает признаков жизни. Разобрав Nas вытащил блок питания, он там вполне компьютерный, только другого форм фактора, замкнул зеленый и черный провод контакты на колодке, чтобы запустить его, он не запускается.
Так же попробовал запустить его с компьютерным блоком питания — NAS не запускается, на плате горит оранжевый светодиод.
Выхода нет, придётся восстанавливать RAID массив. Всё это ещё осложнялось тем, что я не знал об этом RAID ничего, он стоял до меня. Это была железка которую сто лет назад запустили и забыли, т.к. он исправно выполнял свои функции. Какого уровня этот RAID, каков порядок дисков, какой размер блока ? ничего этого я не знал.
Чтобы не перепутать порядок установленных дисков, наклеил на них стикеры с номерами 1,2,3,4 и извлек диски. Это были четыре Western Digital по 1 Тб.
Первое что я обнаружил что у меня нет материнской платы с более чем 4 SATA, а мне же нужно подключить все 4 диска к компу и плюс загрузить операционку, чтобы запустить R‑Studio и собрать в нём виртуальный RAID (это кстати тоже отдельная история).
Решил грузиться с загрузочной флешки, предварительно записав на нее портабельный R‑Studio. Запустил, увидел там все 4 диска. Далее так как мне неизвестны параметры RAID, там есть кнопка “автоопределение”, программа сама попытается найти определить тип RAID, размер блоков, смещение файловой таблицы выдать мне наиболее вероятный результат.
Сначала процесс определения шёл довольно бодро, до 92% дошло за 4 часа, далее до конца рабочего дня дошло до 93%, далее я открыв окно чтобы всё продувалось ушел домой с мыслями что завтра я приду, R‑Studio мне выдаст все параметры RAID, я его соберу и всё восстановлю.
Утром придя на работу и радостно попёрдывая, я первым делом, не переобуваясь и не снимая одежды ринулся смотреть, что в R‑Studio, а там как было 93% так и есть. Количество найденных смещений перевалило за 2.6 миллиона, я ждал до вечера — прогресс застыл на 93%, а полученный результат нужно ещё и обработать.
Если прервать процесс, то R‑Studio конечно может обработать то что есть и попытаться найти параметры RAID, но если параметры не будут найдены, то потеряется прогресс почти 2х суток, если ждать дальше то неизвестно сколько, может неделю или две да и не факт что всё закончится успешно. Да, чисто теоретически можно найти смещение файловой таблицы и вручную, поискав её сигнатуру HEX редактором на первом диске, потом поискав эту же сигнатуру на втором диске и т.д., но опять таки я не знаю размер блока и правильность расположения дисков. В общем решил прервать процесс и “скормить” найденные данные R‑Studio
Стал изучать этот вопрос в интернете — многие советуют программу RAID Reconstruсtor, которая может определить параметры RAID массива. Скачал, но она категорически не хотела запускаться на загрузочном диске, ей нужна полноценна операционка и все 4 диска, чтобы она определила параметры. На этом рабочий день закончился, пошел домой.
P.S. По дороге домой, в голове крутились мысли — нам нужно как то загрузить полноценную Windows и подключить все 4 диска, вариант с имеющейся материнкой отпадает, там всего 4 SATA, платы расширения у меня нет, но за то появилась мысль — не обзавестись ли мне домой диском на 6Tb, сделать на него образы всех дисков и спокойно с ними работать ? Как говорится не было бы счастья, да несчастье помогло. Заказал в Citilink диск на 6 Tb, кстати они уже не стоят космических денег. Заказал вечером диск, ждать два дня.
Решил попробовать подобрать параметры в ручную, просмотрел документацию к Nas и что она предлагает выбрать по умолчанию во время первоначальной настройки, т.к. высока вероятность что кто её настраивал сделал всё по умолчанию.
Порядок дисков поставил такой такой же в каком порядке они были установлены в накопитель (я же их подписал), стал подбирать размер блока и провести сканирование диска через R‑Studio. Да, он находит файлы, но не строит таблицу расположения файлов и папок, он тупо всё складывает в кучу, опять таки файлы получаются битые, за исключением некоторых.
Как я понял — те файлы, которые полностью поместились в блок, они читаются нормально, у других же читается только часть файла, особенно это видно на картинках, верх картинок нормальный, дальше каша. Структуру файлов папок мне получить не удалось, потому что неизвестно где находится файловая таблица (MFT), т.е. результат дня — мне удалось найти это какие то обрывки файлов. Кстати товарищ предложил плату с 5 SATA портами, забрал её, чтобы пока идёт диск из Citilink, можно было попробовать Raid Reconstructor.
Тем временем на улице уже суббота, и я с утра побежал на работу, с материнской платой. Мне очень не терпится скормить все диски RAID Reconstructor’у. Беру материнскую плату, память, процессор, охлаждение, блок питания, ставлю винт с операционкой, подключаю все 4 SATA диска из Рейд массива. Включаю — диски видятся.
Создаю в Raid Reconstructor виртуальный RAID, жму XOR-Test — он показывает зеленое поле, это хороший знак — программа определила что это похоже на RAID.
Жму автодетект, ставлю все возможные размеры блоков, чтобы она сама подобрала нужный из них. И.… чудо не произошло, RAID Reconstructor говорит мне что он не знает что это за RAID, попробовал поменять смещение, делать повторный детект, результата нет. У меня начинают закрадываться нехорошие мысли, что RAID потерян. Организую удаленку, чтобы дома пытаться восстановить с помощью R‑Studio, т.к. там я хотя бы что то вижу, пусть битые файлы но вижу, можно попытать подобрать параметры или на худой конец восстановить хотя бы что то. Дома пытаюсь перебрать все возможные комбинации расположения дисков и перебираю размеры блоков, но R‑Studio только лишь находит отрывки файлов, большая часть из которых не читается. В 20:00 пришла SMS что пришел мой диск на 6Tb, съездил в Citilink, съездил забрал его.
Воскресенье утро — иду на работу со своим 6 Tb жестким диском, делать образы дисков, с RAID массива, чтобы ковырять их уже в ручную, не боясь повредить окончательно. На один образ уходит где то 4 с небольшим часа, до ночи я делал образы дисков и одновременно читал форумы по восстановлению.
Набрёл на еще одну программу, Hetman RAID Recovery, но она так же не дала результата. Зарегистрировался на форуме по восстановлению данных, описал свою проблему — посоветовали восстанавливать с помощью UFS Explorer.
Понедельник ознаменовался тем, что последний образ не сформировался — программа зависла, пришлось перезапустить заново — плюс еще 4 часа.
Доделав последний образ, я решил попробовать UFS Explorer. Выбрал построить RAID массив, выбрал диск. Программа мне сообщила что найдена структура RAID, построить её ? я согласился, после чего программа сама подгрузила и выставила диски в той последовательности, в которой они должны были быть. Появилась файловая система со всеми файлами и папками в том виде, в котором они были в хранилище и я всё восстановил не потеряв ни байта данных.
Ну теперь уже рассказываю по порядку как я это сделал.
Кстати определился как — RAID 5, чередование с распределенной четностью. Распределение четности — левое, симметричное (обратное, динамичное). Размер страйпа 16 Кб. Сдвиг ротации = 0.
Далее просто сохраняем всё на отдельный жесткий диск. У меня RAID был довольно объемный, на сохранение ушло пару суток, ещё столько же ушло на перенос всех данных на другой сервер.