アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在、aspire one D250というネットブックを使用しておりますが、
元からのOS(7starter)では使い勝手が悪いと感じるようになったので、
現在、XPをF6回避ツールを利用してインストールしたものを使用しております。

ですが、XPと7starterをマルチブート可能と知り、あれこれ試しているのですが、うまく出来ません。

まず、aspireのリカバリで7starterを復活(パーティションC)し、
他のパーティション(D)にインストール出来たXPのイメージを復活させ、
7starterにインストールしたeasyBCDでXPのエントリーを行い、
電源を入れるとブート選択画面で7、XPが選べるようにまで行きました。

このとき、7starterを選択すると7は起動できるのですが、
XPを選択すると起動は始まるものの、「ようこそ」の直前で起動が止まってしまうのです。

XPのみをバックアップしたイメージで復活(パーティションC)するとXPは正常に起動します。


イメージのバックアップの順番を変えてもうまくいきません。
あとから7を復活させようとしても、HDD内容全てが7のイメージ(aspireの出荷状態)に書きかえられてしまいます。

ネットで色々と調べているのですが、なかなか解決できないので、
皆様のお知恵をお借りしたいと思います。

A 回答 (7件)

> このとき、7starterを選択すると7は起動できるのですが、


> XPを選択すると起動は始まるものの、「ようこそ」の直前で起動が止まってしまうのです。

bootローダ(bootmgr および ntldr)は正常ですが xp boot.ini が不適切なのではないか、
と思います。

上記の環境での下記の2つの情報を教えてください。
そのまま貼り付ける理由は省略や脚色やタイプミスを防ぐためです。
1.
7starterの「Windows ブート マネージャー」を表示してそのまま貼り付けて教えてください。
(テキストファイルにリダイレクト出力してコピー/貼り付けでも構いません)
2.
xp boot.ini の内容をそのまま貼り付けて教えてください。

この回答への補足

8ive22tyさん

ご回答ありがとうございます。

1.ですが、貼り付け方がよくわからないので、easyBCDのview settingsを詳記します。

windows boot manager
--------------------
identifier   {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device partition=\Device\HarddiskVolume2
description Windows Boot Manager
locale   ja-JP
inherit  {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default {3b0a05a0-a3ea-11de-861d-d0fd9d302b12}
resumeobject {3b0a059f-a3ea-11de-861d-d0fd9d302b12}
displayorder {3b0a05a0-a3ea-11de-861d-d0fd9d302b12}
{3b0a05a3-a3ea-11de-861d-d0fd9d302b12}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142b}
timeout 30

Windows Boot Loader
-------------------
identifier {3b0a05a0-a3ea-11de-861d-d0fd9d302b12}
device partition=C:
path Windows 7
locale ja-JP
inherit {6efb52df-1766-41db-a6b3-0ee5eff72db7}
recoverysequence {3b0a05a1-a3ea-11de-861d-d0fd9d302b12}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {3b0a059f-a3ea-11de-861d-d0fd9d302b12}
nx optin

Real-mode Boot sector
--------------------
identfier {3b0a05a3-a3ea-11de-861d-d0fd9d302b12}
device partition=C:
path \nst\ntldr
description Microsoft Windows XP

以上、1.の内容です。

2.のxp boot.iniの内容ですが、

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition"

以上、2.の内容です。

私もxp boot.ini辺りが問題なのでは、と考えていました。

補足日時:2011/07/02 02:09
    • good
    • 0

>他のパーティション(D)にインストール出来たXPのイメージを復活させ、


それでは起動できないでしょう。
XPを再インストールした後に7のみ起動に復元してからEasyBCDでXPのエントリーを追加してください。

この回答への補足

bunjiiさん

ご回答ありがとうございます。

でも、なんとか出来ないものか、もう少し頑張ってみたいです。

補足日時:2011/07/02 01:55
    • good
    • 0

No.1の続きです。


返答の情報を見ると、
windows boot managerは何も問題ありません。
(system partition, boot partition, XP のbootloader呼び出しともにノーマルな状態です)
boot.ini は
multi(0)disk(0)rdisk(0)partition(1)となっている
partition(1)の部分のみを
multi(0)disk(0)rdisk(0)partition(2)と変更して試してください。
---以下は余談ですが、
1. boot.iniは単なるテキストファイルですのでWin7のメモ帳で編集できます。(XPを起動する必要はありません)
2. Win7やXPに限らずインストール済みのOSはよほどのことが無い限り、起動に問題が発生しても修復できるものです。(壊れていない限り、わざわざ再インストールする必要はありません)
bootするデバイスとpartitionを正しく設定すればOKです。
3. Win7 bootマネージャ情報はコマンド入力で bcdedit と入力するだけで表示できます。
EasyBCDなどのツールに頼ると応用が活かせないようです。
基本はWin7、WinXPに標準で備わっているツールを使えば応用が効きます。

この回答への補足

8ive22tyさん

boot.iniのpartiton()の番号を2に書き換えても、いつものところで起動が止まってしまいました。

元々の7starterのままでは、リカバリ領域が隠しpartiton(?)にありますので、
easyBCDで各partitionを見てみると、
partition 1(0*27- GiB)
partition 2(NTFS- MiB)
partition 3(C:\as NTFS- GiB)
partition 4(D:\as NTFS- GiB)  <XPのリカバリした領域>

となっておりました。

そこでboot.iniのpartition()を4に書き換えたのですが、
結局同じところで起動が止まってしまいます。

補足日時:2011/07/02 17:20
    • good
    • 0

>でも、なんとか出来ないものか、もう少し頑張ってみたいです。


Windows OSの起動シーケンスを熟知しないとあなたの希望通りにならないと思います。
ブートシーケンスはXPまでとVista以降では基本的に異なります。
イメージバックアップしたXPではboot.iniの記述が以下のようになっていると思います。

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\Windows="Microsoft Windows XP ******" /noexecute=option /fastdetect

EasyBCDでエントリーを追加するとシステム予約パーティションにブートローダーがインストールされ、boot.iniは以下のようになるようです。

[boot loader]
timeout=15
default=multi(0)disk(0)rdisk(0)partition(3)\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\Windows=”Windows XP on E:\ " /fastdetect

両者の違いで決定的な要素は partition の位置が異なることです。
この部分を修正しただけでデュアルブートにならないのは他にも原因があります。
あなたの応用力では無理なように感じます。
私のテスト環境ではXPを復元した後でアクティブパーティションを変更し、XPの単独起動を確認してからEasyBCDでエントリーを追加してデュアルブートが完成しました。
かなり面倒な作業です。

この回答への補足

bunnjiiさん

お返事が遅くなり申し訳ありません。
XPのpartitionをactiveにするのは以前にも試したことがあったのですが、
その時はブート選択メニューも出ずに再リカバリしました。

今回の「相談箱」でXPと7のブート構成を勉強させて頂いておりますが、
XPのboot.iniファイルのpartition{ }の書き換えが奏功したのか、XPのpartitionをactiveにしてもエラーが出ずにXP単独起動に至っております。

今後のマルチブート化への大きなヒントになったと考えております。
ありがとうございました。

補足日時:2011/07/06 13:49
    • good
    • 0

No.3の続きです。


次のことを確認、および試してみてください。
1. Win7のブート情報(bootmgrファイル、Bootフォルダ)のあるpartitionを確認します。
通常はWin7をインストールしたpartitionにあるはずですが、「システムで予約済み」領域に有ることも普通です。
ここではbootmgrファイルの有るpartitionをsystem partitionと呼びます。
2. system partitionにXPのブート情報が有ることを確認します。
XPのブート情報とは次のファイルです。
ntldr
boot.ini
BOOTDETECT.com
system partitionにXPのブート情報が無い場合はXPをインストールしたpartitionからコピーして作成します。
3. No.3の返答によればpartition4 にXPが有るようですので、system partitionにコピーしたboot.iniの[operating systems]のpartition()は
partition(4)とします。
4. この作業後にXPがブートするかどうか確認してください。
---
以上と同じような状態が下記サイトの
「D.Win7をインストールしたあとでXPをインストールする」
にありますので「図」のみを参考にしてください。
つまり、Win7のブート情報(bootmgrファイル、Bootフォルダ)の有るpartitionに
ntldr
boot.ini
BOOTDETECT.com
があることを参考にしてください。
なお、bootfont.binは必須ではありません。
要するに、この「図」のような環境を作ればXPが起動できるということを理解してください。
---install と bootloader
http://ftlabo.sakura.ne.jp/win/install-bootloade …

この回答への補足

8ive22tyさん

Win7のbootmgrファイルにntldr、boot.ini、BOOTDETECT.comのファイルはありませんでしたので、
XPからコピーしました。
ただ、BOOTDETCT.comのファイルは見当たらず、かわりにNTDETECT.comを置きました。

boot.iniファイルもpartition{ }の部分を4に変えてみました。

ですが、やはり、起動が「ようこそ」の直前で止まってしまいます。

---install と bootloaderのHPを拝見しました。
基本的な事はよく理解できました。

今回、同じように設定したつもりでも、起動が止まってしまいます。
他に何か原因があるのでしょうか?

補足日時:2011/07/04 09:11
    • good
    • 0

No.5の続きです。



> ただ、BOOTDETCT.comのファイルは見当たらず、かわりにNTDETECT.comを置きました。

環境によってBOOTDETECT.comではない場合もありますので、
NTDETECT.comでも構いません。

No.1にある「Real-mode Boot sector」というXPをbootするメニューを使わないで
No.5の「D.Win7をインストールしたあとでXPをインストールする」
に書いてあるようにWin7の標準ツールである bcdedit を使って、
Win7のブートメニューでXPをbootできるようにするには bcdedit.exe コマンドで bootエントリを追加する。
bcdedit /create {ntldr} /d "Windows XP"
bcdedit /set {ntldr} device partition=c:
bcdedit /set {ntldr} path \ntldr
bcdedit /displayorder {ntldr} /addlast
のようにブートマネージャに追加してはどうでしょうか。

上記のとおりに追加したとすれば、
ブートマネージャを表示すると(bcdeditを実行すると)
下記のようになっているはずです。

Windows レガシ OS ローダー
--------------------------------
identifier {ntldr}
device partition=C:
path \ntldr
description Windows XP

以上でWin7のbootメニューに項目が追加されていますので、このメニューを選択してbootするとどうでしょうか。

この回答への補足

8ive22tyさん

教えて頂いた方法で、Real-mode Boot sectorからlegacy os loader以下の設定にに変更できましたが、
今回は「0xc000000f」のエラーメッセージが出て起動すらしませんでした。

結局easyBCDでXPのエントリーを消去し、再度easyBCDでエントリー(Real-mode Boot sector)したのですが、
No4の方(bunjiiさん)のお返事を参考にして、easeus partition master でXPのpartitionをactiveにすると、電源投入時ブート選択メニューは出ず、そのままXPが最後まで起動できました。

ですが、マルチブートまでは至っておらず、現在boot.iniファイルの書き換えや、7starterの所定の位置にboot.ini、ntldr、NTDETECTOR.comファイルを置いた状態で詰まってます。

補足日時:2011/07/06 13:29
    • good
    • 0
この回答へのお礼

8ive22tyさん

これまで色々ご教授して頂きありがとうございました。
今回bunjiiさんのご回答がヒントになり、無事マルチブートが完成したことをご報告致します。

今考えてみると、7とXPをリカバリしたのち、XPのリカバリしたpatitionでの単独起動が重要なポイントだったと思います。
ですが、なぜそれでうまくいったのかは、今のところ不明で、結果オーライといった感じです。

お礼日時:2011/07/06 16:45

>XPのboot.iniファイルのpartition{ }の書き換えが奏功したのか、XPのpartitionをactiveにしてもエラーが出ずにXP単独起動に至っております。


もう1歩でデュアルブート完成です。
ディスクの管理で先頭パーティション(システム予約の100MB)をアクティブにして再起動してください。
結果がどのようになったかを報告して頂ければ幸いです。
    • good
    • 0
この回答へのお礼

XP側から7starterのシステム予約部分のpatitionをactiveにして再起動しました。
すると7starterが自動的に起動したので、easyBCDにてXPのエントリーを追加し(Real-mode Boot Sector)、再起動しました。

今度はブート選択メニューが表れXPを選択すると、ちゃんと最後まで起動出来ました!

各OSのブート情報はまだ確認出来ていませんので、
今までの失敗と何が違うのか、これから検証してみようと思いますが、
なにはともあれ、無事マルチブートが完成しました。

8ive22tyさんからも色々とご教授して頂きましたことを、心から感謝致します。
ありがとうございました。

今回、各partitionのactive化有無が分かれ道だったようです。
このことを示唆してくれたbunjiiさんのご回答をベストアンサーとしたいと思います。

8ive22tyさん、bunjiiさん、お二方のおかげでWindowsのブートについて大変勉強になりました。
あらためて、お二方にお礼申しあげます。ありがとうございました。

お礼日時:2011/07/06 16:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!