web-dev-qa-db-ja.com

WindowsXP仮想マシンがVirtualBoxでハングする

やりたいこと:

1台のハードドライブにある2つの異なる物理WindowsXPシステムをWindows7のVirtualBoxに仮想化しようとしています。

私がしたこと(ドライブごとに1回):

Linuxシステムから:

dd if=/dev/sd(disk) of=d1.img conv=noerror,sync bs=64k

Windows7システムから

vboxmanage convertfromraw d1.img d1.vdi

私がいる場所:

いずれかのVMの起動中に、Windowsはロード時に(セーフモードで)ハングしているようですmup.sys。通常の起動では、それは単なる空白の画面です。まだまだたくさんのことをしているわけではないので、デバッグ出力を増やすためのポイントもあればよいでしょう。

以前にLinuxや同様のシステムでこの方法を使用したことがあると確信していますが、ここで何か馬鹿げたことをしていますか? VirtualBoxに関する私の知識は、XenやKVMと比較してかなり限られています。

3
Sirex

修復オプションは機能しますが、より高速なハンマーの代わりにボルダーを釘に使用したためです。特定の問題は、元の物理ボックス用に設計されたhal.dll(ハードウェア抽象化レイヤー)と、新しいものを解釈できないことです。 VM。

ショートバージョンをお急ぎの場合は、動作中のhal.dllを同一または類似の動作中のVMから非起動側にコピーすると、インストール/修復プロセスを実行する必要がなくなります。

修復プロセス全体を実行することで、動作するHALを正常にインストールできますが、これは最も長く、最も時間のかかる方法です。一部のMicrosoftパッチはHALなどの主要なシステムdllを置き換え、動作中のHAL.dllを誤動作しているVMの%systemrootnにコピーするため、最も迅速な方法は、他の動作中のVMを可能な限り近い/同一の類似したSPおよびパッチリビジョンで活用することです。欠陥のあるものの名​​前を任意の名前に変更した後の%\ system32。

動作するVMのライブラリがない場合でも、以前使用していたインストールCDを使用して完全な回復方法を実行し、Microsoftの最善の試みの1つである(対話型)回復コンソールを起動することで多くの時間を節約できます。 SingleUserMode。

検出されたOSフォルダーの番号付きリストが必要です。単一のブートシステムでも(1)というラベルの付いたWindowsディレクトリが1つあり、破損したビルドを選択すると、パスワードの入力を求められ、cのルートにあるシェルにドロップされます。 :\ windowsまたは独自のドライブ文字とディレクトリ(%systemroot%)

現時点では考えられない理由で再度必要になった場合に備えて、破損したHal.dllをアーカイブします。 ren system32\hal.dll hal.dllBROKE

インストールCDからhalacpi.dl_(通常はi386\halacpi.dl_)を見つけ、誤動作しているHALの名前を変更した後、expandコマンドを使用します。環境変数の可用性はOSとリビジョンによって異なるため、次のような明示的なパスを使用する準備をしてください。

展開halacpi.dl_c:\ windows\system32\hal.dllまたは、保証のために利用可能な場合は環境変数を試してください展開halacpi.dl_%systemroot%\ system32\hal.dll

XP、2003サーバー/ 2003R2の一部のバージョンでは、インストールメディアに生のHAL.dl_もありますが、ここでは、halacpi.dllの拡張に失敗した場合に備えて、安全のために拡張してください。

hal.dl_ c:\ windows\system32\hal 2。dllを展開します

修復メニューを終了して再起動すると、起動プロセスが成功するか、少なくとも過去のmup.sys /ハングポイントを超えて続行する可能性が高くなります。ただし、このVMを繰り返し再起動しているので、NTFSボリュームの場合は5ステージのchkdsk、Fat32/Fat16ボリュームの場合は完全に3ステージを必要とするダーティディスクがある場合でも驚かないでください。ディスクのマングがどれほどひどいかによっては、ディスクが正常に修復されず、黒いDOSウィンドウの「CheckingDiskC」のデフォルトの白いテキストでフリーズする場合があります。

これは、元の無電圧で起動していないVHDを復元してHALするかどうかを決定する必要がある場合、またはそれ自体を修正できないこの問題のあるVMを復元する必要がある場合は、データドライブとしてマウントします。 VMまたはシステムとchkddskをデータドライブとして使用するか、無数の修復BOOTCDを使用する

また、欠陥のあるVMでそのboot.iniファイルをリラックスすることもできます。これは、おそらく今では、ブートログ、GUIなし、およびSOSを使用したデバッグの急上昇の復讐者になっています。不注意なワードラップやスマートクォートなどの不適切な変更は、不敬な欲求不満の期間中に絶えず改ざんされてテストされたboot.iniファイルに常に侵入しているように見えるため、フラグを立ててデフォルトのスタートアップエントリだけを追加します。

Microsoft Virtual PC、Virtual Server(初期の追加)管理者は、Microsoftがdisk2vhdユーティリティにもかかわらずHALの問題について発表していなかったため、この問題に何年も悩まされていました。回避策は、物理パーティションのサイズを強制的に変更するなど、時間のかかるものと同じくらい迷信的でした。完全な修復方法とともにVMに変換する前に、VHDを期待していました。

4
user189950

うまくいったようですので、これを回答として投稿してください。

私はウィンドウズXPディスクから修理再インストールをしようとしました。問題が何であれ修正されたようで、正しく起動するようになりました。

2
Sirex

コントロールパネルの[プログラムの追加と削除]メニューにあるすべてのドライバーをアンインストールすることをお勧めします。

それ以外に、デバイスマネージャに移動し、「ハードディスクコントローラ」、「ストレージコントローラ」、「IDEコントローラ」などのカテゴリを見つけて、各コントローラを右クリックし、[アンインストール]をクリックします。

これらの手順を実行した後でのみ、イメージの作成に進みます。

Windows XPは、既存のOSを新しいマザーボード(または、この場合はVM)に移動するときに、Windows 7ほど柔軟ではありません。これが失敗した場合は、@ Sirexが提案する修復オプションを試してください。

0
Kaurin