Как я могу восстановить предыдущее состояние гибернации?

1808
Pacerier

Я пытаюсь восстановить потерянные данные из несохраненных notepad.exe s после автоматического перезапуска Windows 7 ( черт возьми, Центр обновления Windows).

Сидя в несколько потоков, кажется невыполнимой задачей. Тем не менее, ранее я делал спящий режим всего несколько часов назад, и у меня есть аккуратный дамп памяти объемом 2,89 ГБ C:\hiberfil.sys. У меня тоже 3,35 ГБ C:\pagefile.sys.

Как восстановить прежнее состояние гибернации?

В качестве альтернативы, есть ли программа, которая может просматривать C:\hiberfil.sys(например, просматривать через предыдущее состояние, как будто это виртуальная машина)?


My Current System Info

Control Panel\System and Security\Windows Update\View update history

0
К сожалению, после обновления Windows файлы на вашем диске больше не будут соответствовать таким вещам, как содержимое кэшированного каталога в сохраненном файле гибернации. Вам нужно было бы каким-то образом вернуть диск в * точное * состояние, в котором он находился, когда происходил спящий режим. И если вы это сделаете, машина просто подойдет и восстановит состояние из этого файла. Ваш долгосрочный ответ - использовать приложение для заметок, которое автоматически сохраняет все. Jamie Hanrahan 9 лет назад 0
@JamieHanrahan, должен был быть способ открыть этот файл на виртуальной машине или что-то еще, так как я знаю точные байты (версию), которые представляют мою Windows прямо сейчас и до обновлений Windows. Pacerier 9 лет назад 0
Файл гибернации не содержит ваших данных, это файл-заполнитель, чтобы зарезервировать пространство, необходимое для спящего режима вашей системы. Ramhound 9 лет назад 0
@Ramhound, файл гибернации это просто иней ОЗУ не так ли? А несохраненные блокноты хранятся в оперативной памяти. Почему восстановление невозможно? Pacerier 9 лет назад 0
@Pacerier - потому что файл, который вы видите, не из вашего последнего состояния гибернации, которое уже было удалено при перезагрузке. Как я уже сказал, файл, который вы видите, резервирует место для следующего перехода в спящий режим. Ramhound 9 лет назад 0
@Ramhound, почему вы говорите, что он отбрасывается, если проводник Windows сообщает о размере файла 3,35 ГБ? Вы имеете в виду, что фактические байты переопределены? Если так, то с чем они будут переопределены? Я не делал никаких специальных настроек, таких как `HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Управление памятью \ ClearPageFileAtShutdown` или сортировка. Pacerier 9 лет назад 0
Почему ключ реестра в отношении файла подкачки влияет на файл гибернации. ** Все, что я знаю, это то, что ваш файл отсутствует в файле гибернации. ** Ramhound 9 лет назад 0
@Ramhound, это не тот случай, когда hiberfil.sys перезаписывается после его возобновления. Это написано только когда вы спите в системе. В противном случае судебная проверка файла гибернации не будет полезной техникой (и это так; см. Http://www.securityweek.com/microsoft-windows-sleep-feature-poses-security-risk) Jamie Hanrahan 9 лет назад 0
Тем не менее, перезапуск с сохраненного гиберфила не будет работать, по той причине, которую я дал ранее. @Pacerier, вы можете попробовать вернуть измененные файлы обратно, но вы никогда не вернете все метаданные FS обратно в предыдущее состояние. Я видел сообщения людей, которые пробовали это; перезапущенная система просуществовала несколько секунд и имела синий экран. Некоторые из данных ваших блокнотов, скорее всего, находятся в этом файле, и если вы проверите файл с помощью инструмента «file dump», вы сможете увидеть его ... но он будет сильно фрагментирован, а не все в одном месте. Удачи в поиске среди гигабайт. Jamie Hanrahan 9 лет назад 0

1 ответ на вопрос

0
Kamil

Sorry, there is no way that takes less than a week (or maybe month) to restore file like this.

  1. As far I know - hiberfil.sys is compressed and not well documented. Long time ago there was a tool to read windows 2000 hiberfil.sys, it was called SandMan. I think this will not work with Windows 6.0 and higher.

  2. Even if you manage to reproduce raw memory that was dumped into hiberfil.sys - do not expect you will find your file there. Process memory will be fragmented, so you would have to put everything together to make it "readable" like process memory dump from Task Manager. Which is not very readable too.