Команды управления файлами и папками в linux

2. TestDisk

TestDisk — это очень мощный инструмент для восстановления данных. Он не пытается скопировать данные из поврежденного устройства, а позволяет исправить ошибки и проблемы на уровне разделов, которые могут мешать работе с вашими данными.

Утилита может восстанавливать потерянные разделы, исправлять таблицу разделов GPT и MBR, делать резервные копии дисков, восстанавливать загрузочные записи, а главное восстанавливать удаленные файлы с файловых систем NTFS, FAT, exFAT и файловых систем семейства Ext. Также вы можете копировать файлы даже с удаленных разделов для тех же файловых систем.

Способ работы утилиты очень сильно отличается в зависимости от нужного действия. Здесь вас ждет псевдографический мастер, который проведет вас через все шаги. Установить testdisk можно так же само из официальных репозиториев. В Ubuntu используйте для этого команду:

Поскольку тема нашей статьи — восстановление файлов linux, рассмотрим как это делается с помощью этой утилиты. Запустите программу:

На первом шаге мастера выберите Create New Log:

Дальше выберите диск, с которым будем работать:

Выберите таблицу разделов на диске:

Для работы с файловой системой выберите пункт Advanced:

Далее выберите раздел, затем команду list:

Тут вы увидите все файлы, которые есть на этом разделе. Удаленные, но подлежащие восстановлению файлы будут помечены красным.

Работать с этой утилитой удобнее, чем с Photorec, потому что здесь вы можете выбрать только один нужный файл, а не восстанавливать сразу кучу мусора. Чтобы скопировать файл просто выберите его, нажмите c и выберите папку для сохранения. Правда, вы же понимаете, что для восстановления нужно, чтобы файлы были не перезаписаны, где-то чуть перезапишется и все.

Использование BleachBit Anchor link

Нажмите на иконку BleachBit в панели «Избранное», располагающейся в левой части экрана.

Откроется главное окно BleachBit и вам будет представлен обзор настроек. Мы рекомендуем отметить настройку «Overwrite contents of files to prevent recovery» (Перезаписывать содержимое файла для предотвращения восстановления).

Нажмите кнопку «Close» (Закрыть).

BleachBit определит некоторые распространённые установленные приложения и предложит особые настройки для каждого в отдельности.

Использование предварительных настроек

Некоторые приложения оставляют подробные записи о своей работе. Яркими примерами этой широко распространённой практики стали папка «Недавние документы» и история браузера. Приложение, отслеживающее документы, которые вы редактировали недавно, записывает и хранит названия файлов, с которыми вы недавно работали, даже если сами файлы уже были удалены. Браузеры обычно записывают подробную информацию о том, какие сайты вы посещали и даже сохраняют кэшированные копии этих страниц с изображениями (это делается для увеличения скорости загрузки при следующем открытии).

В приложении BleachBit имеются предварительные настройки, способные удалить некоторые из подобных записей. Эти настройки основаны на изысканиях, проведённых авторами BleachBit, в результате которых было определено расположение на вашем компьютере тех записей, которые могут многое рассказать о вашей недавней деятельности за компьютером. Мы опишем использование только двух предварительных настроек, чтобы дать общую картину их работы.

Отметьте галочкой «System»

Обратите внимание, что этим вы отметите все пункты категории «System». Уберите галочку с пункта «System» и отметьте только пункты «Recent document list» (Список недавних документов) и «Trash» (Корзина)

Нажмите кнопку «Clean» (Очистить).

BleachBit запросит у вас подтверждение. Нажмите на кнопку «Delete» (Удалить).

Начнется удаление определённых файлов, при этом будет отображен процесс удаления.

Как надёжно удалить папку

Нажмите меню «File» (Файл) и выберите пункт «Shred Folders» (Удалить папку навсегда).

Откроется небольшое окно. Выберете папку, которую вы хотите надёжно удалить.

BleachBit запросит у вас подтверждение проведения операции, в результате которой выбранные файлы/папки будут безвозвратно удалены. Нажмите кнопку «Delete» (удалить).

BleachBit отобразит названия удалённых файлов

Обратите внимание на то, что BleachBit надёжно удаляет сначала каждый файл в папке, а затем и саму папку

Динамическая загрузка

С учетом всего сказанного выше может показаться необычным, что библиотеки /lib/ld-linux.so.2 и ее 64-разрядная версия, /lib64/ld-linux-x86-64.so.2, которые выглядят как общие библиотеки, на самом деле являются самыми настоящими исполняемыми файлами. Эти библиотеки содержат код, отвечающий за динамическую загрузку. Этот код считывает информацию из заголовка исполняемого файла, созданного в формате исполняемых и компонуемых модулей (Executable and Linking Format, ELF), и на ее основании определяет, какие библиотеки требуются данному приложению и должны быть загружены. После этого выполняется динамическая компоновка приложения, приводящая в соответствие указатели его адресов и указатели адресов загруженных библиотек, в результате чего приложение может быть запущено.

Man-страница библиотеки ld-linux.so также содержит описание библиотеки ld.so, которая выполняет эти же функции для приложений, созданных в старом двоичном формате a.out. В листинге 4 продемонстрировано использование опции для семейства библиотек ld-linux.so: для команды выводится та же самая информация, что и для команды в листинге 2.

Листинг 4. Использование ld-linux.so для получения списка требуемых библиотек
$ /lib64/ld-linux-x86-64.so.2 --list /bin/ln
        linux-vdso.so.1 =>  (0x00007fffc9fff000)
        libc.so.6 => /lib64/libc.so.6 (0x00000037eb800000)
        /lib64/ld-linux-x86-64.so.2 (0x00000037eb400000)

$ /lib/ld-linux.so.2 --list /bin/ln
        linux-gate.so.1 =>  (0x00110000)
        libc.so.6 => /lib/libc.so.6 (0x00a57000)
        /lib/ld-linux.so.2 (0x00a38000)

Обратите внимание на то, что шестнадцатеричные адреса в этих двух листингах могут отличаться. Скорее всего, они будут разными, даже если вы запустите команду дважды

Немного теории

Каждый файл занимает определенное пространство на жестком диске, но файловая система для предоставления доступа к файлу дает нам ссылки на его начало, по которым любая программа может получить уже содержимое всего файла. Было бы неэффективно, если бы удаление файла приводило к полному перезаписыванию его области на диске.

Вместо этого, файловая система просто удаляет ссылку на эту область со своей базы, а затем помечает пространство, где находился файл, неразменным. Но на самом деле там еще остались все ваши файлы. Из этого делаем вывод, что если после удаления файловую систему очень быстро переключить в режим только для чтения, то все удаленные файлы могут быть восстановлены.

Если же вы работали с этой файловой системой и данные на диске были перезаписаны другими, то вы уже ничего сами не спасете. Возможно, вы слышали, что спецслужбы могут восстанавливать несколько раз перезаписанные данные по остаточному магнитному следу на диске. Это действительно так. Но для решения такой задачи нужно специальное оборудование, здесь недостаточно нескольких программ, нужен специальный лазер, который может считать магнитный след по краям дорожки и другая аппаратура. Так что про этот метод для себя можете забыть.

Ну а мы остановимся на программном восстановлении, когда данные были формально удалены, но физически еще находятся на диске в целостности и сохранности. Дальше рассмотрим несколько утилит, которые помогут восстановить удаленные файлы linux.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *