Файлові системи різних пристроїв та операційних систем

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

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

ВИДИ НАКОПИЧУВАЧІВ

Хоча файлові системи є досить гнучкими і не прив'язуються до певного запам'ятовуючого пристрою, іноді все ж можна визначити тип файлової системи за видом накопичувача.

USB-флеш накопичувачі і карти пам'яті зазвичай працюють на FAT або exFAT. Цей тип файлової системи сумісний з великим розмаїттям операційних систем. Саме це дозволяє Вам користуватись USB-флеш накопичувачем або картою пам'яті на комп'ютері з будь-якою ОС.

NTFS, HFS+, Ext2-4 є більш типовими для персональних комп'ютерів і робочих станцій. Ці файлові системи не сумісні між собою.

Більшість мережевих систем NAS працюють на файлових системах XFS, Ext2-4, Btrfs або ReiserFS. Вони вважаються найбільш придатними для домашніх серверів завдяки своїй будові, в той час як, наприклад, XFS ідеально підходить для зберігання середніх і великих файлів, а ReiserFS дає максимальну швидкість та дозволяє економити простір при зберіганні великої кількості малих за розміром файлів. Файлові системи NAS, як правило, приховані від користувачів і відображаються у вигляді мережевих папок через спеціальні мережеві протоколи.

ОПЕРАЦІЙНІ СИСТЕМИ

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

Windows OS

NTFS

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

Структура файлової системи NTFS

Структура: заголовок файлової системи (завантажувальний запис), Головна таблиця файлів (Master File Table або MFT), простір для файлів.

Файлова система NTFS використовує Головну таблицю файлів (MFT) для організації роботи з файлами. Загалом, Головна таблиця файлів містить інформацію про всі файли, а також папки, в яких вони знаходяться. Така інформація включає в себе місцезнаходження, ім'я, розмір файлу, а також дату і час його створення й останньої модифікації.

Якщо атрибути файлу занадто великі і не вміщаються в одній комірці Головної таблиці файлів, файлова система виділяє ще одну комірку у файлі для списку атрибутів файлу.

Видалення файлу

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

Відновлення: інформація про видалений файл (ім'я, розмір, розташування) залишається у Головній таблиці файлів. Якщо запис у Головній таблиці файлів залишається незмінним, а дані на диску не перезаписані, ймовірність відновлення цього файлу складає 100%. Втім, навіть якщо запис видалено, все ще можна знайти файл за його вмістом за допомогою методу RAW-відновлення. У такому разі процедура відновлення проводиться безпосередньо із вмісту диска, в обхід структур файлової системи.

Форматування

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

Відновлення: Відновлення: перші 256 файлів втрачають свої посилання до Головної таблиці файлів; таким чином, їх відновлення можливе лише за допомогою методу RAW-відновлення. Шанси на відновлення решти файлів складають близько 100%.

FAT/FAT32

FAT/FAT 32 – одна з найстаріших файлових систем, яка характеризується дуже простою будовою. Ця файлова система підтримується усіма операційними системами, роблячи можливим обмін між різноманітними пристроями. Її найчастіше встановлюють на невеликі за ємністю зовнішні запам'ятовуючі пристрої, такі як карти пам'яті фото- та відеокамер або USB-флеш накопичувачі.

Найбільш очевидним недоліком цієї файлової системи є її нездатність зберігати великі за розміром файли: обмеження щодо розміру кожного з файлів – 2 ГБ для FAT16 і 4 ГБ для FAT32.

Структура файлової системи FAT/FAT32

Структура: заголовок файлової системи (3 заголовки у FAT32), Таблиця розміщення файлів (File Allocation Table або FAT) і простір для даних.

В основі файлової системи FAT лежить Таблиця розміщення файлів, яка містить записи для кожного кластера на диску і посилання до місцезнаходження файлу на диску. В ній також знаходиться посилання на початковий кластер файлу, кінцевий кластер та проміжні кластери (якщо вони є). Файлова система FAT не виконує дефрагментацію фрагментованих файлів. Через особливості конструкції системи, імена файлів у FAT не можуть складатись з більше ніж 8-ми символів, а їх розширення – з 3-ох. Тому файлова система зберігає довгі імена файлів окремо, використовуючи додаткову функцію LFN (Long file name).

Видалення файлу/форматування

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

Відновлення: початок файлу можна знайти, але інформація про кінець файлу та проміжні кластери відсутня, тому програмі доведеться робити припущення щодо розміщення файлу. З огляду на це, відновлення може виявитись неповним. Крім того, файлова система FAT не виконує дефрагментацію файлів, що значно ускладнює відновлення фрагментованих файлів навіть за допомогою методу RAW-відновлення. Ще однією перепоною є те, що імена файлів обмежені у довжині і навіть можуть зберігатися окремо на диску. Відновлення довгих імен файлів може не дати жодних результатів.

ExFAT

ExFAT було розроблено корпорацією Microsoft як вдосконалену версію FAT. Завдяки своїй простоті, ця файлова система здобула досить велику популярність. Але на відміну від своєї попередниці, ExFAT дозволяє зберігати файли будь-якого розміру.

Структура файлової системи ExFAT

Структура: заголовок файлової системи, Таблиця розміщення файлів (File Allocation Table або FAT) і простір для даних.

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

Видалення файлу/форматування

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

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

ReFS

ReFS – файлова система, яка часто використовується в серверах. Ця файлова система застосовує метод копіювання при записі (Copy-on-Write або CoW), завдяки якому старі версії видалених файлів залишаються на диску. Ця файлова система не дуже підходить для зберігання звичайних користувацьких файлів, оскільки відводить щонайменше 64 КБ дискового простору для кожного з файлів. Якщо розмір файлу менший за 64 КБ, файлова система в будь-якому випадку збереже його у тому місці, що робить використання дискового простору неефективним.

macOS

HFS

Файлова система HFS – застаріла файлова система компанії Apple, яка підтримується Recovery Explorer тільки в режимі читання (без сканування).

HFS+

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

Структура файлової системи HFS+

Структура: заголовок файлової системи; журнал файлової системи; Файл каталогу, в якому знаходяться файли, що містять інформацію про інші файли (так звані жорсткі посилання).

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

Файлова система HFS+ орієнтована на дефрагментацію файлів. Вона ретельно шукає місце для збереження файлу і буквально «склеює» його фрагменти. Втім, інші фрагментовані файли можуть перешкоджати одержанню найкращого результату відновлення.

Файлова система HFS+ підтримує жорсткі посилання, які зберігаються у вигляді окремих файлів всередині прихованої кореневої папки і служать для зберігання інформації про користувацькі файли. Кожен файл жорсткого посилання прив'язаний до певного користувацького файлу.

Видалення файлу

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

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

Форматування

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

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

Linux

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

Ext2-Ext4

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

Структура файлової системи Ext2-Ext4

Структура: заголовок файлової системи; іноди; таблиця інодів.

Ext2

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

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

Видалення файлу

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

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

Форматування

Процедура: Ext2 витирає всі групи розміщення файлів та видаляє іноди файлів.

Відновлення: програма може застосовувати метод RAW-відновлення для пошуку файлів за їх вмістом. Ймовірність успішного відновлення залежить від ступеня фрагментації файлу: фрагментові файли складно відновити.

Ext3/Ext4

Структура файлової системи Ext3-Ext4

Структура: Заголовок файлової системи; інод; таблиця інодів.

На додаток до інодів, які застосовуються у Ext2 та Ext3, файлова система Ext4 використовує журналювання. Журнал відстежує всі зміни у файловій системі. Ext4 відрізняється від файлової системи Ext3 за структурою посилань.

Видалення файлу

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

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

Форматування

Процедура: Всі групи розміщення, а також іноди файлів і інформація у журналі знищуються. Журнал може досі містити інформацію про певні нещодавно створені файли.

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

ReiserFS

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

Структура файлової системи ReiserFS

Структура: заголовок файлової системи, S+дерево.

Файлова система використовує S+-дерево, яке зберігає метадані файлів та містить дескриптори всіх файлів та фрагментів файлів. В процесі запису нових метаданих до дерева нове дерево, створене для нових даних, замінює старе. У той же час, його стара копія залишається на диску. Таким чином, файлова система може зберігати багато копій метаданих. Цей метод називається методом копіювання при записі (Copy-on-Write або CoW).

Видалення файлу

Процедура: Система оновлює свої S+-дерево для того, щоб виключити файл, і оновлює мапу вільного простору.

Відновлення: завдяки копіюванню при записі можна відновити всі файли, включаючи їх імена. Крім того, можна також отримати попередню версію файлу зі старої копії S+-дерева.

Форматування

Процедура: Файлова система створює нове S+-дерево поверх існуючого.

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

XFS

XFS було розроблено компанією Silicon Graphics для їх серверів на платформі IRIX. Сильною стороною даної системи є можливість працювати з файлами будь-якого розміру однаково ефективно. Файлова система має високий рівень оптимізації файлів, але характеризується досить складною структурою. Існує кілька версій файлової системи XFS, таких як TRiX Intel для Windows. Recovery Explorer підтримує всі версії XFS. XFS може використовуватись у всіх варіантах операційної системи Linux.

Структура файлової системи XFS

Структура: складні деревоподібні структури, іноди, бітмапи

XFS використовує іноди для зберігання метаданих файлів і журналювання для відстеження змін у файловій системі. Тільки метадані підлягають журналюванню. Кожен інод має заголовок і бітмапу. XFS зберігає іноди у спеціальному дереві у певному місці на диску. Система також містить бітмапу для вільних блоків на диску.

Видалення файлу

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

Відновлення: XFS зберігає метадані файлу, що дозволяє відновити втрачені файли. Шанси відновити видалений файл навіть з коректним іменем досить високі.

Форматування

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

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

JFS

Файлову систему JFS було створено компанією IBM для їх внутрішніх серверів. Ця журнальована файлова система також використовується в Linux. JFS характеризується надійністю і високою продуктивністю. JFS може вважатися другою після XFS, однак має більш складну архітектуру. На сьогодні її застосовують в корпоративних системах на базі Linux.

Структура файлової системи JFS

Структура: суперблок, B+-дерево, журнал, набори файлів інодів

Файлова система JFS використовує структуру B+-дерева для зберігання даних, журналювання для змін у файловій системі та іноди для опису файлів. Ця система також здатна зберігати кілька файлових систем в одному розділі з посиланнями на один і той самий файл. Імена файлів можуть бути збережені в кодуваннях Юнікод та UTF8.

Видалення файлу

Процедура: JFS оновлює лічильник використання об'єкту та звільняє інод в мапі інодів. Каталог перебудовується, щоб відобразити зміни.

Відновлення: Інод файлу залишається на диску, збільшуючи шанси на відновлення файлів до майже 100%. Ймовірність відновлення низька тільки для імен файлів.

Форматування

Процедура: JFS створює нове дерево. Воно спочатку мале за розміром і розширюється при подальшому використанні файлової системи.

Відновлення: шанси відновити втрачені файли після форматування достатньо високі завдяки невеликому розміру нового B+-дерева. Крім того, внутрішня нумерація інодів збільшує шанси на легке відновлення файлів після форматування.