Введення

Для відновлення видалених файлів в Лінукс ми будемо використовувати утиліту Foremost, зазвичай ця утиліта спочатку не входить до складу дистрибутивів, так що доведеться її завантажити за посиланням вище і встановити з вихідного коду, або пошукати зібраний пакет для вашого дистрибутива. Всі питання по установці програми можна задати тут – Установка й настроювання Linux.

Загальна інформація

Спочатку Foremost був розроблений Відділом Спеціальних Досліджень Військово-Повітряних сил та Інформаційним центром безпеки програми навчання та досліджень (природно в США). Коли військові з нею награлися, утиліта була представлена широкій публіці. У цій статті я постараюся описати одне дуже корисне властивість – відновлення видалених файлів в Linux, функціонал утиліти на цьому не обмежується і в умілих руках foremost являє собою потужний інструмент націленому пошуку та розпізнавання глибоко захованих файлів, але ми не про це Відновлення інформації в Linux

Принцип роботи foremost

Якщо зовсім просто, то foremost сканує і розпізнає файлову структуру відомих йому типів файлів, розпізнавши початок знайомого типу файлу утиліта намагається знайти кінець файлу, зібрати все воєдино і записати на диск. Тип файлу, який потрібно відновити, задається опцією “-t”, наприклад:
foremost-t zip
Підтримувані типи файлів: avi, bmp, dll, doc, exe, gif, htm, jar, jpg, mbd, mov, mpg, pdf, png, ppt, rar, rif, sdw, sx, sxc, sxi, sxw, vis, wav, wmv, xls, zip. Також можливий запуск з опцією “-all”, в цьому випадку foremost буде шукати всі підтримувані типи файлів. Інші можливі опції можна подивитися, набравши в терміналі
man foremost

Хочу відразу попередити про парі особливостей цієї утиліти – по-перше, foremost повинен бути запущений НЕ з того розділу диска, з якого зібралися відновлювати файли, в приципах це не проблема, якщо директорія /home у Вас виділена в окремий розділ, а от якщо /root /home у вас на загальному розділі, то доведеться запускати foremost з Live-CD або флешки(foremost присутній на деяких Live-CD, а як створити з диска завантажувальну флешку можна почитати в цій статті – Встановлення Linux на флешку. Другий момент – відновлювані файли повинні записуватися на розділ відмінний від того, з якого вони відновлюються(зрозуміло? Відновлення інформації в Linux ). Ну і в третіх, при відновленні імена файлів не зберігаються.
Нижче пропоную розглянути роботу foremost на конкретному прикладі.

Підготовка до скануванню

Щоб трохи урізноманітнити експеримент, файли я вирішив відновлювати на карту пам’яті. Для цього треба відформатувати її у файлову систему EXT3, робити це потрібно, коли карта НЕ змонтовано. Для початку форматування вводимо в терміналі з правами суперкористувача(root):
mkfs /dev/sdc1, де /dev/sdc1 – ваша карта пам’яті або флешка
Приблизний висновок при позитивному результаті:
# mkfs /dev/sdc1
mke2fs 1.41.1 (01-Sep-2008)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
122880 inodes, 490116 blocks
24505 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
60 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

Writing inode tables: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs-c or-i to override.

Після того, як форматування завершено потрібно витягнути карту, вставити знову і примонтувати(якщо цього не робиться автоматично). Якщо все пройшло успішно, то на карті пам’яті з’явиться директорія “lost+found”.

Запуск сканування foremost

Для початку сканування і пошуку видалених файлів вводимо в консолі з правами адміністратора:
cd /
foremost-v-T-t jpg-i /dev/sda8-o /media/disk/disk
де
-v – виводити інформацію про прогрес під час сканування
-Т – проставити час у назві директорії для відновлених файлів
-t jpg,xls – шукати та відновлювати тільки файли типу *.jpg (можна перераховувати кілька типів файлів через кому)
-i /dev/sda8/ – розділ вінчестера, з якого потрібно провести відновлення даних
-o /media/disk/disk – тут /media/disk/disk це директорія на карті пам’яті, в яку повинні відновлюватися файли.
Примітка: якщо хочете відновити файли Office необхідно вказувати “ole” як значення типу файлу(-t ole)

Нижче скріншот роботи утиліти:

Відновлення інформації в Linux

Папка з відновленими файлами(зверніть увагу, завдяки опції-T при запуску сканування, назва директорії додано час початку роботи програми):

Відновлення інформації в Linux

У вихідний директорії, по завершенні роботи foremost, ви знайдете папки з назвами шуканих типів файлів, текстовий файл з збереженим логом програми.

Висновок

Власне сканування розділу розміром 30гб у мене зайняло близько півгодини, на виході я отримав 61020 *jpg файлів(трохи більше 1гб), більша частина з них – тимчасові файли інтернету, але є, звичайно, і вручну видалені мною файли.

Всі питання пов’язані з установкою і налаштуванням дистрибутивів Linux обговорюються тут – Linux. Питання і відповіді

Соц закладки
Соц закладки