- ベストアンサー
システムドライブパスをOS上以外で変更するには?
- Windows XPのPCでシステムドライブのパスが変更された場合に起きる問題や対処方法について説明します。
- BIOSや回復コンソールを使用してドライブパスを変更する方法についても説明します。
- 一番簡単な解決策は、別のHDDにWindowsをインストールし、現在のシステムHDDをサブドライブとして接続する方法です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
失礼な表現、記載、誤記等ありましたら済みません。 >システムドライブパスをOS上以外で変更するには? ご指摘の相談内容は「任意の物理的に異なるHDDを起動Diskにするには」でよければ BIOSに設定メニューがあると思います。 BIOSにはメーカーの吸収、合併でその前後など種類が多いのですが現在はほぼ2系統です。 BIOSによっては時期やVersion等で少し違う可能性はありますが AMI(American Megatrends)の場合 BootメニューのBoot Device Priorityサブメニューで複数台のHDDが接続されていれば Hard Disk Drivesのサブメニューが出ます。 Award(Phoenix Technologies)の場合 Advanced BIOS Featuresサブメニューで Hard Disk Boot Priorityサブメニューで設定できます。 BIOSの該当のメーカHPなどで確認してください。 「Award BIOS」や「AMI BIOS」検索でもそこそこヒットします。 ===あとがき(以下ご参考)=== 周知の内容であればご容赦ください。 全体的に、やっている内容がちぐはぐな気がします。 PCはBIOS(フラッシュROM)でC-MOSのデータに従い、PCハードを初期化してOSに渡します。 BIOSそのものもソフトですがROMなので電源に関係ないのはご存知と思います。 BIOS(C-MOS)セットアップユーティリティでPCに必要な初期化設定をC-MOSに書き込みます。 この省電力のメモリー用バッテリーがボタン電池でここまでは問題なさそうです。 起動時はC-MOSデータを読み込み設定します(S-RAM=C-MOS) その後、起動順位の設定で指定された順にFDDやCDD、HDDを見にいってそこにシステムボリュームがあれば起動に行きます。 BIOSで設定出来ない限りハード的に一番とされるHDDにその領域が存在する必要があります。 そこにはNTLDRやBOOT.INIなど基本的なシステムが必要です。 現在、そこのデータが破損しているようです。 うまく起動出来たのは他のHDDを起動HDDに無理やり設定し一次的にWindowsが立ち上がったにすぎません。 そして、Windows本体はというとWindowsのブートボリュームですがBOOT.INIのコーディングに依ります。 WindowsXpではシステムボリュームとWindowsのブートボリュームが(C:)に共存するケースが普通でそのやり方を質問上のリンクは説明しているのでそのためややこしくなっている様に思います。 Windows7でのシステムパーティション(ボリューム)、ブートパーティション(ボリューム)と独立していてそのPCはこの状態に近い可能性がある。 ↓↓ http://windows.microsoft.com/ja-JP/windows7/What-are-system-partitions-and-boot-partitions BIOSの初期化→HDDシステムボリュームの処理→「boot.ini」にコーディングされた位置の例えば(H:)にあれば「H:Windows\System32」に存在するシステムファイルを元にWindowsを構築します。 おそらく、WINDOWS98など比較的少容量HDDは「config.sys」と云うファイルを探してAUTOEXEC.BATを処理するのにそんなに掛からなかったがHDD大容量化にともないその中から「config.sys」を探し出す作業そのものに時間がかかるため大容量のNTFSではこのようになったと思います。 速い話、システムボリュームがHDDの定位置に存在すればBoot.iniのコーディング次第では「Windows」本体は場所が分かればどこでもいい訳です。 ただし、このBoot.iniの編集はなれないと危険です。 また、自動インストールでコーディングされたものをマニュアル(手動)で編集するのは大変です このPCの場合はパーティションで作った訳でないそれぞれ、独立したHDドライブなので理論的にはどのHDDにもシステムボリュームが作成できます。ただ、それが有効かどうかです。 BIOSに設定が出来れば動くのではないでしょうか? 理論上作成出来る理由は、HDDの1丁目1番地に書き込めればそれでいいからであり、どのHDDにもとりあえず存在します。 CDD/DVDマルチドライブで説明すれば、CD,DVDに関係なくメディアを挿入すれば判定してくれます。 それは、トラックの一番内側に何のメディアであるか情報があるからです。 それと同じようにBIOSがHDDを見に行った時に最初に確認できるHDDにシステムボリュームが正しく存在し、これからインストールするOSの種類やフォーマット、OS本体の位置するドライブなど認識できれば問題ないはずです。 そして、fixmbrはここの修復を意味するのですが、本来の位置のmbrを修復していないようです。 他の、HDDに新しく生成したようです。 本題に戻して、HDDをBIOSが最初に見に行くHDDの1丁目1番地にシステムブートが存在しなかったり、そこが壊れていれば当然 >けれど今度は、WINDOWS起動前に「NTLDR is missing」と表示され起動できない。 となる訳です。 一応、構築した訳ですから、BIOSがHDD1→HDD2→HDD3と見に行っていれば起動できるはずです。 出来ないと云う事は見に行っていないかもしくは、そこをシステムボリュームと認識して壊れていると判断しています。 BIOSでその設定が可能ならば「起動順位」などでHDDの1~4など設定できればそこが正常なら動くと思います。 正しく、システムボリュームに対し、fixmbr等を実行し 正確にオリジナルのboot.iniにコーディングがしてあれば問題は無くなります。 対処としては MAPで正しく、HDDの状態を認識してそこ「システムボリューム」に対してfixmbr,他実行することが大事です。 通常はC:に存在しその場合の操作を参考にしたためぐちゃぐちゃになっているようです。 リンク先はあくまでも、普通の設定のWindowsXpの操作です。 MAPコマンドでデバイス名を確認して動作を理解して適切に仕切り直してください。 MSサポート:回復コンソール ↓↓ http://support.microsoft.com/kb/314058/JA 偉そうに回答した割に小生、MAPを実行したことがありません。 ←必要が無かったためなので上記リンクや回復コンソール上で書式を確認してください。 回復コンソール上で書式確認は c:\>help[Enter] でコマンドを確認 c:\>help map[Enter] でMAPコマンドの書式を確認できます。 参考程度に間違いを数点指摘しておきます。 回復コンソールのコマンドのオプションを省略した形になていて何処に対して実行されるかが問題で重要です!! D:\WINDOWS>fixmbr ←デバイスを指定していないデバイス名は「map」コマンドで確認 D:\WINDOWS>fixboot ←ドライブを指定していない→実際の「システムボリューム」に適用する >「 copy G:\i386\NTDETECT.COM 」←コピー先が指定されていない。 「C:」にシステムボリュームが存在する場合 copy G:\i386\NTDETECT.COM c:\*.* ←Cのルート(通常Xpのシステムボリューム)へコピーの場合 すべての作業がおわったら、chkdskで修復した方がいいと思います。 また、Windows中のSystem32フォルダーの位置を正確にコーディングしなければなりません。 「Xpの場合、OSの実働部隊(メインシステムソフト)はこのSystem32フォルダーの中です」 以下のマルチブートの例で微妙にDISK()やPERTITION()の()が異なることが解ります。 このコーディング先のWINDOWSフォルダーの存在場所に「system32」フォルダーがあってその中に必要なWindosシステムファイルがあればOKです。 Windows XP で Boot.ini ファイルを編集する方法 ↓↓ http://support.microsoft.com/kb/289022/ja 通常は、WINDOWS\PASSの中に「boot.ini.backup」等云うバックアップがあります。 実際のハードにあっているか検証する必要がありますが他の.iniファイルは解りませんがこの「boot.ini.backup」をboot.txtとすればメモ帳で見れます。 ←Windowsの「C:」「D:」「E:」と異なり物理的な位置の1,2,3の様です。 この事もややこしくなっている要因です。 注意)バックスラッシュ(/の反対向き)=¥ 上記ご理解いただいた上で正常化が必要です。 1.システムボリュームの正常であること。←BIOSで指定できるならそこのHDD 2.boot.iniのコーディングに正しくWindows本体(System32)の位置を示していること。 3.WindowsフォルダーやSystem32フォルダーに必要なシステムファイルが存在すること。 が大事です。 以上
お礼
綿密に教えて頂き誠にありがとうございます。とても勉強になりました。 実は回復コンソールを使用したのは今回が初めてだったので、 焦って参考サイトの通り無理矢理やったのが失敗だったのかもしれません。 せっかく回復手段をご教示して頂いたのにも関わらず、 急いでいたので諦めて結局クリーンインストールし直してしまいました。 今回はちゃんと(C)にシステムが入るようにしました。 (これから環境再構築にもの凄く時間がかかりますが覚悟してます) もし次回、同じようなトラブルが起こった場合は、教えて頂いた内容を是非是非参考にさせていただきたいと思います。 ありがとうございました。