Windowsが起動しなくなった2

2011-07-18

IT Windows

Windowsが起動しなくなったの続き

Windowsが起動しなくなったで、回復コンソールによる修復を試みたが、断念した。
しかたがないので、HDDを取り出して外付けのUSBケースに入れ、別(会社)のPCでつないでみた。幸いにも読むことができたのでまずはデータをバックアップ。

次に修復を試みることにした。
マイクロソフトのサポートオンライン
の内容を読むと、要するに壊れているレジストリファイル(メッセージの出たファイル)をrepairフォルダにあるバックアップファイルで置き換える作業を回復コンソールでするということなので、別PCにつないだ状態で同じ作業をしてみることにした。(注:下記Hドライブは、元のPCではCドライブ)
  1. H:\WINDOWS\system32\config\SYSTEMをSYSTEM.110707にリネーム。(上記サイトでは、SYSTEM.bakにするように書いてある)
  2. H:\windows\repair\systemをH:\WINDOWS\system32\config\にコピー。ところが、H:\windows\repair\system.bakしかなかったので、リネームしてコピーした。
元のPCにつないで起動すると、Windowsロゴまではでたが、
「lsass.exe - システムエラー パスワードを更新しようとした時にこのリターン状態は現存のパスワードとして指定し値が正しくないことを示します。」と表示され何度も繰り返し再起動し続ける状態に・・・

lsassで検索してみると、同じような目にあっている人も多いみたい。上記のマイクロソフトのページがおかしくて(いや、system.bakを使ったからかも)、systemだけコピーすると矛盾がでてしまうので、5つのファイルを同時にコピーする必要があるみたい。→下記URLによると、プレインストールモデルではrepairは使ってはいけないとのこと。
repair以下にある5つのファイルをコピーしてwindoswをセーフモードで起動し、レジストリのバックアップを手動コピーする方法などが見つかったが、結局バックアップをコピーするなら、最初からコピーすればいいのではとか思っていたら、下記ページを見つけた。
この方は、KNOPPIXを使ってPCを起動し、WindowsのHDD(NTFS)をマウントして操作するという内容でした。まぁ別PCにつないで操作しても同じでしょう。
  1. H:\WINDOWS\system32\config\default,SAM,SECURITY,software,systemをそれぞれの日付つきの名前にリネーム(念のため)。
  2. H:\System Volume Information\_restore{複雑な英数字}\RP522\snapshotを開く。複雑な英数字の部分は勝手についているみたい。今回の場合、systemだけで再起動を試みたときに、H:\System Volume Information\_restore{別の英数字}というのもできていたが、そのフォルダの日付や中身のRPの日付で判断して、上記を選択。RP???もたくさんあるが、RP522は、タイムスタンプが110706のもの。110707に壊れたのでその前日のものを選んだ。←実は、110707のものが3つあって、そのうちの1つで最初に試したが、起動できなかった。
  3. 「_REGISTRY_MACHINE_SAM」
    「_REGISTRY_MACHINE_SECURITY」
    「_REGISTRY_MACHINE_SOFTWARE」
    「_REGISTRY_MACHINE_SYSTEM」
    「_REGISTRY_USER_.DEFAULT」
    をH:\WINDOWS\system32\config\にコピー。
  4. それぞれの最後の単語にリネーム。「.DEFAULT」は「.」も不要
元のPCにつないで起動。めでたし、めでたし。
念のため、CHKDSKをかけておいた。(CHKDSK C: /F。Dドライブも)
でもなんかレジストリに矛盾があるらしい。AVGが再起動を求めるので3回ぐらい再起動したが、いつまでも再起動を求められる。Windowsの自動更新(盾のアイコン)がダウンロード中になるが、いつまでたっても0%のまま。
AVGをアンインストールして再インストールしたところ、上記症状はでなくなった。こんどこそ、めでたし、めでたし。