Топ програм для відновлення даних з Ext4, Ext3 та Ext2 дисків в Linux
Яка програма краще впорається з відновлення даних в ОС Linux? Який алгоритм покаже найкращі результати при пошуку видаленої інформації? Відповіді на ці питання ви отримаєте в цій статті! Ми детально розберемо можливості кожної з програм для відновлення даних!
- Вступ
- Структура файлової системи та алгоритми пошуку видалених даних
- Тести та порівняння результатів відновлення
- Видалено головний суперблок
- Видалено головну таблицю дескриптора групи блоків
- Висновок
- Питання та відповіді
- Коментарі
Вступ
У більшості сучасних дистрибутивів, Linux за замовчуванням використовує файлову систему Ext4. В попередніх дистрибутивах використовувалася Ext3, Ext2, а колись – просто Ext.
Характеристика | Ext | Ext2 | Ext3 | Ext4 |
---|---|---|---|---|
Дата випуску | 1992 | 1993 | 2001 | 2008 |
Журнальне відновлення | Ні | Ні | Так | Так |
Максимальний розмір файлу | 2 ГБ | 16 ГБ | 2 ТБ | 16 ТБ |
Максимальний розмір розділу | 2 ГБ | 16 ТБ | 32 ТБ | 1 ЕБ |
Сумісність | Низька | Середня | Середня | Висока |
Підтримка розширених атрибутів | Ні | Так | Так | Так |
Фрагментація | Висока | Середня | Низька | Низька |
Швидкість зчитування/запису | Низька | Середня | Середня | Висока |
Основне використання | Старі UNIX-системи | UNIX, Linux | Linux | Сучасні Linux-системи |
Файлова система Ext2 частково стирає інформацію про видалений файл: зокрема, посилання на імена файлів, що робить відновлення їх імен практично неможливими. «Журнальовані» файлові системи Ext3 та Ext4, виконують видалення через журнал. І результати відновлення даних з цих систем залежать від розміру журналу та часу роботи ОС після видалення файлу. Тому, при втраті важливих даних слід відразу ж вживати заходів. А саме, не допустити перезапису інформації на диску, можна навіть відключити диск з якого були видалені потрібні файли. Після цього встановлюєте потрібну програму, підключаєте диск назад та намагаєтеся відновити втрачені файли.
Ми відібрали декілька найпопулярніших програм для відновлення даних та провели порівняльні тести. Тепер опишемо результати детальніше та порівняємо їх:
- Hetman Partition Recovery ;
- R-Studio;
- EaseUs Data Recovery Wizard;
- Disk Drill.
Структура файлової системи та алгоритми пошуку видалених даних
Перш ніж приступати до випробувань, давайте розберемо структуру файлових систем. Вони складаються із завантажувача, в якому знаходиться Група блоків.
На початку структури розташований «Головний суперблок» (Superblock), потім йде «Дескриптор груп» (Group Descriptors), після якого знаходиться «Бітова карта блоків» (Block Bitmap), далі за нею – «Бітова карта індексних дескрипторів» (Inode bitmap), після якої розташована «Таблиця вузлів індексних дескрипторів» (Inode table), а в кінці знаходяться «Дані користувача» (Data).
Ext4 – це результат еволюції Ext3, найпопулярнішої файлової системи в Linux. У багатьох аспектах Ext4 є більший крок вперед у порівнянні з Ext3, набагато більше ніж сама Ext3 по відношенню до Ext2. Значним удосконаленням Ext3 в порівнянні з Ext2 був «журнал роботи», в той час як Ext4 передбачає зміни у важливих структурах даних, як наприклад, призначених для зберігання внутрішньої інформації файлів.
Це дозволило створити файлову систему з більш просунутим дизайном, більш продуктивну та стабільну, і з великим набором функцій.
На сьогоднішній день максимальний розмір, який підтримує Ext3, дорівнює 16 терабайт. А розмір файлу обмежений 2 терабайтами. В Ext4 додана 48-бітна адресація блоків, що означає, що максимальний розмір цієї файлової системи дорівнює одному екзабайту, і файли можуть бути розміром до 16 терабайт. 1 EB (екзабайт) = 1,048,576 TB (терабайт), 1 EB = 1024 PB (петабайт), 1 PB = 1024 TB, 1 TB = 1024 GB. Чому 48-бітна, а не 64-бітна? У той час існувала ціла низка обмежень, які необхідно було зняти щоб зробити Ext4 64-бітною, і такого завдання перед Ext4 не ставилося. Структури запису інформації в Ext4 проектувалися з урахуванням необхідних змін.
На даний момент один каталог Ext3 не може містити більше, ніж 32000 підкаталогів. Ext4 знімає це обмеження і дозволяє створювати необмежену кількість підкаталогів.
Файлова система Ext4 має вигляд B-дерева. Тому інформація зберігається в самих листах цього дерева, і щоб до них дістатися інструментом для відновлення даних, потрібно пройти весь цей ланцюжок.
Якщо деякі елементи з ланцюжка стерти, то утиліта для відновлення даних не зможе знайти шлях до потрібної інформації. Далі в тестах ми якраз спробуємо затерти такі елементи зі структури і подивимося, як з цим завданням впораються випробовувані нами програми.
Тести та порівняння результатів відновлення
В операційній системі Windows переглянути вміст накопичувача з файловою системою Ext4/3/2 можна тільки за допомогою спеціальних утиліт або встановивши потрібний драйвер. Наші піддослідні надають таку можливість за замовчуванням, дозволяють побачити вміст таких розділів та відновити з них потрібну інформацію.
Для тестів було відібрано декілька найпопулярніших програм – це Hetman Partition Recovery, R-Studio, EaseUs Data Recovery Wizard, Recuva та Diskdrill. Після попереднього тесту довелося виключити одну з програм, так як їй вдалося знайти лише невелику частину даних на диску з Ext 4 – це утиліта Recuva. Вона показала найгірший результат, відновивши лише 20% втрачених даних. Тому ми вирішили виключити її з даного ТОПу. А при повторній перевірці й зовсім нічого не знайшла.
Отже, приступимо до тестування.
На ПК з ОС Linux ми створили тестовий диск з файловою системою Ext4. Скопіювали на нього дані, декілька картинок, відео та документів, потім видалили частину з них і демонтувати том.
Всі подальші тести по відновленню втрачених даних проводилися на комп’ютері з операційною системою Windows 10.
Тест 1. Hetman Partition Recovery
Після підключення диску з Ext4, Windows 10 не розпізнала файлову систему. З’явилося повідомлення, що пристрій не розпізнано, і запропонувала його відформатувати.
Ні в якому разі, запускаємо першу утиліту Hetman Partition Recovery та скануємо диск.
Програма знайшла розділ, визначила файлову систему, відображає ім’я та його розмір.
Для початку ми виконали швидке сканування, цього виявилося цілком достатньо.
Результат: знайдено папок – 5, файлів – 21.
При простому видаленні, програма без проблем виявила файли навіть з допомогою швидкого сканування. Повний аналіз не потрібен, що заощадило нам час.
Видалені файли позначені червоним хрестом. Всі файли можна переглянути за допомогою прев’ю, їх без проблем вдалося відновити. Збережено структуру, всі файли та папки на своїх місцях, це значно спрощує візуальний пошук потрібної інформації.
Hetman Partition Recovery впоралася з поставленим завданням та успішно пройшла цей тест. Всі дані відновлено.
Тест 1. R-Studio
R-Studio без проблем виявила тестовий розділ, визначила його файлову систему, ім’я та розмір.
Програма знайшла всі файли, їх вміст відображається в попередньому перегляді.
Все, окрім документів.
Збереглася структура диска та імена файлів. При швидкому аналізі утиліта не відображає вміст документів в превью.
Повний аналіз показав такий же результат.
R-Studio пройшла перевірку, але виникли труднощі з відображенням документів. Всі файли відновлено.
Тест 1. EaseUs Data Recovery Wizard
EaseUs Data Recovery Wizard – відображає диск, його ім’я та розмір. Тип файлової системи не розпізнано.
Запустивши сканування, програма відразу ж починає розширений пошук.
Вона знайшла файли, але структура диска не збереглася, втрачено імена файлів, всі вони розкидані по типу в окремі каталоги. Швидше за все EaseUs Data Recovery Wizard аналізує диск за допомогою глибокого сканування, а це досить довгий процес при великому розмірі диска.
В результаті: знайдено всі файли, вони розкидані по папкам відповідно до їх типу, вміст відображається в попередньому перегляді.
Що стосується відео – один з файлів пошкоджений.
Фото – всі на місті.
Видалені файли ніяк не позначені: незрозуміло які з них були видалені, а які залишалися на диску. Визначити, що всі файли на місці, можна лише за їх кількістю. Якщо даних багато, то важко буде знайти потрібні. Доведеться витратити чимало часу щоб їх переглянути. EaseUs Data Recovery Wizard впоралася з поставленим завданням, не вдалося відновити тільки відео.
Тест 1. Disk Drill
Disk Drill – виявила розділ, розпізнала його ім’я та розмір.
Швидке сканування диска недоступне. Довелося виконувати «Глибокий аналіз».
Результат повного сканування:
Disk Drill знайшла дані. Втрачено структуру каталогів та імена файлів, всі вони розкидані по папкам відповідно до їх типу.
Є всі фото, в попередньому перегляді можна подивитися їх вміст.
Вміст відео теж відображається.
Один відеофайл пошкоджено.
Програма знайшла всі документи, вміст відображається в попередньому перегляді.
Disk Drill впоралася із завданням. Хоча аналіз і тривав чимало часу, особливо це відчутно при великому обсязі диска і великій кількості файлів, пошук втрачених даних займе багато часу.
Всі утиліти пройшли перший тест і показали непогані результати.
Далі, ми по черзі будемо затирати основні елементи структури файлової системи, а саме: «Головний суперблок» та «Головну таблицю дескриптора», і перевіримо результати.
Видалено головний суперблок
Отже, у другому тесті ми видалили «Головний суперблок».
Суперблок – це область в якій зберігаються метадані файлової системи.
Аналогічно тому, як inod-и зберігають метадані про файли, суперблок зберігає метадані про файлову систему. Якщо раптом суперблок буде пошкоджено, то неможливо буде змонтувати розділ.
У суперблоці зберігаються такі дані:
- Кількість блоків в файловій системі;
- Кількість вільних блоків;
- Кількість i-нод в блоковій групі;
- Блоки в блоковій групі;
- Кількість запусків з часу останньої перевірки fsck;
- UUID;
- Стан (чи була коректно розмонтована, виявлені помилки, і т.д.);
- Тип файлової системи;
- ОС в якій було відформатовано даний розділ;
- Час останнього монтування;
- Час останнього запису.
Суперблок критично важливий для файлової системи. Тому в кожній блоковій групі є його копії.
Алгоритм пошуку нашої програми дозволяє без зусиль відновити дані навіть з ушкодженою структурою файлової системи.
Hetman Partition Recovery дозволяє проаналізувати дисковий простір за допомогою пошуку по сигнатурам. Аналізуючи поверхню диска сектор за сектором, утиліта знаходить певні послідовності байт минаючи втрачені елементи ланцюжка, та відображає дані користувачеві. Навіть якщо затерто всю структуру файлової системи, але залишилися каталоги нульового рівня, це не стане проблемою і Hetman Partition Recovery відновить дані.
Тепер подивимося, як це виглядає на практиці.
Тест 2. Hetman Partition Recovery
Після затирання “Superblock”-у – Hetman Partition Recovery визначила тестовий розділ, розпізнала його ім’я і тип файлової системи.
Виконавши Швидкий аналіз, результат не змінився.
Програма знайшла всі дані, їх вміст можна подивитися у вікні попереднього перегляду.
Всю інформацію вдалося відновити.
Програма впоралася із завданням навіть без Повного аналізу, з відмінним результатом.
Збережено структуру, імена файлів, вміст відображається у вікні попереднього перегляду.
Друге випробування пройдено успішно.
Тест 2. R-Studio
R-Studio також виявила розділ, відображає його ім’я та тип файлової системи.
Результат такий же, як і в попередньому тесті: програма знайшла всі файли, але не відображає вміст документів.
І після Повного аналізу результат не змінився.
Збережено структуру диска та імена файлів, всі дані на місці. Програма пройшла тест. Єдиний недолік – вміст документів не відображається.
Тест 2. EaseUs Data Recovery Wizard
EaseUs – виявила диск. Як і в попередньому тесті, не відображається тип файлової системи.
Після сканування той же результат, що і в попередньому випробуванні – файли розкидані по папках, немає структури диска, втрачено імена файлів, вміст файлів відображається.
Пошкоджено одне відео, і його не вдалося відновити.
Програма успішно пройшла друге випробування, з невеликими втратами.
Тест 2. Disk Drill
Disk Drill – відображає диск, його ім’я та розмір. Швидке сканування для даного пристрою недоступне.
Результат глибокого аналізу такий же, як і в першому тесті. Немає структури диска, втрачено імена файлів, але всі дані на місці, можна подивитися їх вміст.
Програмі не вдалося відновити одне відео.
Видалено головну таблицю дескриптора групи блоків
У наступному випробуванні на диску була видалено «Головну таблицю дескриптора групи блоків».
Кожна група блоків в файлової системі має один дескриптор, пов’язаний з нею. Дескриптор групи є другим елементом в групі блоків. У стандартній конфігурації кожна група блоків містить повну копію таблиці дескрипторів.
У таблиці зберігається інформація про дескриптори, в яких в свою чергу перебуває інформація про атрибути та фізичне розташування файлів.
Ця інформація являє собою послідовність 32-бітних номерів блоків, які містять дані файлу.
Результати тесту після видалення головної таблиці дескриптора описано нижче.
Тест 3. Hetman Partition Recovery
Hetman Partition Recovery – пройшов даний тест без будь-яких змін, показавши такий же результат, як і в двох попередніх тестах.
Збережено структуру та імена файлів, всі файли вдалося відновити. Програма знайшла всі дані, навіть за допомогою швидкого аналізу.
Тест 3. R-Studio
Програма R-Studio – показала результат такий же, як і в попередніх тестах.
Збереглася структура та імена файлів, не відображається лише вміст документів.
Але в підсумку, програма їх відновила.
Тест 3. EaseUs Data Recovery Wizard
Результат EaseUs також не змінився. Втрачено структуру та імена файлів.
Не вдалося відновити один відеофайл.
Тест 3. Disk Drill
У третьому тесті програма Disk Drill показала найгірший результат. Вона не знайшла більшу частину файлів: навіть тих, які не видалялися.
Програма запропонувала просканувати весь диск, що може підвищити шанси пошуку втрачених даних.
В результаті сканування всього диска, Disk Drill знайшла втрачену інформацію. Результат такий же, як і в попередніх тестах.
Одне відео пошкоджено, його вдалося відновити, але більша частина інформації затерлась.
Вцілому, Disk Drill впоралася із завданням, хоча і довелося витратити більше часу на пошуки втрачених даних.
Висновок
Отже, що можна сказати у висновку. Всі програми пройшли три наших тести, але з різними результатами.
Програма | Результат пошуку файлів | Стан структури диска та імен файлів | Відновлення даних |
---|---|---|---|
Hetman Partition Recovery | Знайдено всі файли | Збережено структуру диска та імена файлів | Всі дані вдалося відновити |
R-Studio | Знайдено всі файли | Збережено структуру та імена файлів | Документи не відображаються в попередньому перегляді, але вдалося відновити |
EaseUs | Знайдено всі файли | Втрачено структуру диска, файли відсортовані в папках по типу, втрачено імена | Не вдалося відновити одне відео |
Disk Drill | Знайдено всі файли | Втрачено структуру диска та імена файлів | Один відеофайл пошкоджено, вдалося відновити, але більша частина затерта |
Отже, результати ми отримали і можна визначитися з вибором програми для відновлення втраченої інформації. Але яка з них краща та на якій зупинити свій вибір – вирішувати вам.
Я лише додам наступне – алгоритм нашої програми дозволяє зберегти структуру папок та назви файлів, що спрощує пошук потрібних даних і економить ваш час. Також, Hetman Partition Recovery може створити образ диска для подальшого відновлення, що є стандартом для роботи зі збійними носіями.
Деякі утиліти із тестованих цієї можливості не мають. Алгоритм Hetman Partition Recovery дозволяє відновити дані навіть якщо затерти більшу частину структури файлової системи, і якщо на диску залишилися хоч якісь дані, то вона здатна їх відновити, так як в процесі пошуку використовує сигнатурний аналіз.
По-перше, переконайтеся, що у вашій системі встановлений e2fsprogs 1.41.0 або пізніша версія. Це необхідно для підтримки ext4. Якщо новий розділ, в якому ви хочете створити файлову систему ext4, називається /dev/sdb1, то все, що потрібно ввести, це:
/sbin/mke2fs -t ext4 /dev/sdb1
Потім, щоб змонтувати цю нову файлову систему, все, що вам потрібно зробити, це:
mkdir /mnt/test
mount -t ext4 /dev/sdb1 /mnt/test