|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Хочу все знать » Восстановление перезаписанных файлов |
|
Восстановление перезаписанных файлов
|
Старожил Сообщения: 246 |
Профиль | Отправить PM | Цитировать Не нашел вроде подходящую ветку, спрошу здесь:
Фаил (база аксесса .mdb) был перезаписан файлом с тем же именем, то есть в 2-х каталогах были разные файлы с одинаковым именем, надо было переписать с первого каталога во второй, а переписали случайно из второго в первый. Теперь надо восстановить файл из первой папки; никакие программы, пробовал штук 8, что восстанавливают из удаленных, форматированных, переустановленных и чуть ли не с украденных дисков, ничего не обнаружили. После перезаписи (обнаружили почти сразу) все работы на машине были остановлены, так что где-то этот файл лежит почти нетронутый, только размер около полгигабайта, и просматрывать физически посекторно нереально. Есть какой-нибудь метод выхода из этой ситуации? |
|
------- Отправлено: 19:18, 17-03-2009 |
Старожил Сообщения: 223
|
Профиль | Отправить PM | Цитировать Если бы все было так просто!
Цитата maxo:
Дело ведь не в программе, их предостаточно, а в том, что на момент работы программы восстановления, данные уже (в подавляющем большинстве случаев) перезаписаны. Упрощенно, что произошло в вашем случае: - сначала системой был удален перезаписываемый файл. Фактически он остался на месте, а удалился в таблице расположения файлов, место занимаемое им на диске стало свободным. - затем записался новый файл, ссылка на него появилась в таблице расположения файлов, а данные записаны в области диска, взятой из свободной. Если при записи данных нового файла не были затронуты (даже частично, пример Drongo) данные удаленного файла в свободной области - восстановление возможно, в противном случае - не поможет никакая прога, поскольку данные некондиционны. Цитата maxo:
Тут уж как повезет. |
||
------- Последний раз редактировалось ab57, 19-03-2009 в 16:12. Отправлено: 13:09, 19-03-2009 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 246
|
Профиль | Отправить PM | Цитировать ab57,
Ну вот и не повезло Дело в том, что система не сразу использует освободившееся пространство, а старается выслать "подальше" (так я когда-то читал в описании файловой системы). На том диске 70% места свободно; не могла система переписать на том же месте, тем более что не думаю что система (файловая) сначала стирает старый файл, а потом пишет новый - скорее она блокирует его (и то не всегда), пишет новую и потом удаляет из таблицы. Но непонятно вот что - я экспериментировал - стирал файл, в том числе шифтом, создавал файл с тем-же именем - и всегда получалось восстановить стертый, но именно после перезаписи уже не получилось. Так вот. Если думать в направлении как вообще восстанавливается стертый файл - вроде все понятно, хотя бы теоретически, а вот что особенное проичходит при перезаписи - непонятно. Думаю, обнаружен самы надежный способ удаления информации (а это - доволно сложная проблема) . Зря там некоторые специальные программы для этого пишут и что-то выдумывают . Тут важно одно - никакая программа (имеется в виду программы работающие с файлами) не работает напрямую с файлом - а только через ОС. И невозможно на уровне программы узнать создала она новый файл или работает с оригиналом. И даже ОС не работает напрямую с файлом - а только через ФС, и на уровне ОС тоже не узнаем об этом. А ФС одна из самых имхо продуманных вещей и мало что там пропущено, и даже Виндус ее испортить не смог, но что тут поделаешь, друг Горацио... |
------- Отправлено: 18:52, 19-03-2009 | #12 |
Ветеран Сообщения: 637
|
Профиль | Отправить PM | Цитировать Цитата ab57:
|
|
------- Отправлено: 02:02, 20-03-2009 | #13 |
Старожил Сообщения: 223
|
Профиль | Отправить PM | Цитировать Да.
На уровне файловой системы единицой адресации дискового пространства является кластер - группа последовательных секторов диска. Когда файл создается, в таблице расположения файлов (она различается для FAT, FAT32, NTFS, но принцип тот же) создается запись, где хранится имя файла, размер, адрес расположения собственно данных. При удалении файлов изменяется только эта запись, файл помечается как удаленный, а адреса данных расположения бывшего файла становятся свободными. Если при записи какого-либо нового файла будет использована область, ранее принадлежавшая удаленному файлу, то восстановление будет невозможно. |
------- Отправлено: 10:01, 20-03-2009 | #14 |
Ветеран Сообщения: 637
|
Профиль | Отправить PM | Цитировать Цитата ab57:
Если он удаляется, но область, занимаемая им, не затрагивается, то восстановить его можно; и невозможно, если область будет затронута. Если при перезаписи по умолчанию используется часть пространства данных старого файла, скажем, с начала, то (удачное) восстановление будет невозможным в любом случае. Я не знаю механизма в данном случае, об этом и спрашивал. |
|
------- Отправлено: 04:34, 21-03-2009 | #15 |
Старожил Сообщения: 223
|
Профиль | Отправить PM | Цитировать А как же иначе, в каталог , где есть файл, например с именем access.mdb, пишется файл с именем access.mdb. Система сначала должна удалить существующий, а затем записать новый.
Цитата Erekle:
|
|
------- Отправлено: 10:35, 21-03-2009 | #16 |
Старожил Сообщения: 246
|
Профиль | Отправить PM | Цитировать Цитата ab57:
Другой вопрос - как удаляется старый файл (из ФАТ-а); Обычно при удалении не удаляется не то что сам файл, даже запись в ФАТ-е не удаляется, а просто Цитата ab57:
|
||
------- Отправлено: 17:27, 23-03-2009 | #17 |
Старожил Сообщения: 223
|
Профиль | Отправить PM | Цитировать Цитата maxo:
Как это работает на самом деле, можно проверить с помощью утилиты мониторинга файловых операций FileMon.exe. При перезаписи файла используется функция "Create" (колонка Request) с опциями Overwriteelf Sequential. При выполнении Create, если файл уже существует, его длина устанавливается в ноль, а указатель данных - на свободную область раздела. После Create выполняется функция "Set Information" и длина нового файла устанавливается равной длине копируемого. И только после этого выполняется само копирование данных последовательностью функций READ для копируемого и WRITE для нового файла. |
|
------- Отправлено: 12:29, 24-03-2009 | #18 |
Старожил Сообщения: 246
|
Профиль | Отправить PM | Цитировать ab57,
Мог бы и сдаться, конечно Но терзают смутные сомнения: А что произайдет, если: 1. Будет сбой при записи файла? 2. Пользователь прервет операцию? 3. При процессе будет инициирован новый процесс записи файла с тем же именем? |
------- Отправлено: 22:20, 24-03-2009 | #19 |
Ветеран Сообщения: 2907
|
Профиль | Отправить PM | Цитировать Эти программы пробовали?
UndeleteMyFiles Recuva http://recuva.com/ Важно не устанавливать программы на тот же диск, откуда восстанавливаются данные. Если новый файл меньше, то, по логике, не все сектора будут перезаписаны. Однако начало файла будет утеряно, следовательно, его целостность будет нарушена. Не знаю, возможен ли такой глубокий анализ и восстановление, так что не скажу. |
Отправлено: 00:03, 25-03-2009 | #20 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
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 |
|