flapflapjack
@flapflapjack
на треть я прав

Как еще можно восстановить свежеудаленный .tar.gz архив из Ext4?

Случайно удалил довольно таки нужный мне архивчик с готовыми настроенными виртуалками с FreeSwitch, asterisk, плюс всякие самописные вебморды для них.

Так то не очень жалко - могу и снова настроить сервера, но самописные вебморды жалко((, и все же - на будущее вопрос восстановления в Linux для меня важен.

Итак, была выполнена команда на НЕшифрованном обычном разделе Ext4:
rm -rf ./arch.tar.gz

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

Пробовал:
testdisk при заходе в папку: No file found, filesystem may be damaged.

photorec: вообще не находит .tar.gz файлы, хотя вот они там лежат. Даже если явно указать с ключом -t расширение файла.

extundelete: выдает ошибку про memory alloc error, гугление которой приводит к куче страниц с описанием багов, некоторые умельцы даже сорцы пытались править, при чем последние сообщения о баге есть как и от 2014 года, так и от 2021, и все одинаковые. Исправлять видимо не будут.

R-Studio с под винды: Находит, но восстановленный файл не является архивом. Судя по всему исходный архив был фрагментирован, и при удалении в Ext4 стерлась инфа о фрагментах.

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

Кто что подскажет?
Или забить хрен?

Забыл добавить: На диске только один раздел - корневой. Папку /home я отдельно не монтировал.

Второй винч если что имеется.
  • Вопрос задан
  • 368 просмотров
Решения вопроса 1
@rPman
Единственное, что могло записать сверху данные - это кеш браузера, через который я сейчас сижу.
вроде все понимаешь а такое делаешь

Любая запись на диск, на котором удален важный файл понижает шансы успешного восстановления кратно!

Первым делом - переводишь файловую систему в ro, делаешь посекторную копию раздела на соседний диск, и только после этого начинаешь ковыряться.

p.s. попробуй еще https://sourceforge.net/projects/ext4magic/

К сожалению, на сколько я помню, ext3/ext4 очень не подходящая файловая система для восстановления удаленных файлов, т.е. очень мало шансов.

В твоем случае восстановить данные по фрагментам можно наверное только по содержимому, образно говоря, добавляем очередной экстент к файлу если gzip не выдает ошибок, а если выдает - значит неверный, берем следующий свободный (можно предварительно пройтись по содержимому и убрать все у кого распределение байтов не равномерное, как у архива) долго, тупо но сможет собрать если это в принципе возможно. К сожалению если хотя бы один сектор потеряется - с данными можно будет распрощаться.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы