WindowsXPの破損したboot.iniを回復コンソールとUSBドライブを使って修復する

起動オプションなどを弄っていてboot.iniを壊してしまい、
セーフモード+プロンプトすら立ち上がらない場合での復旧方法。


問題はこのままでは「boot.iniの内容を修正する手段がない」ということ。
XPの回復コンソールはUSBドライブを認識するので、
そちらにファイルをコピーして別のマシンなりで修正する方が楽で手っ取り早いです。



1.USB接続のHDDやメモリを用意し、あらかじめ USB.txt など目印になる名前を付けたファイルをルートに作成して、起動しなくなったPCに接続する。


2.XPのインストールディスクをドライブに入れて、BIOS画面でF8を押しっぱなしで起動ドライブ選択メニューを呼出してXPディスクを入れたドライブを指定して起動するか、もしくはBIOSの設定画面で起動デバイスの優先度設定で一番優先度を高くしておいて起動させる。


3.画面表示に従ってキーを押してインストールディスクを起動させ、選択画面になったらRキーを押して回復コンソールに入る。


4.USBドライブがマウントされている場所を確認する。
 接続されているドライブによりますがコマンドラインから D: や E: 等でドライブレターを移動して dir で目印ファイルを確認してUSBドライブの位置を特定。


5.DドライブがUSBドライブだった場合、 copy C:\boot.ini D:\boot.ini と入力して実行。
 USBドライブが他の場所だった場合は「D:」の部分をそのドライブレターに合わせて変更。


6.USBドライブを取り外し、別のPCでboot.iniをテキストエディタなどで編集して正常起動する様に修復する。


7.復旧中のPCを再起動、手順の1から4までやり直す。
 (再起動しなくてもそのままの状態で接続しなおすだけでUSBドライブを再認識する場合もあり)


8.コマンドラインから cd C:\ と入力。


9.rename boot.ini _boot.ini と入力してオリジナルのboot.iniをリネームする。


10.copy D:\boot.ini C:\boot.ini と入力して修正したboot.iniで書き戻す。
 (USBドライブが他の場所だった場合は「D:」の部分をそのドライブレターに合わせて変更)



もし回復コンソールでC:ドライブにboot.iniはおろかファイルも何も見つからないと言う人は
HDD接続をAHCIモードに変更したりしては居ませんか?
その場合は回復コンソールを起動する前にBIOS設定でHDD接続の設定をAHCIからIDEに戻しておきましょう。


あとは望み薄だけどドライブレターが違う場合があるかも知れないから、
C:ドライブ以外のドライブも一応確認してみましょう。



手順6で、PCが1台しかなくてboot.iniを修正する手段がないよーという人は、
KNOPPIX(http://www.rcis.aist.go.jp/project/knoppix/)」や
Puppy Linux(http://openlab.ring.gr.jp/puppylinux/)」などの
CDやDVDに焼いて起動できるLinuxを友達なり家族なりに頼んで入手して貰い、
XPインストールディスクと同じように起動させてLinuxのエディタで修正するとかしてみてはどうでしょう?


というか、この二つを起動出来たなら、boot.iniをUSBドライブにコピーしないでも
そっちから直接にCドライブにアクセスして直接修正する事が出来るかも知れないですけれど…。
でも私の場合は何故かHDDにアクセス出来なかったので、前述のような手順を取った訳ですが。


でもこういう場合の修正や、OSがぶっ壊れた時のCドライブのサルベージなどに手元にあると役に立つので、
あらかじめイメージを入手して焼いて手元に置いておくとイザと言うときに助かります。


なんにせよバックアップなど転ばぬ先の杖の用意は重要ですよねー。
起動関連の設定や大きな変更をする前にはせめてC:ドライブのバックアップを取っておくともしもの時に助かります。
HDDのバックアップは市販のソフトやフリーソフトなんかもあるので、
別途「ハードディスク バックアップ 方法」などのキーワードを組み合わせてググってみて下さい(丸投げ)。


参考Google検索:http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=%E4%BF%AE%E5%BE%A9%E3%82%B3%E3%83%B3%E3%82%BD%E3%83%BC%E3%83%AB+XP+boot.ini&num=50