Програмне відновлення даних: як відновити втрачені файли на прикладі RSaver

Категорії статей: ; 26.08.2013

У статті описуються принципи і методи програмного відновлення даних для користувачів, що не володіють спеціальними знаннями. У першій частині статті - теорія, у другій частині розглядається робота с безкоштовною програмою R.saver. Якщо перша частина вам нецікава, можна відразу перейти до практики (2 частина).

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

При самостійному відновленні даних варто прийняти до відома наступну інформацію:

  • Запис на розділ з відновлюваною інформацією може зменшити вірогідність відновлення даних, оскільки дані можуть бути записані поверх тих, що були видалені. Це стосується також установки програм для відновлення даних і збереження відновлених файлів.
  • Всі роботи з накопичувачем бажано звести до мінімуму для збільшення шансів на відновлення. Хороша практика - створення посекторної копії накопичувача і використання різних методів відновлення на копії.
  • Якщо носій інформації має фізичні пошкодження (в першу чергу це стосується жорстких дисків), то будь-які операції з ним можуть погіршити ситуацію. Продовжувати відновлення самостійно слідує лише у разі, коли вартість самих даних нижча за вартість їх відновлення спеціалістами.
  • Перевірка диска на наявність помилок засобами Windows створить додаткові складнощі для відновлення даних, аж до повної неможливості їх відновлення.

Структура диска

Для кращого розуміння подальших дій розповімо про логічну структуру диска і файлових систем. Якщо вам не цікава теорія і потрібно швидко відновити дані - можете пропустити розділ і перейти безпосередньо до алгоритму дій.

MBR

Master Boot Record"головний завантажувальний запис - знаходиться в нульовому секторі диска, містить частину спеціального службового коду, а також дані про чотири розділи і про те, який розділ є завантажувальним.

Якщо MBR справний, то, після здобуття управління, код, що міститься в нім, прочитує таблицю розділів і передає управління коду, що міститься в першому секторі завантажувального розділу (VBR - Volume Boot Record), якщо той містить сигнатуру 55AAh в кінці сектора.

Інакше може з'явитися повідомлення про помилку, наприклад: "Reboot and select а proper boot device" або "Invalid partition table" або "Missing operating system". Всі перераховані повідомлення можуть виникати як унаслідок несправності в MBR або VBR, так і по інших причинах (вибраний неправильний завантажувальний диск і так далі).

Для відновлення пошкодженого MBR або завантажувального розділу існують спеціалізовані утиліти, такі як testdisk (Windows) і gpart (Linux), також можна використовувати "Консоль відновлення" з настановного диска Windows. Їх застосування не завжди дає позитивний результат при відновленні даних, оскільки окрім пошкодження MBR і VBR можуть бути і інші несправності, тому дані варіанти в статті освітлювати не будуть. І хоча в мережі досить інструкцій по усуненню подібних несправностей, рекомендується спочатку відновити важливі дані з накопичувача, а потім вже намагатися відновити його правильну роботу.

Файлові системи

Будь-який розділ, що містить файлову систему, складається з наступних частин:

  1. Область завантажувача (VBR), яка містить інформацію про структуру розділу, а також службовий код.
  2. Область даних, яка розбивається на рівні частини, звані кластерами, при цьому кожен кластер має унікальний номер. Розмір кластера задається при форматуванні.
  3. Область службових даних файлової системи, в якій може зберігатися інформація про теки, файли, їх імена, атрибути, а також інформація про те, які ланцюжки кластерів займає той або інший файл.

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

Розглянемо детальніше найбільш популярні файлові системи: FAT і NTFS.

NTFS

Структура файлової системи NTFS схематично змальована на малюнку.

Структура NTFS

Структура NTFS

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

Наступна область"головна таблиця файлів MFT (Master File Table). Саме у ній зберігається інформація про каталоги, файли і їх атрибути. Зазвичай під MFT резервується область диска, рівна 12,5% розміру розділу. Розмір зарезервованої області може мінятися (як у велику, так і в меншу сторону), а сама таблиця може бути фрагментована.

Крім того, в певної області розділу міститься копія перших 4 службових записів таблиці.

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

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

При форматуванні розділу відбувається створення нової MFT на місці старої. Спочатку розмір нової таблиці досить малий (декілька сотень записів MFT), тому деякі службові записи попередньої файлової системи ще можна відновити. Чим більше було записано файлів на відформатований розділ, тим менше вірогідність успішного відновлення даних.

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

Інколи повне форматування називають низькорівневим форматуванням, що є помилкою. Низькорівневе форматування - технологічна операція, яка виконується при виготовленні накопичувача, і програмними методами її здійснити неможливо.

Насправді з операційної системи доступно лише високорівневе форматування двох типів: повне і швидке. Швидке форматування просто формує таблицю розділу, а при повному форматуванні спочатку відбувається перевірка всього диска на наявність пошкоджених секторів. У Windows XP ця перевірка відбувається за допомогою операції читання (тобто дані залишаються на місці і в питанні відновлення ця ситуація не відрізняється від швидкого форматування, розглянутого вище), а в Windows 7 сектори перевіряються записом, при цьому дані знищуються безповоротно, і жодних способів їх відновити не існує.

FAT

Структура файлової системи FAT схематично змальована на малюнку.

Структура FAT

Структура FAT

На початку розділу знаходиться VBR, її копія зазвичай розташована через 6 секторів. Через певну кількість секторів знаходиться сама файлова таблиця FAT (File Allocation Table), слідом за нею - її копія.

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

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

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

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

Методи відновлення даних

Існують як чисто програмні методи відновлення даних, так і програмно-апаратні. Для останніх необхідне спеціальне дороге устаткування, відповідні досвід і знання, тоді як програмне відновлення за допомогою автоматизованих утиліт доступно практично будь-якому користувачеві ПК. Саме цей спосіб і буде описаний далі.

Відновлення видалених файлів

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

Якщо подальший запис на диск не виконувався, то можна відновити потрібний файл.

Реконструкція пошкодженої файлової системи

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

Відновлення після зміни структури розділів диска

Спеціалізовані утиліти сканують накопичувач на наявність структур файлових систем, які є на диску. На підставі сканування будується список можливих файлових систем з попередньою оцінкою їх стану. Наступним кроком є перевірка знайдених систем на наявність потрібних даних.

Відновлення по сигнатурах

RAW-recovery - відновлення по сигнатурах, використовується у випадках, коли інші методи не дали задовільного результату. В цьому випадку на накопичувачах виконується посекторное сканування на наявність відомих сигнатур (унікальний набір символів, характерний для певного типу файлів).

Для знайдених файлів невідомі ні назви, ні логічне розташування, ні атрибути. В разі, якщо файли фрагментовані, даний метод відновлення буде неефективний.

Якщо сигнатура початку файлу була знайдена, то наступним завданням буде знайти кінець файлу. Зазвичай для цього використовується будь-яка наступна відома сигнатура, що може давати незадовільний результат. Сучасні програми застосовують методи, що використовують залишки даних про файліву систему і її особливість для поліпшення результату. У ряді випадків подібні алгоритми можуть допомогти відновити навіть фрагментований файл, що при використанні стандартних алгоритмів неможливо. Наприклад, алгоритм INTELLIRAW, що використовується в програмах сімейства UFS Explorer, працює спільно з алгоритмами реконструкції файлової системи і використовує отримані відомості для визначення кінця файлів. Така реалізація дозволяє досягнути кращих результатів, чим при використанні простих методів відновлення по сигнатурах.

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

Алгоритм відновлення даних

Алгоритм ми приведемо на прикладі безкоштовної програми R.saver, яка доступна для некомерційного використання на території колишнього СНД. Вона компактна, проста у використанні і не вимагає установки. Використовує алгоритми комерційного ПО UFS Explorer, дає результати на рівні професійних утиліт. Підтримуються файлові системи NTFS, FAT і exFAT.

Скачати її можна із сторінки підтримки на офіційному сайті: http://rlab.ru/tools/rsaver.html .

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

Вибір розділу

Після розпаковування програми її необхідно запустити. У лівій частині головного вікна можна побачити підключені до системи накопичувачі і розділи на них. Якщо потрібний розділ був автоматично знайдений і відображається в списку - вибирайте його і переходите до наступного пункту.

Головне вікно R.saver

Головне вікно R.saver

В разі, якщо потрібного розділу немає в списку (наприклад, було проведене форматування накопичувача або зміна розмірів розділів), можна запустити пошук втраченого розділу або задати його самостійно (лише якщо ви знаєте точні параметри розділу). Вибрати ці функції можна в контекстному меню накопичувача або на тулбарі.

Розглянемо функцію пошуку втраченого розділу детальніше:

Після її запуску відкриється нове вікно, в якому необхідно натиснути на кнопку "Знайти зараз", що запустить пошук на диску відомих файлових систем. У міру їх знаходження список доповнюватиметься інформацією про знайдені розділи. Найбільш вірогідні варіанти матимуть іконку синього кольору, що означає хороший стан розділу. Якщо іконка жовтого або червоного кольорів, то знайдений розділ або дуже сильно пошкоджений, або знайдений помилково (деякі типи файлів можуть давати такий ефект).

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

Якщо значення в колонці "розмір" менше значення в колонці "початок", то, найімовірніше, даний розділ не є дійсним. Зазвичай цими "неправильними" розділами є образи дисків, що зберігаються на накопичувачі.

Результати сканування рекомендується зберегти перед продовженням, аби не довелося сканувати диск заново в разі неправильного вибору.

Для продовження натисніть кнопку "Використовувати виділені".

Сканування

Далі відкриється вікно файлового менеджера, яке покаже поточний стан файлової системи (тобто файли і каталоги, видимі засобами ОС). Для запуску сканування натисніть кнопку "Сканувати".

Вікно файлівого менеджера R.saver

Вікно файлівого менеджера R.saver

Якщо був вибраний розділ з файловою системою NTFS, то буде запропонований вибір: запустити повне або швидке сканування.

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

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

Для файлових систем FAT16/FAT32 і exFAT доступний лише режим повного сканування. Це пов'язано з тим, що через особливості вказаних файлових систем у багатьох випадках швидкого сканування недостатньо для ефективного відновлення даних.

Збереження результатів

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

Синіми іконками відображуються елементи, які видно стандартними засобами операційної системи, червоними - ті, які були видалені або втрачені і недоступні стандартними засобами операційної системи.

Крім того, будуть доступні службові теки:

  • [Parent unknown] містить файли і теки, місце розташування яких не удалося прив'язати до кореневого каталога
  • [INTELLIRAW] містить файли, відсортовані за типом, знайдені за допомогою відновлення по сигнатурах (з технологією INTELLIRAW)

Для збереження відновлених даних або в контекстному меню елементу виберіть пункт "Копіювати в...", або натисніть кнопку "Масове виділення" на тулбарі, потім відзначте всі необхідні елементи і натисніть кнопку "Зберегти виділене".

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

Рекомендується зберегти результат сканування, - тисніть відповідну кнопку на тулбарі, аби не доводилося повторно сканувати розділ в разі, якщо вперше зберегли не всі потрібні дані.

Залишити коментар

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