Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » Восстановление перезаписанных файлов

Ответить
Настройки темы
Восстановление перезаписанных файлов

Аватара для maxo

Старожил


Сообщения: 246
Благодарности: 4

Профиль | Отправить PM | Цитировать


Не нашел вроде подходящую ветку, спрошу здесь:

Фаил (база аксесса .mdb) был перезаписан файлом с тем же именем, то есть в 2-х каталогах были разные файлы с одинаковым именем, надо было переписать с первого каталога во второй, а переписали случайно из второго в первый. Теперь надо восстановить файл из первой папки; никакие программы, пробовал штук 8, что восстанавливают из удаленных, форматированных, переустановленных и чуть ли не с украденных дисков, ничего не обнаружили.

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

Есть какой-нибудь метод выхода из этой ситуации?

-------
Больно наступать на грабли. Еще больнее наступать на детские грабли!


Отправлено: 19:18, 17-03-2009

 

Старожил


Сообщения: 223
Благодарности: 53

Профиль | Отправить PM | Цитировать


Если бы все было так просто!
Цитата maxo:
Ну неужели никто с такой проблемой не сталкивался? »
Конечно, большинство сталкивалось, и в лучшем случае, процентов 5-10 оказались везунчиками и вытащили данные.
Дело ведь не в программе, их предостаточно, а в том, что на момент работы программы восстановления, данные уже (в подавляющем большинстве случаев) перезаписаны.
Упрощенно, что произошло в вашем случае:
- сначала системой был удален перезаписываемый файл. Фактически он остался на месте, а удалился в таблице расположения файлов, место занимаемое им на диске стало свободным.
- затем записался новый файл, ссылка на него появилась в таблице расположения файлов, а данные записаны в области диска, взятой из свободной.
Если при записи данных нового файла не были затронуты (даже частично, пример Drongo) данные удаленного файла в свободной области - восстановление возможно, в противном случае - не поможет никакая прога, поскольку данные некондиционны.
Цитата maxo:
После перезаписи (обнаружили почти сразу) все работы на машине были остановлены »
Правильно, но не всегда помогает, система многозадачная, могли записываться данные журналов, файла подкачки, приложения или службы могли писать временные файлы и т.п.
Тут уж как повезет.

-------
Переустановка Windows - как разморозка холодильника. Помогает, но ненадолго...


Последний раз редактировалось ab57, 19-03-2009 в 16:12.


Отправлено: 13:09, 19-03-2009 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для maxo

Старожил


Сообщения: 246
Благодарности: 4

Профиль | Отправить PM | Цитировать


ab57,

Ну вот и не повезло

Дело в том, что система не сразу использует освободившееся пространство, а старается выслать "подальше" (так я когда-то читал в описании файловой системы).
На том диске 70% места свободно; не могла система переписать на том же месте, тем более что не думаю что система (файловая) сначала стирает старый файл, а потом пишет новый - скорее она блокирует его (и то не всегда), пишет новую и потом удаляет из таблицы.

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

Если думать в направлении как вообще восстанавливается стертый файл - вроде все понятно, хотя бы теоретически, а вот что особенное проичходит при перезаписи - непонятно.

Думаю, обнаружен самы надежный способ удаления информации (а это - доволно сложная проблема) . Зря там некоторые специальные программы для этого пишут и что-то выдумывают .

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

-------
Больно наступать на грабли. Еще больнее наступать на детские грабли!


Отправлено: 18:52, 19-03-2009 | #12


Аватара для Erekle

Ветеран


Сообщения: 637
Благодарности: 105

Профиль | Отправить PM | Цитировать


Цитата ab57:
- сначала системой был удален перезаписываемый файл. Фактически он остался на месте, а удалился в таблице расположения файлов, »
Это так?

-------
Здесь вся мудрость [14.6]


Отправлено: 02:02, 20-03-2009 | #13


Старожил


Сообщения: 223
Благодарности: 53

Профиль | Отправить PM | Цитировать


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

-------
Переустановка Windows - как разморозка холодильника. Помогает, но ненадолго...


Отправлено: 10:01, 20-03-2009 | #14


Аватара для Erekle

Ветеран


Сообщения: 637
Благодарности: 105

Профиль | Отправить PM | Цитировать


Цитата ab57:
При удалении файлов »
Да речь не об этом. Акцент на том, удаляется ли перезаписываемый файл.
Если он удаляется, но область, занимаемая им, не затрагивается, то восстановить его можно; и невозможно, если область будет затронута.
Если при перезаписи по умолчанию используется часть пространства данных старого файла, скажем, с начала, то (удачное) восстановление будет невозможным в любом случае.
Я не знаю механизма в данном случае, об этом и спрашивал.

-------
Здесь вся мудрость [14.6]

Это сообщение посчитали полезным следующие участники:

Отправлено: 04:34, 21-03-2009 | #15


Старожил


Сообщения: 223
Благодарности: 53

Профиль | Отправить PM | Цитировать


А как же иначе, в каталог , где есть файл, например с именем access.mdb, пишется файл с именем access.mdb. Система сначала должна удалить существующий, а затем записать новый.
Цитата Erekle:
Если при перезаписи по умолчанию используется часть пространства данных старого файла »
В том то и дело,что нет никакого умолчания. Будет ли использоваться пространство данных старого файла, определяется огромным количеством факторов - тип файловой системы, место располжения удаленного файла, его фрагментированность, размер фрагментов и размер самого файла, заполненность диска, и т.п.

-------
Переустановка Windows - как разморозка холодильника. Помогает, но ненадолго...


Отправлено: 10:35, 21-03-2009 | #16


Аватара для maxo

Старожил


Сообщения: 246
Благодарности: 4

Профиль | Отправить PM | Цитировать


Цитата ab57:
Система сначала должна удалить существующий, а затем записать новый. »
Это не так - существующий файл не удаляется, а только "захватывается", блокируется, записывается новый и только если запись прошла удачно, удаляется уже старый файл (из ФАТ-а), т. е. при перезаписи информация нового файла никак не может попасть на месте старого файла.

Другой вопрос - как удаляется старый файл (из ФАТ-а); Обычно при удалении не удаляется не то что сам файл, даже запись в ФАТ-е не удаляется, а просто
Цитата ab57:
файл помечается как удаленный »
- т. е. там остаются имя файла, начальный кластер, дата создания и т. д. Потому и становится возможным восстановление файла, т. е. сохраняется логические атрибуты, которые потом используют восстановливающие программы. А физически файл еще долго может на диске находиться с возможностью физического восстановления, т. е. физического чтения кластеров, хоть после форматирования, но это прокатит в случае текста и небольшого, а базу данных физически очен трудно уследить, и тем более продолжения поймать.

-------
Больно наступать на грабли. Еще больнее наступать на детские грабли!


Отправлено: 17:27, 23-03-2009 | #17


Старожил


Сообщения: 223
Благодарности: 53

Профиль | Отправить PM | Цитировать


Цитата maxo:
Это не так - существующий файл не удаляется, а только "захватывается", блокируется, записывается новый и только если запись прошла удачно, удаляется уже старый файл (из ФАТ-а), т. е. при перезаписи информация нового файла никак не может попасть на месте старого файла. »
Вы ошибаетесь. Если бы это было так, то в каталоге в один и тот же момент времени присутствовало 2 файла с одинаковым именем ("захваченный" и вновь записываемый). Данные не могут записываться в никуда, сначала создается запись о файле в таблице расположения файлов.
Как это работает на самом деле, можно проверить с помощью утилиты мониторинга файловых операций FileMon.exe.
При перезаписи файла используется функция "Create" (колонка Request) с опциями Overwriteelf Sequential. При выполнении Create, если файл уже существует, его длина устанавливается в ноль, а указатель данных - на свободную область раздела. После Create выполняется функция "Set Information" и длина нового файла устанавливается равной длине копируемого. И только после этого выполняется само копирование данных последовательностью функций READ для копируемого и WRITE для нового файла.

-------
Переустановка Windows - как разморозка холодильника. Помогает, но ненадолго...

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:29, 24-03-2009 | #18


Аватара для maxo

Старожил


Сообщения: 246
Благодарности: 4

Профиль | Отправить PM | Цитировать


ab57,
Мог бы и сдаться, конечно

Но терзают смутные сомнения:

А что произайдет, если:
1. Будет сбой при записи файла?
2. Пользователь прервет операцию?
3. При процессе будет инициирован новый процесс записи файла с тем же именем?

-------
Больно наступать на грабли. Еще больнее наступать на детские грабли!


Отправлено: 22:20, 24-03-2009 | #19


Аватара для Котяра

Ветеран


Сообщения: 2907
Благодарности: 331

Профиль | Отправить PM | Цитировать


Эти программы пробовали?
UndeleteMyFiles
Recuva http://recuva.com/
Важно не устанавливать программы на тот же диск, откуда восстанавливаются данные.
Если новый файл меньше, то, по логике, не все сектора будут перезаписаны.
Однако начало файла будет утеряно, следовательно, его целостность будет нарушена.
Не знаю, возможен ли такой глубокий анализ и восстановление, так что не скажу.

Отправлено: 00:03, 25-03-2009 | #20



Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » Восстановление перезаписанных файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Flash - восстановление файлов. неправильная кодировка Grizz Накопители (SSD, HDD, USB Flash) 13 08-04-2015 21:00
лечение восстановление файлов. флэш Лечение систем от вредоносных программ 11 27-12-2009 14:48
Проблема восстановление файлов с НоутБука. MaxCmd Microsoft Windows 2000/XP 1 14-04-2007 13:45
Восстановление удаленных файлов LameFox Microsoft Windows 2000/XP 8 18-03-2004 20:06
Восстановление удаленных файлов. ivanenkoa Общий по FreeBSD 7 04-09-2003 15:40




 
Переход