Як відновити дані з Synology NAS після збою під час міграції RAID 1 у RAID 5?

Уявіть, що ви додаєте диск до Synology NAS і запускаєте перехід із RAID 1 на RAID 5, щоб збільшити місткість сховища. Але під час перебудови раптово зникає електроенергія, і NAS вимикається. Після відновлення живлення з’ясовується, що один із початкових дисків більше не визначається, а доступу до файлів немає. Що робити, якщо актуальної резервної копії потрібних даних немає? Чи можна отримати файли з двох уцілілих накопичувачів, коли перехід на новий тип RAID так і не завершився?

Як відновити дані з Synology NAS після збою під час міграції RAID 1 у RAID 5?

Міграція масиву на Synology NAS з RAID 1 у RAID 5 зазвичай проходить без втрати даних, однак збій живлення, помилки дисків або переривання процесу можуть призвести до деградації чи повної недоступності сховища. У такій ситуації головне — не виконувати поспішних дій, які можуть ускладнити відновлення. У цій статті розглянемо, як правильно оцінити стан RAID-масиву Synology після аварійної міграції та які способи допоможуть відновити доступ до даних.

Перейти до перегляду
Як відновити дані з Synology NAS після аварії під  час міграцї RAID1   RAID5

Як відновити дані з Synology NAS після аварії під час міграцї RAID1 RAID5

КРОК 1. Тестове середовище

Для тесту використали мережеве сховище Synology DS409 з операційною системою DSM 4.2 та три жорсткі диски місткістю 320 гігабайтів кожен.

Спочатку два накопичувачі об’єднали в RAID 1 — дзеркальний масив, у якому дані дублювалися на обох дисках. На ньому створили том із файловою системою Ext4 і записали приблизно 110 гігабайтів тестових даних: документи, фотографії, відео та архіви. Файли розмістили в каталогах із кількома рівнями вкладеності, щоб згодом перевірити збереження їхнього вмісту та структури папок.

Synology DS409 з операційною системою DSM 4.2

Потім до масиву додали третій накопичувач і через Storage Manager запустили зміну типу RAID: з RAID 1 на RAID 5.

Такий перехід дозволяє збільшити доступну місткість сховища, зберігши захист від відмови одного диска після успішного завершення операції.

Synology DS409: через Storage Manager запустили зміну типу з RAID 1 на RAID 5

Коли індикатор перебудови показував 29,55 відсотка, живлення NAS навмисно вимкнули без штатного завершення роботи. Після цього вилучили один із двох початкових дисків RAID 1, імітуючи його повну недоступність.

Synology DS409: вилучили один із двох дисків RAID 1, імітуючи його недоступність

Отже, для відновлення залишилися два накопичувачі: один диск початкового дзеркала та третій диск, доданий для переходу на RAID 5. Перебудова не завершилася, тому частина даних уже змінила своє розташування, а частина ще зберігалася за попередньою схемою. Саме з цими двома дисками ми працюватимемо далі.

Synology DS409: для відновлення залишилися два накопичувачі

КРОК 2. Підключення дисків до комп’ютера з Windows

Переходимо до комп’ютера з Windows, на якому встановлено Hetman RAID Recovery.

Для відновлення даних із пошкоджених RAID-масивів, NAS-пристроїв та інших багатодискових систем зберігання.

Підключаємо через USB-докстанцію два уцілілі накопичувачі:

  • один із початкових дисків RAID 1;
  • диск, доданий для переходу на RAID 5.

Другий учасник початкового дзеркала в нашому тесті недоступний.

Запускаємо програму. У розділі RAID Arrays бачимо автоматично визначений масив DiskStation:2.

Hetman RAID Recovery: автоматично визначений масив DiskStation:2

Вибираємо його та переглядаємо інформацію на панелі Preview праворуч. Програма визначила тип RAID 5, порядок блоків Left Synchronous і розмір блока 64 кілобайти.

Hetman RAID Recovery: інформація про масив DiskStation:2 на панелі Preview праворуч

Нижче, у списку RAID Disks, бачимо два підключені накопичувачі та позицію Empty disk, яка відповідає відсутньому учаснику. Для обох доступних дисків зазначено однакове зміщення початку даних — до цього параметра повернемося під час ручної реконструкції.

У списку також присутні два невеликі масиви RAID 1: обсягом приблизно 2,37 та 2 гігабайти. Вони відповідають службовим областям Synology.

Ці масиви не слід плутати з початковим дзеркалом, на якому зберігалися наші тестові файли.

Hetman RAID Recovery: два невеликі масиви RAID 1

Початковий RAID 1 із користувацькими даними окремо вже не відображається.

КРОК 3. Результати аналізу RAID 5

Перевіримо, що доступно через автоматично визначену конфігурацію RAID 5. Для цього, подвійним клацанням відкриваємо том Ext4 у складі цього масиву. У майстрі аналізу обираємо Fast scan і натискаємо Next, щоб розпочати пошук файлів.

Hetman RAID Recovery: У майстрі аналізу обираємо Fast scan

Доступна частина тестових даних: після аналізу RAID 5 програма знайшла 390 папок і 8 239 файлів. У результатах бачимо папку My Data та вкладені каталоги з тестовими файлами. Частина початкової структури зберіглася: програма показує назви папок і файлів та їхнє розташування.

Hetman RAID Recovery: папка My Data та вкладені каталоги з тестовими файлами

Отже, навіть із двома доступними учасниками перерваного масиву вдалося прочитати частину його вмісту. Щоб зберегти потрібні файли, виділіть їх, натисніть Recovery та вкажіть папку на окремому диску, який не входить до складу відновлюваного масиву, щоб уникнути перезапису вихідних даних.

Hetman RAID Recovery: Щоб зберегти потрібні файли, виділіть їх, натисніть Recovery

Проте в результатах присутні не всі файли, які записали перед тестом. До міграції дані зберігалися на двох дисках як дзеркальні копії. Під час переходу на RAID 5 система поступово змінювала розташування блоків, розподіляючи їх між трьома накопичувачами та формуючи паритет.

Тому на вцілілих дисках залишилися області з різною організацією даних. Схема RAID 5 відповідає розташуванню блоків у вже перебудованих областях, а в решті зберігається попередня організація RAID 1, хоча саме дзеркало вже не визначається автоматично.

Отже, відсутність файла в цих результатах ще не доводить, що його вміст повністю втрачений.

КРОК 4. Ручна реконструкція RAID

У нашому випадку програма автоматично визначила RAID 5 та його параметри. А якщо конфігурацію потрібно задати вручну або частина налаштувань невідома? Для цього в Hetman RAID Recovery є RAID Constructor. На прикладі знайденого RAID 5 розглянемо його можливості, а потім використаємо цей інструмент для реконструкції початкового RAID 1.

Hetman RAID Recovery: RAID Constructor

Відкриваємо RAID Constructor, вибираємо RAID 5 і додаємо два доступні накопичувачі. Відсутнього учасника позначаємо як Empty disk. Таким чином отримуємо три позиції, які відповідають складу масиву під час міграції.

Hetman RAID Recovery: відсутній диск позначаємо як Empty disk

У протестованих нами конфігураціях RAID 5 на Synology часто зустрічалися порядок блоків Left Synchronous і розмір блока 64 кілобайти, тому використаємо це поєднання в конструкторі. У нашому випадку воно також відповідає параметрам автоматично визначеного масиву.

Hetman RAID Recovery: порядок блоків Left Synchronous і розмір блока 64 кілобайти

Проте ці значення не універсальні: для іншого набору дисків або сховища їх потрібно перевіряти окремо, враховуючи конфігурацію та історію змін масиву.

Окремо потрібно вказати зміщення початку даних для кожного диска, тому спочатку розглянемо, де його знайти та як розрахувати.

КРОК 5. Визначення зміщення початку даних

Зміщення вказує, яку початкову частину накопичувача потрібно пропустити перед читанням блоків користувацького масиву. На схемі фізичного диска бачимо службові розділи Synology та розділ, який використовувався для зберігання наших файлів. У цьому тесті він починається із сектора 9 437 184. Це наша точка відліку. Самі дані RAID починаються трохи далі, оскільки на початку розділу є місце для службової інформації.

Hetman RAID Recovery: Відкриваємо фізичний диск у HEX-Editor

Відкриваємо фізичний диск у HEX-Editor. Щоб перейти до початку потрібного розділу, спочатку переводимо його початковий сектор у байтову адресу. На калькуляторі множимо 9 437 184 на розмір сектора — 512 байтів. Отримуємо 4 831 838 208 байтів. Переводимо результат у шістнадцятковий формат і переходимо до цієї адреси в редакторі.

Hetman RAID Recovery: переводимо початковий сектор у байтову адресу

Від поточної позиції запускаємо пошук уперед. Вибираємо пошук шістнадцяткового значення та вводимо сигнатуру FC 4E 2B A9. Так ми пропускаємо початкові службові розділи Synology й шукаємо суперблок EXT у розділі з нашими файлами.

Hetman RAID Recovery: пошук шістнадцяткового значення та сигнатури FC 4E 2B A9

Потрібний збіг знаходимо за адресою 120001000. Поруч у текстовій частині редактора бачимо назву DiskStation:2. Самої сигнатури недостатньо, оскільки така послідовність байтів може траплятися й усередині інших даних.

Hetman RAID Recovery: Потрібний збіг знаходимо за адресою 120001000

Тепер знайдемо поле data_offset, яке вказує зміщення початку даних RAID усередині розділу. У цьому форматі суперблока воно розташоване через 128 байтів від його початку та займає вісім байтів. У нашому випадку це перші вісім байтів рядка за адресою 120001080.

Hetman RAID Recovery: зміщення початку даних RAID усередині розділу

Значення записане молодшим байтом уперед — такий порядок називається little-endian. У звичному записі це число 800 у шістнадцятковому форматі. Вводимо його в калькулятор і перемикаємося на десятковий формат — отримуємо 2048 секторів. Це відстань від початку розділу до початку даних RAID. Тому додаємо 2048 саме до початкового сектора розділу. Отримуємо 9 439 232 сектори. Множимо на 512 байтів — остаточне зміщення від початку фізичного диска становить 4 832 886 784 байти. Воно збігається зі значенням у властивостях автоматично визначеного RAID 5.

Hetman RAID Recovery: little-endian

КРОК 6. Автоматичний підбір параметрів RAID

Повертаємося до RAID Constructor і вказуємо визначене зміщення для кожного доступного диска. Тепер можемо скористатися автоматичним підбором невідомих параметрів.

Hetman RAID Recovery: вказуємо визначене зміщення для кожного доступного диска

Якщо розмір блока або порядок блоків невідомі, у полях Block size та Block order можна вибрати Detect automatically. Для визначення порядку учасників доступна окрема опція Detect the disk order automatically. Наприклад, можемо залишити RAID 5, Left Synchronous і блок 64 кілобайти, але запропонувати програмі визначити порядок дисків.

Після переходу до наступного кроку програма розпочинає пошук конфігурацій, які відповідають указаним умовам. Знайдені варіанти відображаються у списку. Вибираємо потрібну конфігурацію та натискаємо Add.

Hetman RAID Recovery: Знайдені варіанти масивів відображаються у списку

Після цього зібраний RAID з’явиться на головному екрані програми, звідки його можна відкрити для аналізу та пошуку файлів.

Hetman RAID Recovery: зібраний RAID на головному екрані програми

Тепер використаємо конструктор для іншої задачі — перевіримо вцілілий диск початкового дзеркала в конфігурації RAID 1.

КРОК 7. Пошук даних у початковій конфігурації RAID 1

Повертаємося до RAID Constructor та вибираємо RAID 1. Додаємо вцілілий диск початкового дзеркала, а відсутнього учасника позначаємо як Empty disk.

Hetman RAID Recovery: повертаємося до RAID Constructor та обираємо RAID 1

Вказуємо перевірене зміщення початку даних. Так ми задаємо програмі спосіб читання даних за попередньою схемою. Це віртуальна реконструкція для аналізу: вона не скасовує міграцію та не повертає диски до стану перед аварією.

Hetman RAID Recovery: вказуємо перевірене зміщення початку даних

Зібраний RAID 1 з’явиться на головному екрані програми.

Hetman RAID Recovery: зібраний RAID 1 на головному екрані програми

Відкриваємо його подвійним клацанням і в майстрі аналізу обираємо Full analysis. Зазначаємо файлову систему Ext4 та запускаємо аналіз.

Hetman RAID Recovery: Full analysis зібраного RAID 1

Після завершення програма знайшла 979 папок і 14 049 файлів. Для порівняння, після Fast scan конфігурації RAID 5 ми отримали 390 папок і 8 239 файлів. Ці числа не означають кількість унікальних справних файлів: результати можуть містити повтори й потребують перевірки.

Hetman RAID Recovery: програма знайшла 979 папок і 14 049 файлів

Переглядаємо знайдені дані. Початкова структура каталогів відтворилася не повністю, а частина знайдених об’єктів розташована в Lost and Found.

Hetman RAID Recovery: переглядаємо знайдені дані

Для відновлення дерева папок потрібні збережені службові структури файлової системи та зв’язки між ними. Після перерваної міграції в обраній конфігурації можуть читатися дані окремого файла, але бути недоступними записи, які пов’язували його з початковим каталогом. Тому відсутність звичної папки ще не означає, що втрачено весь її вміст.

Щоб швидше знайти потрібні файли, скористаємося функцією Find File. У вікні пошуку вводимо повну назву або її частину та натискаємо Find. За потреби можна налаштувати пошук з урахуванням регістру або обмежити його збігами лише цілих слів.

Hetman RAID Recovery: скористаємося функцією Find File

Переглядаємо кілька файлів різних форматів, зокрема знайдених за допомогою пошуку. У вікні Preview перевіряємо зображення, вміст документів та інших доступних для перегляду файлів. Так можемо впізнати потрібні дані й оцінити їхній вміст перед збереженням.

Висновок

У цьому тесті ми розглянули втрату диска після перерваної міграції Synology з RAID 1 на RAID 5. Hetman RAID Recovery автоматично визначила RAID 5 за збереженими метаданими, але через цю конфігурацію була доступна лише частина початкових даних.

Тому ми також проаналізували вцілілий диск початкового дзеркала як RAID 1. У результатах знайшли файли, вміст яких можна переглянути, хоча структура каталогів відтворилася не повністю.

Цей випадок показує, чому після незавершеної міграції варто враховувати попередню конфігурацію масиву: його поточні метадані не обов’язково описують розташування всіх даних на дисках.

Актуальна резервна копія значно спрощує відновлення після аварії. Якщо її немає, аналіз збережених даних може допомогти повернути хоча б частину файлів — саме такий випадок ми й розглянули.

Valery Martyshko

Автор: , Технічний письменник

Автор, перекладач та технічний спеціаліст компанії Hetman Software. Має майже десятирічний досвід роботи в IT сфері, який охоплює різні галузі: від ПК з Windows та мобільних пристроїв, до фото та відео обладнання, сигналізацій та систем відеоспостереження, і т.д. Окрім іншого, є також спеціалістом по Android, Windows та Microsoft Office. Є експертом в області відновлення даних, файлових систем, пристроїв зберігання даних, RAID масивів.

Vladyslav Kupriyenko

Редактор: , Технічний письменник

Редактор статей блогу, автор та ведучий рубрики на YouTube каналі компанії Hetman Software. За освітою: спеціаліст з обслуговування комп’ютерних систем та мереж, вивчав розробку програмного забезпечення. Має досвід роботи в IT сфері, який охоплює різні галузі: адміністрування комп’ютерної мережі та обладнання, контроль та підтримка роботи Інтернет, офісних та спеціалізованих програм. Є фахівцем в області відновлення даних, файлових систем та пристроїв зберігання даних.

Рекомендуємо для вас