Статьи

Програмне відновлення даних за допомогою R.Saver

  1. структура диска
  2. MBR
  3. файлові системи
  4. NTFS
  5. FAT
  6. Методи відновлення даних
  7. Відновлення видалених файлів
  8. Реконструкція пошкодженої файлової системи
  9. Відновлення після зміни структури розділів диска
  10. Відновлення по сигнатурам
  11. Алгоритм відновлення даних
  12. вибір розділу
  13. сканування
  14. збереження результатів

У статті описуються принципи і методи програмного відновлення даних для користувачів, що не володіють спеціальними знаннями.

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

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

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

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

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

MBR

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

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

В іншому випадку може з'явитися повідомлення про помилку, наприклад: «Reboot and select a 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), тому деякі службові записи попередньої файлової системи ще можна відновити. Чим більше було записано файлів на відформатований розділ - тим менше ймовірність успішного відновлення даних.

У цьому випадку дані фізично залишаються на своїх місцях, також зберігається частина інформації про них, що зберігалася в попередній версії 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

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

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

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

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

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

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

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

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

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

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

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

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

Новости