Поиск по этому блогу

понедельник, 21 февраля 2011 г.

Восстановление ReiserFS после форматирования в NTFS

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

Итак, имее
м:
1. Прерванное ПОЛНОЕ форматирование в
NTFS
2. Быстрое форматирование в
NTFS
3. Неудачную попытку восстановления раздела из-за которй он стал неразмеченной областью

После всего перечисленного попытка восстановить инфу носила лишь познавательный характер.
Начались скитания по Гуглу в поисках софта по восстановлению. Многое смотрел, пытался даже ставить - Линуксовые коммерческие даж не ставились на Kubuntu 10.10, виндовые пока не рассматривал, т.к. мастдай отсутсвует(не фанат какой-либо ОС, использую ту, которая лучше подходит по требованиям, сейчас это Линукс).
Экспериментировать на разделе в единственном экземпляре не очень хотелось.

Делаем полную копию раздела, чтоб вернуть если что:

dd if=/dev/устройство_раздела bs=4M of=/путь_к_файлу_резервной_копии

Таким образом была сделана полная копия раздела в файл.
bs=4M - это размер, в байтах(4М - 4 мегабайта), копируемых за такт, рекомендуют ставить равным размеру кеша винчестера.

Ну резервная копия через часик нарисовалась теперь можно и экспериментировать. Проводить опыты на живом диске рука не поднялась. Да и ведь в Unix мы!
Была-небыла, наугад - скажем что файл это устройство и запустим на нем обычную порверялку файловой системы. А вдруг?

sudo reiserfsck --check /путь_к_файлу_резервной_копии

И тут челюсть отвисает первый раз - проверка идет! reiserfsck ругнулась на пару ошибок и сказала что обязательно надо запуститься с параметром --rebuild-tree

sudo reiserfsck --rebuild-tree /путь_к_файлу_резервной_копии

попыхтев пару часов указала на несколько ошибок, что не всё удалось восстановить сказала: "Хозяин, готово, забирай!" :)

Пробуем примонтировать:

sudo mount -t reiserfs -o loop /путь_к_файлу_резервной_копии /куда_монтировать

Смотрим на результат и тут челюсть отвисает два - вся инфа восстановлена - десятки гигабайт, восстновлено дерево каталогов, все как было до армагедеца.

З.Ы.
Есть тут конечно элемент везения - спохватились рано, на раздел записи практически небыло да и полное форматирование тормознули вовремя, недобралось оно к нужным файлам.
Вполне возможно что метод поможет не только при форматировании в NTFS, а при форматировании в другие ФС.


4 комментария:

  1. Спасибо!!! Помогло:)

    ОтветитьУдалить
  2. Спасибо! Восстановил 200+ гб раздел после быстрого законченного форматирования в ntfs. Правда, не полностью сохранилось расположение директорий, но хоть данные остались в целости и сохранности :)
    Спасибо еще раз!)

    ОтветитьУдалить
  3. блин ... та же проблема, но с ex__t3

    ОтветитьУдалить
  4. Возможно с ext3 стоит попробовать просто fsck ?

    ОтветитьУдалить