こんにちは、えんぞーです。
先日パソコンショップで中古パーツを物色していたらお買い得なマザー(とは言ってもヤフオクの相場くらい)を見つけたので捕獲してきました。
丁度もらい物のCPU(i7)もあったのでついでにメモリ(DDR3を8G2枚)も購入してここぞとばかりメイン機をバージョンアップ!
・・・したのは良かったのですが、結果からいうとブルースクリーン(STOPエラー 0x0000007B)でWindowsが立ち上がらなくなりました。
ブルースクリーン出てから思い出しましたが、マザーボードを交換する場合はどこかレジストリ弄る必要があった気がします。
ポイント
解決策としては元の構成に戻してWindowsを立ち上げ、レジストリを書き換えた後に再度組み直して起動する事になります。
めんどくせぇ(;´Д`)
やっと組み上げたの!ネジも締めたの!しかも今回はなんかケーブルの取り回しとか凄くうまい具合にいったの!
なので、戻したくねぇんだよヽ(`Д´)ノウワァァン!!
と言う事で別の方法を採用することに致しました。
・・・・本当はOS自体クリーンインストール出来ればそれで解決なんだけど、環境を戻す事を考えると時間掛かるので泣く泣く断念(やりたくないと言うのが本音)。
そもそもどうして起動しないのか
なぜマザーボードを交換したら起動しなくなるのか。何となく起動しなくなるという事は知っていましたが理由がよく分からなかったので調べて見ました。
するとどうやら使用していない全てのストレージドライバが無効になっているかららしい。
参考にさせて頂いたサイト様
マザーボード交換してもOS再インストールなしでそのまま起動させる | ディアブロのブログ
マザーボード交換してもOS再インストールなしでそのまま起動させる | ディアブロのブログ
起動できるようになる理由と注意点
使用されていないすべてのストレージ ドライバが無効にされているマザーボードを交換するとチップセットが変わる
HDDにアクセスするためのIDEコントローラが変わる
別のストレージドライバが必要になる
上記のようにインストールの時に必要とされなかったストレージドライバはインストールされていない
ハードディスク自体へのアクセスが出来なくなり、STOPエラーが発生する。
なるほど…そういう事だったのですね。
しかしまぁ・・・この辺の仕様というか所作というかどうにかならないものかな・・・Windowsは。
マザーボードを戻さずに起動させる方法
この問題の解決策としては先程の参考サイト様の通りで、レジストリを編集する事で解決します。
ただ、今回は既にマザーボードを組み込んでしまったし戻すの嫌だから何とかこのままどうにかしたいという所なので今の状態から直接レジストリを編集出来る方法を模索。
- Dosコマンドで直接レジストリを編集
- Linuxでブートして「chntpw」コマンドでレジストリを編集
- カスペルスキーの「Kaspersky Rescue Disk 10」を使用してレジストリを編集
ざっと見た感じこれらの方法があるみたいですが、レジストリ弄れるなら何でも良いのでしょう。
レジストリを修正する環境
Dosコマンドで修復できるのであればそれが一番手が掛からなくて良さそうな気もしたが、個人的にどうにも「Kaspersky Rescue Disk 10」が気になってしょうが無いのでそちらで修復を試みてみることにしました。
参考にさせて頂いたサイト様はこちら
Windows7機のマザーボードを換装してみた結果、Linuxでレジストリを書き換えてみた | テクニカルノーツ | 有限会社ワン・エックス
Windows7機のマザーボードを換装してみた結果、Linuxでレジストリを書き換えてみた | テクニカルノーツ | 有限会社ワン・エックス
Dosコマンドの場合はこちらのサイト様(リンク先切れていたのでキャッシュ)が参考になるかと思います
では早速「Kaspersky Rescue Disk 10」をダウンロードしてCD-Rに焼いておきましょう。
なんだかんだ言ってこの作業が一番面倒かも知れません。
ちなみにこのディスク自体をUSBメモリでブート出来ないかと思い試して見ましたが出来ませんでした。出来る方法もあるのかも知れませんがそれはまた余裕のあるときに色々試すとして今回は素直にCD-Rに焼きました^^
Kaspersky Rescue Disk 10を起動
CDに焼いたらそのCDからブートしましょう。大体のPCはCDドライブにCDセットして電源を入れれば勝手にブートするかと思います。
ブートしない場合はBIOS画面からBootの設定に進んでブートする順番を変更して下さい。BIOS画面へは起動時に「Delete」キー連打していれば入れるかと思います。詳しくはお使いのPCのマニュアルかマザーボードのマニュアル読んで下さい。
さて、ブートするとこんな感じの画面になり言語の選択や使用許諾等が出てきます。
利用許諾の画面では「1」を押して進んで行きます。「2」で再起動「3」でシャットダウンですね。
最後に起動するモードを選択出来るらしいので今回は「Graphic Mode(グラフィックモード)」を選択。
するとデスクトップ画面が出てきて自分のハードディスクドライブも自動的にマウントされます。
自動的にウィルススキャンのウィンドウが立ち上がりますが今回はそれが目的では無いので閉じて、デスクトップ上にあるレジストリエディタのアイコンをダブルクリックして起動します。
レジストリの修正箇所
レジストリの変更を行う場所については下記の通り
HKEY_LOCAL_MACHINESystemControlSet001ServicesMsahci
青い部分は「ControlSet002」等複数ある場合、全てのControlSetについて同じように設定するのが良いようです。
どのControlSetが使われているのかは「HKEY_LOCAL_MACHINESYSTEMSelect」以下を見ると分かるようですが、よく分からない場合は全部修正しておきましょう。
赤い部分のStartエントリを「0」にします。下記のキーに関しても同じように修正します。レジストリに値の無いものは無視して構いません。
- aliide
- amdide
- atapi
- ataport
- cmdide
- intelide
- pciide
- pciidex
- viaide
「HKEY_LOCAL_MACHINESystemControlSet001Servicesaliide」とか「HKEY_LOCAL_MACHINESystemControlSet001Servicesatapi」のStartエントリを修正するといった具合になります。
編集が完了したら再起動すると何事も無かったかのようにWindowsが起動しました。
元々使用しない様に設定されていたものを無理矢理使用するようにする事でレスポンスが低下する可能性もあるようですが今の所は問題無さそうです。
しかし心情的には少し気になるので何処かのタイミングでOS自体を再インストールしたい所です。
とりとめのないまとめ
今回は「Kaspersky Rescue Disk 10」を使ってレジストリを編集してみましたが、なかなか便利です。
簡易的な復旧作業やHDDからのデータ救出等には手軽に使えます。
もちろんLinuxの各種ディストリビュージョンをLiveモードで起動させても良いのですが普段Linuxを使い慣れていない人にはこちらの方がオススメでしょうか。
もしもの時の保険として一枚焼いて持っておくと良いかも知れませんね。