Восстановление удаленных файлов в Linux, а так же файлов утерянных во время неудачной разметки, выключеного света и тд
Как утверждается в различных источниках нижеперечисленные утилиты могут работать даже с утройствами без файловой системы (такой режим я лично пока не проверял), ищут определенные типы файлов jpg bmp doc и т.д.
1. foremost
foremost -v -T -t jpeg,png,bmp -i /dev/sdb1 -o ~/undelete/
где -v подробный вывод
-T к названию папки для восстановления добавит временной штамп
-t указываем типы файлов для востановления
-i источник восстановления (в моем случае флешка sdb)
-o куда восстанавливаем файлы
2. scalpel
scalpel /dev/sdb1 -o ~/recovery/
Почти аналогично foremost, но после установки нужно в конфиге раскоментировать чтрочки с нужными расширениями файлов которые мы хотим восстановить. Конфиг лежит в /etc/scalpel/
PS во время тестирования данных утилит scalpel с шлешки 4Gb нашел файлов на 19Gb, возможно это последствия неправильно редактирования конфига, но foremost заработала из коробки более адекватно.
Если в scalpel появится сообщение "You have attempted to use a non-empty output directory. In order to maintain forensic soundness, this is not allowed. Aborting. " Это значит что утилита не будет восстанавливать файлы в непустую директорию. Либо очистите ее, либо укажите другую. Это сделано что бы восстановленые файлы не перемешались с другими восстановлеными в предыдущих сессиях.
3. testdisk
sudo apt-get install testdisk
Запуск: sudo testdisk