Відновлення даних на жорстких дисках


Продовжуючи почату раніше розмову про програмне забезпечення для відновлення втрачених даних на жорстких дисках, варто було б більш детально розібратися зі структурою зберігання даних, а так само причини, що викликають втрату інформації, руйнування формату і логічного будови дисків. Адже насправді дані можуть бути знищені по-різному, або точніше буде сказати — різними способами можна втратити доступ до даних, все ще знаходяться на жорсткому диску. Користувач буде вважати дані втраченими, якщо до них не можна отримати доступ за допомогою стандартних засобів операційної системи. Спеціаліст і той, хто дочитає до кінця цю статтю, будуть почувати себе більш впевнено, так як в більшості випадків зможе відновити інформацію, навіть якщо вона недоступна засобами операційної системи. Спеціальним службам доступні найбільш досконалі програмно-апаратні методи, з допомогою яких можна отримати доступ до навмисно знищеним даними. Хочу спочатку порадити кращу программу для для відновлення даних на жорстких дисках – це Восстановление жесткого диска від EaseUS Data Recovery.

Розглянемо логічне будова жорсткого диска. Всередині приводу жорстких дисків знаходиться один або декілька дисків (пластин, млинців), виготовлених з металу, іноді скла. У кожного диска по дві магнітних поверхні (Sides) (в ряді випадків може використовуватися лише одна поверхня диска). Кожна робоча сторона диска розбита на концентричні доріжки (треки, циліндри) (Cylinders) за якими позиціонуються головки і де знаходиться інформація. У свою чергу, кожна доріжка розбита на певне число секторів (Секторів) по 512 байт. Сектор є мінімальним фрагментом, що містить інформацію. При форматуванні, за кілька секторів об’єднуються в кластери, і для операційної системи мінімальним фрагментом є вже кластер. В робочому стані над поверхнями диска рухаються зчитувальні/записуючі головки (Hides). Щоб головка потрапила до мети, тобто отримала доступ до потрібної інформації (сектору), їй потрібно вказати шлях у вигляді номерів (Сторона/Доріжка/Сектор). Сучасні жорсткі диски працюють в режимі адресації LBA, яка більш придатна для сприйняття ОС. Логічна структура жорсткого диска, представлена у вигляді LBA, відрізняється від фізичної (по набору Сторона/Доріжка/Сектор), трансляцію виконує контролер дискового накопичувача. На жорсткому диску присутні користувальницькі дані, доступні користувачеві і програмами, а також службова інформація, яка служить для забезпечення функціональності жорсткого диска.

На самому початку диска, в секторі 0/0/1 знаходиться PT (Partition Table) — таблиця розділів, MBR (Master Boot Record) — головна завантажувальна запис. Коли ми розбиваємо жорсткий диск на логічні розділи (логічні диски, тома), скажімо, з допомогою програми fdisk.exe, то ми як раз і створюємо його початку MRB і таблицю розділів. Таблиця розділів показує, на яку кількість логічних дисків розбите фізичний простір жорсткого диска, визначає їх характеристики. (Жорсткий диск може містити лише один логічний розділ (диск), що займає всю його фізичну поверхню.) Ці дані є службовою інформацією. Обов’язковим атрибутом кожного логічного диска є FAT (File Allocation Table) — таблиця розміщення файлів (файлова система). FAT створюється при форматування логічного диска, наприклад, за допомогою програми format.com або засобами операційної системи. Таблиця розміщення файлів містить інформацію про те, де на диску зберігається кожен файл. На початку розділу міститься дві копії FAT (FAT1, FAT2). Після другої копії FAT розташовані сектори АДМІНІСТРАТОРА (Root Directory), де міститься опис файлів у кореневому каталозі диска. Далі слід область даних (Data area) — область диска, де зберігаються звичні нам дані, відновлення, у разі необхідності, яких і присвячена дана стаття.

Таблиця розділів (Partition Table) таблиця розташування файлів (FAT) є свого роду «географічною картою місцевості», за якої операційна система визначає, де і що розташоване на магнітній поверхні жорсткого диска. Якщо операційна система втратить доступ до цієї «карту місцевості», то вона просто осліпне, не зможе орієнтуватися і знайти потрібну інформацію, дані виявляться недоступними. Виходячи з цього, стає зрозуміло, що для того, щоб перепинити доступ до інформації, не обов’язково знищувати самі дані, досить збити з пантелику операційну систему, позбавивши її службової інформації, і вона перестане орієнтуватися на фізичній поверхні жорсткого диска або якогось його логічного розділу — для користувача ця поверхня виявиться абсолютно порожній і недоступною. Отже, розглянемо типові способи втрати даних, найбільш часто трапляються в практиці користувачів ПК.

Руйнування (пошкодження) Partition Table і MBR. Улюблене засіб вірусів. Прикиньте, досить зіпсувати відносно невеликий початковий ділянку диска з інформацією про його структуру, як всі логічні розділи, а отже і дані на них стають недоступними. Часу для такої деструктивної діяльності буде потрібно дуже мало, а результат найбільш ефектний — втрата доступу до даних на всій поверхні жорсткого диска. Можливі й приватні варіанти: видалення з Partition Table якогось одного логічного диска, — так система начебто і зберігає працездатність, але дані на деякій частині жорсткого диска недоступні, втім, і ця область стає ніби невидима.

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

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

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

Видалення даних стандартними засобами ОС. У Windows за замовчуванням видаляються файли переносяться в кошик і якийсь час зберігаються там, звідки можуть бути відновлені користувачем — ми не будемо розглядати цей банальний випадок. Припустимо, ви безповоротно видалили файли засобами ОС (утримуючи кнопку Shift або очистивши кошик). Що відбувається з файлами? Тут треба взяти до уваги, що навіть дуже великі файли на вигляд, як би видаляються практично миттєво, чого ніяк не могло б статися при фізичному затиранні всій займаної ними поверхні диска. Насправді файли не стираються — вони позначаються ОС, як видалені, і продовжують існувати на тому ж місці. Операційна система просто додає заголовок видаляється файлу спеціальні символи, і тепер він вважається неіснуючим для користувача, хоча і бачимо ОС. Простір, займане файлом, позначеним як віддалений, вважається порожнім і може в будь-який момент використовуватися ОС на свій розсуд, тобто на нього може бути здійснена нова запис. Спеціальні програми можуть відновлювати файли, позначені ОС видалені якщо на їх місце ще не проведена нова запис.

Вище описані найбільш поширені причини втрати доступу до інформації, з якими користувачі стикаються в переважній більшості випадків. Звичайно, можливі їх комбінації, а так само і більш руйнівні способи ураження інформації. Скажімо, на жорсткому диску можна зруйнувати або замінити файлову систему і таблицю розділів одночасно, але це ще не означає, що до інформації в області даних доступ втрачено назавжди. Програми для відновлення даних аналізують структуру даних, що залишилися, за розрізненими даними визначають параметри файлової системи, з окремих фрагментів збирають цілісні файли і витягують їх на інші носії. Як вони це роблять? — це, напевно, відомо лише розробникам таких програм, навряд чи такими знаннями хтось захоче ділитися просто так.
Джерело: EaseUS Data Recovery