Возможно ли восстановить данные?

Рейтинг: 1Ответов: 1Опубликовано: 27.03.2023

Был открыт тестовой блокнот, я набрала текст в нём (не сохраняла). Потом нажала Пуск --> Сон. По происшествию времени, компьютер ушел в гибернацию.

На следующий день включила компьютер, там был мой текстовой блокнот с текстом. Всё хорошо. Но через время случился BSOD.


В связи с этим два вопроса. Можно ли как-то восстановить содержимое не сохраненного текстового блокнота?

1)Может он куда-то сохраняет на сторону... в temp или ещё куда-то... Если была гебернация.

2)Возможно что-то сделать с файлом гибернации? Т.е. запустить его ещё раз на том же компьютере. Возможно ли такое?

Ответы

▲ 0
  1. Мне неизвестно, сохраняет ли блокнот какие-то промежуточные файлы куда либо. Я бы предположил, что нет. Но сделать поиск по всему диску в любом случае не помешает - а вдруг найдётся.

Остальная часть ответа чисто теоретическая, основанный на моих представлениях о происходящем. Никогда так не делал.

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

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

Даже если память приложения где-то уцелела, то успешность поиска может зависеть от того, в каком виде программа хранит данные в памяти. Если это одна огромная строка (у старого блокнота вроде бы так и было), то найти будет легко, а если какой-нибудь связный список по строкам, то придётся потратить намного больше усилий на объединение.

  1. Насколько я помню, при синем экране винда записывает на диск дамп памяти. Возможно, в нём записана и память блокнота, в таком случае можно попытаться найти в нём нужный текст. Скорее всего, этот файл будет существовать в неизменном виде даже если система загружалась после синего экрана.

  2. В файле C:\pagefile.sys находится файл подкачки и, вероятно, какая-то (частичная?) копия оперативной памяти. Подробнее на vbstreets. Можно искать в нём, но я почти уверен, что при следующей загрузке системы он будет утрачен.

  3. В файле C:\hiberfil.sys находится память для гибернации. Я не знаю, перезатирается ли он при включении.

  4. Я не знаю, что находится в файле C:\swapfile.sys, но можно заодно заглянуть и в него.

  5. Если файлы были перезаписаны включением, можно пытаться сканировать весь раздел жёсткого диска в поисках нужных данных (но не программой для восстановления удалённых файлов, а именно напрямую читать сам диск).

PS: Хотя можно сделать образ диска, я не уверен в рациональности этого действия. Для пятого пункта можно анализировать примонтированный в readonly диск напрямую. Но если данные очень ценные, то можно на всякий случай в любом случае сделать образ раздела, на случай новый идей для поиска.

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