Windows OSの予期せぬ強制再起動で壊れたテキストファイルを復旧できるかもしれない方法
今日の夜、サクラエディタでテキストファイルを編集中に、突如、OS(Windows 8.1)がエラー画面(ブルースクリーン)になり、「復旧しています」という恐ろしいメッセージが表示されてしばらくした後に、Windows 8.1が強制再起動された。
この間に私ができることは何もなく、茫然と画面を見つめていた。
しばらく待つと、Windows 8.1は無事に起動してきた。
OSとしては、(たぶん)問題なく動いているようだ。
しかし、私が編集していたテキストファイルは、1.27KBもの容量があるのに、開いてみると、中身は真っ白。
半角スペースらしきものがあるのか、何らかの透明な見えない文字が入っているようだけれど、全く見えない。
半角スペースかと思って、サクラエディタの機能で半角スペースを指定して検索してもヒットしない。
半角スペースではないようだ。
テキストファイルをサクラエディタで編集し始めてからもう何年も経過しているが、このようなことは経験がない。
サクラエディタ以外の秀丸エディタやTeraPadやQXエディタやWindows標準のメモ帳などその他のエディタでの経験も含めて、こんなことは初めてだ。
どうやら、テキストファイルが壊れてしまったらしい。
このテキストファイルを新規に作成し始めてから15分程度しか経過していなかったので、ゼロから作り直してもよさそうだったけれど、その15分をやり直すのがとても嫌だったので、何とかならないかな、と思ってインターネットで解決策を探した。
・Microsoft Wordの「ファイル修復コンバーター」を使ってみたが、修復できなかった。
・「File Repair」というフリーソフトで修復を試みたが、中身が何もないファイルです、のようなエラーメッセージが返されるだけで、修復できなかった。
私がサクラエディタでテキストファイルの編集に費やした時間の15分はとっくに過ぎていた。
諦めかかった時に、そもそも、何でこんなことになったんだっけ、ということを考え、思いついた。
Windowsが勝手に強制再起動し、ブルースクリーン上には「修復中」と表示されていたことを思いだす。
Microsoft Windowsなら、当然、修復前に、バックアップぐらい、とってくれるよね?きっと。
WindowsがOSの役目として何か残してくれていないか......具体的にはバックアップファイルを残してくれていないかなぁ、と思って、とりあえず、何となく「C:\Windows」直下を眺めてみると、更新日時がOSの再起動時と同じ頃、よく見ると、壊れてしまったテキストファイルと同時刻のタイムスタンプになっている「MEMORY.DMP」というファイルを見つけた。
名前から想像すると、メモリのダンプファイルのようなので、これはひょっとして、OS強制再起動直前にPCメモリに格納されていた情報が「MEMORY.DMP」というファイルで保存されているのではないだろうか。
そう考えると、ワクワクしてきた。
「MEMORY.DMP」ファイルをいきなりテキストエディタで開こうとすると、権限がない、というエラーが出て閲覧できなかったので、MEMORY.DMPファイルを右クリックしてコピーし、デスクトップに貼り付けを実行。
管理者権限でコピーの許可をしないといけません、のようなメッセージが出てきたので、許可して、デスクトップにコピーする。
デスクトップにコピーされたMEMORY.DMPをサクラエディタで開くと、文字化けしているのか、よく分からない文字がたくさん出てきた。
アルファベットなら文字化けしていないかも、と思い、OS再起動直前に編集中だったテキストファイルには、英単語を含めていたことを思い出す。
英単語の綴りは、単純なものだったのですぐに思い出した。
思い出した英単語で検索すると、見事、ヒットした。
アルファベットで書かれた英単語どころか、日本語の文章まで残っていることが分かった。
OS強制再起動前に私がサクラエディタで作成したテキスト全文を、MEMORY.DMPファイルから取り出すことができたので、一人心の中で狂喜乱舞。
「あ・り・が・と・う・マイクロソフト様!」
ファミレスで夕食を食べながらこんな作業をしていなかったら、例えば自宅だったら、「ひゃっほうー」と叫んでいたことだろう。
ちなみに、復活できたテキストは、「MEMORY.DMP」ファイル内で、私が上書き保存を行った回数と同じぐらいの「履歴」まで残っていた。
MEMORY.DMPファイルの上の方に書かれている履歴が最も古く、MEMORY.DMPファイルの下の方に書かれている履歴が最も新しいものだった。
思い出した英単語で検索した時に、一番最初にヒットしたテキストの内容が古かったので「おや?」と思ったが、続けて検索をすると、新しい内容のテキストが書かれている箇所にジャンプしたので、「おー、履歴があるのか」と気づいた。
上の方の履歴は文字化けしていたが、一番下にあった履歴は、文字化けしていなかったので、とても助かった。
次回からも、Windows OSが予期せずして強制再起動した後にテキストファイルが壊れてしまったら、「C:\Windows」直下に「MEMORY.DMP」というファイルが存在しないかどうかを見て、存在すれば、そのファイルからの復活を試してみようと思った。
さらに、できる限り上書き保存ではなく、別名保存でファイルは保存をするべきだと反省した。
ところで、何故、Windows OSが強制再起動になったのかについては、「イベントビューア」で見てみた。
《イベントビューアに記載されていた内容》
ログの名前: System
ソース: Microsoft-Windows-Kernel-Power
日付: 2015/12/27 21:05:30
イベント ID: 41
タスクのカテゴリ: (63)
レベル: 重大
キーワード: (2)
ユーザー: SYSTEM
コンピューター: TEST
説明:
システムは正常にシャットダウンする前に再起動しました。このエラーは、システムの応答の停止、クラッシュ、または予期しない電源の遮断により発生する可能性があります。
私にはお手上げの内容だが、実は心当たりがある。
Windows OSが強制再起動となる数分前に、バッテリーを節約するために省電力モードに切り替えたので、それがよくなかったのかもしれない。
省電力モードに切り替える前に、大事なファイルは、別名で保存しておこうとも思った。