今日、ちょっとWindows XPのレジストリをさわりました。
特に問題が生じたわけでもないのですが、使っているうちにペイントが起動できなくなりました。タスクマネージャで見たところ、プロセスは立ちあがっているのですが、画面にペイントのウィンドウが表示されないという状態でした。変だなと思って、Windowsを再起動することにしました。すると、Windowsの終了ができない状態になっていることがわかりました。Windowsの終了を選んでも、何も起こらないという状況です。
仕方がないので電源を落とすことにしました。
すると!なんとWindows XPが起動しなくなってしまいました。Windowsの背景までは表示されるのですが、ログイン画面が出ません。直感的にこりゃレジストリ破損だなと思いました。
涼しい顔でパソコンを再起動して[F8]キーで押し、メインテナンスを行うことにしました。
で、「前回正常起動時の構成で起動する」を選んでみましたが、起動しません。
それではとセーフモードで起動することにしたのですが、、、
すると!なんとセーフモードも起動しません。同じようにログイン画面になりません。
ブルー画面になるようなエラーではないので、何とかなるかなと思って、いろいろやってみましたが、まったく駄目。
が~ん!真っ青です。これは最悪再インストールするしかないかもしれません。こっちがブルーになりました。
しかし、まだ諦めるのは早い!
さて、どうするかと考えて、そうだXPは復元ポイントを作っているので、復元ポイントの中のレジストリを利用できないだろうかと考えたのです。
で、Googleでいろいろなキーワードで検索してみたところ、
レジストリの破損により Windows XP を起動できなくなった場合の回復方法
http://support.microsoft.com/kb/307545/ja
というマイクロソフトのサポート情報を見つけました。一通り読んでみると、自分が考えたのと同じやり方のようです。さっそく挑戦してみました。
①Windows XPセットアップディスクから回復コンソールを立ちあげる
②既存のレジストリファイルを念のためバックアップする
copy c:\windows\system32\config\system c:\windows\tmp\system.bak
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
copy c:\windows\system32\config\security c:\windows\tmp\security.bak
copy c:\windows\system32\config\default c:\windows\tmp\default.bak
レジストリファイルを削除する
delete c:\windows\system32\config\system
delete c:\windows\system32\config\software
delete c:\windows\system32\config\sam
delete c:\windows\system32\config\security
delete c:\windows\system32\config\default
③c:\windows\repairに保存されているレジストリファイルをコピーする
このレジストリファイルはWindows XPの初期設定のレジストリファイルです。これでWindows XPが起動すると、Windows XPは環境を初期状態に戻します。ユーザーの情報やその他の情報がすべて初期化されます。
copy c:\windows\repair\system c:\windows\system32\config\system
copy c:\windows\repair\software c:\windows\system32\config\software
copy c:\windows\repair\sam c:\windows\system32\config\sam
copy c:\windows\repair\security c:\windows\system32\config\security
copy c:\windows\repair\default c:\windows\system32\config\default
④回復コンソールを終了して、Windowsを再起動する
Windowsが初期設定を始めました。無事に起動しました。でも、すべてが初期状態、コンピュータの名前も変わってしまったし、ユーザー情報も消えたし・・・
サポート情報を見るとWindowsをセーフモードで起動するとある。
ありゃ、大丈夫か?
⑤Widowsを再起動してセーフモードで立ちあげる
大丈夫みたい
⑥C:\System Volume Informationにアクセスして、復元ポイントが保存されているフォルダを探します。
C:\System Volume Informationにアクセスできない場合はフォルダのプロパティを開いてセキュリティの設定を変更します。Aministratorを加えてフルコントロールのアクセス許可を与えます。
C:\System Volume Informationには_restore{16進法の数字}というフォルダがあります。それらのファイルの下にはRPXXというフォルダがいくつかあります。それらが各復元ポイントのフォルダです。この中のどれかに入っているレジストリファイルを使います。
日付を見ながら適切な復元ポイントを探します。昨日のものなどで構いません。
RPXXを開くと、snapshotというフォルダがあります。その中にレジストリデータのバックアップがあります。
⑥レジストリデータのバックアップを取り出す
これらがレジストリのバックアップです。
_REGISTRY_USER_.DEFAULT
_REGISTRY_MACHINE_SECURITY
_REGISTRY_MACHINE_SOFTWARE
_REGISTRY_MACHINE_SYSTEM
_REGISTRY_MACHINE_SAM
適当なフォルダを作って、そこにコピーします(移動ではなくコピーです)。
⑦コピーしたらリネームします。
_REGISTRY_USER_.DEFAULT → DEFAULT
_REGISTRY_MACHINE_SECURITY → SECURITY
_REGISTRY_MACHINE_SOFTWARE → SOFTWARE
_REGISTRY_MACHINE_SYSTEM → SYSTEM
_REGISTRY_MACHINE_SAM → SAM
⑧Windowsを再起動して回復コンソールを立ちあげます。
⑨レジストリファイルを削除する。
delete c:\windows\system32\config\system
delete c:\windows\system32\config\software
delete c:\windows\system32\config\sam
delete c:\windows\system32\config\security
delete c:\windows\system32\config\default
⑩さきほど復元ポイントから取りだしたレジストリファイルをc:\windows\system32\configにコピーする。
⑪再起動してWindowsを起動する
すると・・・
なんと・・・
何事もなかったかのようにWindows XPが立ちあがりました!
使った復元ポイントが適切だったかどうかを、Windowsの様子を見て確認。OKのようです。駄目なら、[スタート]メニュー[アクセサリ][システム][システムの復元]で他の復元ポイントを使ってみれば良しです。
真っ青になりながらの作業でしたが、無事に回復しました。
人気ブログランキングへ
最近のコメント