Статья также доступна на украинском (перейти к просмотру).
Оглавление
- Программные средства для восстановления данных в Linux
- Установка TestDisk на ОС Linux
- Практическое использование TestDisk в Ubuntu
Какой бы надежной не была операционная система сервера или клиентской машины, периодические потери данных, в том числе и системных – неизбежны. Поэтому актуальным является поиск и правильное использование программных средств для восстановления утраченных данных на носителях разного типа с использованием различных видов файловых систем. Рассмотрим существующее программное обеспечение, предназначенное для этого и продемонстрируем работу с ним.
Программные средства для восстановления данных в Linux
В настоящее время существует около двух десятков достаточно известных программ для восстановления данных в ОС Linux, каждая из которых имеет свои особенности, касающиеся как ее характеристик и возможностей, так и типы лицензии, под которой она распространяется. Рассмотрим одну из наиболее используемых программ с открытым кодом под названием TestDisk. Перечислим ее основные характеристики и возможности:
- Язык создания программы: С;
- Код открыт, расширяем;
- Обеспечивает интерфейс командной строки;
- Распространяется свободно по лицензии GNU/GPLv2;
- Кроссплатформенная – работает на платформах Windows, SunOS, macOS, Linux, ***BSD и других;
- Совместимость с файловыми системами FAT, FAT32, exFAT, NTFS, Linux (ext2, ext3 и ext4) и другими;
- Назначение – восстановление удаленных или утраченных разделов диска и данных, тестирование и сбор информации об устройстве с данными, работа в условиях поврежденной файловой системы, работа с таблицами разделов разных типов – GPT, MBR и др., копирование данных и прочее.
Установка TestDisk на ОС Linux
TestDisk входит в дистрибутивы всех последних версий ОС на базе Linux и поэтому ее установка не вызывает каких-либо затруднений. Единственное, что нужно учитывать, это корректное использование менеджеров пакетов и некоторых параметров команды запуска инсталлятора для каждой операционной системы. Ниже приведены эти команды для различных типов операционной системы на базе Linux. Конечно, каждая из этих команд должна быть исполнена с правами суперпользователя, то есть с командой sudo.
Таблица 1. Команды запуска установщика TestDisk для разных ОС.
Команда | ОС |
$ sudo yum install testdisk | AlmaLinux/Rocky/RHEL/CentOS/Fedora |
$ sudo apt install testdisk | Debian/Ubuntu/Mint |
$ sudo pacman -S testdisk | Arch Linux |
$ sudo emerge -a app-admin/testdisk | Gentoo Linux |
$ sudo zypper install testdisk | OpenSUSE |
Продемонстрируем процесс установки программы на сервер Ubuntu. Но сначала уточним с какими именно типами разделов работает TestDisk, а затем проверим типы разделов, которые есть на диске нашего сервера.
Введем в терминале команду вызова справочной информации по программе TestDisk:
$ testdisk -h
После этого проверим типы разделов, которые используются на дисках нашего сервера, чтобы мы не сомневались. Для этого введем в терминале команду:
$ fdisk -l
Можно убедиться, что приложение поддерживает существующие разделы. Чтобы начать процесс инсталляции, введем в терминале:
$ sudo apt install testdisk
После запуска команды будет выведена информация о типах устанавливаемых пакетов и сообщено об объеме дискового пространства, необходимого для их установки. Для продолжения процесса нужно подтвердить согласие, что мы и делаем. Ниже представлено конечное окно выхода команды, где можно просмотреть набор пакетов, установленных в системе.
Для того чтобы выяснить состояние установленной программы, а также уточнить ее версию можно воспользоваться соответствующей командой для ОС Ubuntu:
$ sudo dpkg -l testdisk
Практическое использование TestDisk в Ubuntu
Продемонстрируем возможности программы на примере восстановления раздела диска и удалённого файла.
Восстановление раздела диска
Запустим TestDisk под Ubuntu и попытаемся восстановить утраченный или поврежденный раздел диска. Для этого введем соответствующую команду в терминале. Поскольку мы будем запускать команду от имени суперпользователя, то использование sudo здесь не нужно, но в противном случае нам нужно было бы задействовать эту команду:
$ testdisk
В открывшемся окне №1 программы нам будет предложено выбрать на выбор три варианта: создать новый файл с логами; добавить
информацию в текущий файл; или ничего не записывать. Выбираем первый вариант и нажимаем Enter.
В открывшемся окне №2 будут выведены характеристики имеющегося диска и предложено выбрать среди нескольких вариантов команд: провести анализ текущей структуры разделов диска и найти утраченные разделы; работа с файловой системой; изменение конфигурации диска; смена опций; возврат к выбору диска. Мы выбираем первый вариант и нажимаем Enter.
В открывшемся окне № 3 программы представлена ??текущая структура разделов и выведена информация по каждому из них. Разделы пронумерованы. Поскольку первый раздел является системным и загрузочным, а во втором хранятся данные, то его выбираем, нажав его номер на клавиатуре.
В окне №4 выводятся уже протестированные разделы. Зеленым цветом обозначены разделы, в которых со структурой все хорошо, как в нашем случае. В противном случае цвет был бы красный, или какой-нибудь другой, кроме зеленого. В нижней части окна предлагается следующее: с помощью клавиш перемещения курсора выбрать раздел, с которым мы хотим работать дальше; с помощью клавиш «слева»/«справа» изменить характеристики выбранного раздела на «основной» или «удалённый»; добавить новый раздел; загрузить резервную копию; изменить тип раздела; вывести список файлов раздела, или продолжить анализ, нажав Enter. Выбираем последнее, чтобы продолжить анализ выбранного раздела.
В открывшемся окне № 5 выбираем команду Deeper Search (углубленный поиск утраченных данных) и подтверждаем свой выбор.
Окно №6 демонстрирует начало процесса анализа файловой системы выбранного раздела. В верхней части окна выведен динамический индикатор процесса, отображающий процент выполнения команды на данный момент (01 %). В нижней части окна выводится кнопка остановки процесса – Stop.
В окнах №7 и №8 программы отражен процесс анализа файловой системы в динамике – 10% и 18% соответственно. Здесь выводятся данные анализа кластеров, секторов и цилиндров диска vda.
По завершении анализа, в окне № 9 представлены его результаты для всех разделов диска с файловой системой Linux и выведены сообщения, что выводимые разделы не нуждаются в восстановлении. Это значит, что с диском и их данными все в порядке.
После перехода по команде Continue попадаем в окно, где также сообщается, что разделы для восстановления не найдены или не выбраны: No partition found or selected for recovery.
В случае, если бы присутствовали поврежденные или потерянные разделы на диске, то они были бы выделены разными цветами. Для их восстановления необходимо было бы нажать клавишу «с» для выбранного раздела или клавишу «С» для восстановления всех разделов, подлежащих восстановлению. Для выхода из программы следует выбрать команду Quit.
Восстановление отдельных файлов
Процесс восстановления удаленных файлов также начинается с запуска программы TestDisk.
На первом шаге, как и в предыдущем случае, следует выбрать пункт Создание нового лог-файла.
Во втором – вместо опции «анализ структуры текущих разделов» выбрать работу с утилитами файловых систем, как показано ниже.
После этого появится окно со списком существующих разделов на диске, как показано ниже.
После выбора команды List в нижней части окна мы попадаем в список имеющихся директорий и файлов в выбранном разделе, среди которых красным цветом обозначаются удаленные ранее файлы, в частности, tes1. Для его восстановления достаточно с помощью клавиши "с" скопировать его на прежнее место или в другой каталог и таким образом восстановить. Но, как мы можем убедиться благодаря изображению, размер файла нулевой, то есть данных он уже нет, хотя мы их туда заносили. Это значит, что даже если его сейчас восстановить, то все равно данных он уже не будет иметь. Это связано с тем, что на сервере используются диски типа SSD, на которых, в случае удаления файла, его размер автоматически сбрасывается до нуля, что не позволяет восстановить данные с помощью указанной программы. Это можно сделать только на дисках HDD.
Однако, как мы видим из сообщения зеленого цвета в конечном окне программы – «Copy done! 1 ok, 0 failed», пустой файл программа все же восстанавливает даже на дисках SDD.
FREEhost.UA открыл новую локацию размещения виртуальных серверов в Польше. Неизменно высокое качество обслуживания с круглосуточной технической поддержкой, ежедневный бекап, удобная VNC консоль, большой выбор предустановленного ПО. Заказывайте VPS сервер в Польше для размещения на территории Евросоюза!
Подписывайтесь на наш телеграм-канал t.me/freehostua, чтобы быть в курсе новых полезных материалов. Смотрите наш канал YouTube на youtube.com/freehostua.
Мы в чем ошиблись, или что-то пропустили?
Напишите Об этом в комментариях, мы с удовольствием ответим и обсуждаем Ваши замечания и предложения.
Дата: 31.08.2022 Автор: Евгений
|
|
Авторам статьи важно Ваше мнение. Будем рады его обсудить с Вами:
comments powered by Disqus