システムドライブのVHDクローンを使用してWindows 7をVHDから起動する


8

これはそれほど難しくない問題のように思われ、いくつかのハードルの後、私は途方もなく近づいています。でも、そこまでたどり着けません。

私はWindows 7を開発ショップで実行しています。VS2010を使用して、しばらくリリースされないものに取り組みたいと思います。上司は本番マシンでベータコードはないと言っていましたが、仮想PCのような分離された環境で実行できれば、このプロジェクトでVS2010を実行できました。

さて、私は以前VPCでWin7のベータ版とRC版を使用しましたが、VPC環境のために非常に遅くなりました。しかし、ディスクだけが仮想化されており、実際にハードウェアで実行されているWindows 7のVHDへのブート機能の称賛は誰もが歌っています。少し遅いと思われますが、VPCの速度ペナルティに近いものはありません。

私はすべてを思い通りにインストールするのにかなりの時間を費やしました。そのため、私は、Disk2VHDを使用してシステムドライブのクローンを作成し、それから起動して、VS2010をそのドライブにインストールするだけだと考えました。(私はすべてのプロジェクトを含むユーザーデータのほとんどを別のパーティションに保持しているので、複製する必要はなく、引き続き使用できます。)

まあ、主に古いバージョンのDisk2VHDを使用しているという事実が原因で、いくつかの問題がありました-(試してみる場合は最新のものを入手してください。)しかし、ようやく起動しました。(Scott Hanselmanが、VHDの起動に関する優れたブログ投稿を公開しています)。

しかし、それは私が期待していた、または期待していたものとはまったく異なりました。私が期待したのは、VHDがC:ドライブになり、元の(物理)C:ドライブが非表示になるか、別の文字でマウントされ、変更から隔離および保護されることでした。

実際に得られるのは、VHDがD:ドライブになり、D:ドライブから起動しても、元のC:ドライブはまだ残っているということです。これは、VHD上のレジストリがC:ドライブ上のレジストリのクローンであり、C:へのハードコーディングされた参照が多数含まれていることを除いて、大丈夫です。つまり、結果はD:(VHD)からのもの(および変更)もあれば、C:からのもの(および変更)もあります。(cmdプロンプトを開いてSETを実行して環境変数を確認すると、D:\とC:\のパスが混在しているのがわかります。)したがって、実際には分離された環境はありません。最も重要なのは、%ProgramFiles%がC:\ Program Filesに設定されていることです。

本当に必要なのは、レジストリエントリとしてではなく、マウントされたVHD AS FILES上のレジストリファイルにアクセスし、グローバル検索を実行して、文字列内のすべてのC:\をD:に置き換えるツールです。そのようなプログラムは見つかりませんでした。(Registry Replaceと呼ばれるプログラムで実行しようとしましたが、管理者として実行している場合でも、レジストリで変更できない特定のエントリがあります。)

誰か知っていますか?または、私の問題に対する他の解決策(クリーンなVHDでゼロから始めて、Win7とすべてのプログラムをインストールする以外)。

回答:


5

免責事項:VHDからの起動またはこの前述の修正は行っていません

このKB記事を参照してください。実際のシステムドライブを別のものに変更してください。さらに分離するために、そのドライブ文字の割り当てを解除することもできます。


ありがとう。その記事(HKLM \ MountedDevicesサブキーの名前を変更することについて)がうまくいきました。Registry Replacerを使用してVHDのシステムレジストリをロードし、そこで変更を加えた後、VHDで起動したとき、それは新しいC:ドライブでした。
daveh551 2009年

うまくいったことを嬉しく思います。将来の参考のために知っておくと便利です。
prestomation 2009年

0

私のために働く。VHDをキャプチャする前にレジストリキーを消去すると、HKLM \ MountedDevicesサブキーを変更する必要がない場合があります。まだテストされていません;)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.