Windows 7に「VHDブート機能」が追加されました(VHDネーティブブートとも言います)。
これは既存のパーティションの中の仮想ハードディスク(VHD)にインストールされたWindows 7を実PCでブートする機能です。
ここでの既存のパーティションとはWindows XP/Vista/7のパーティションを指します。
Windows Vistaからサポートされたbcdeditと「VHDブート機能」を併用することでWindowsのマルチブート化がより一層簡単になりました。
尚、VHDブートされる側のOSはそのOS自体がVHDブートされていることを検出でき、かつそれに対応するドライバを持っている必要があります。
このため現時点ではVHDブートされるOSは以下のOSに限定されます。
・Windows 7
・Windows Server 2008 R2
ここではbcdeditと「VHDブート機能」を利用したWindowsマルチブート環境構築について紹介します。
※Windows Server 2008 R2についてはここでは触れません。
今回主に使用したPCのCPUはCore 2 Quad Q6600/Core 2 Duo E6600です。
尚、Windows 7はWindows 7 RC版を使用しました。
X:\Sources>diskpart DISKPART> create vdisk file="e:\vhdw7x86.vhd" maximum=20000 type=fixed DISKPART> select vdisk file="e:\vhdw7x86.vhd" DISKPART> attach vdisk DISKPART> exit X:\Sources>exit |
bcdedit /copy {ntldr} /d "以前のバージョンの Windows" ※「指定されたエントリを参照中にエラーが発生しました。」となることを確認します。 bcdedit /create {ntldr} /d "Windows XP" bcdedit /set {ntldr} device partition=\Device\HarddiskVolume1 bcdedit /set {ntldr} path \ntldr bcdedit /displayorder {ntldr} /addlast bcdedit /v ※「Windows レガシ OS ローダー」として「Windows XP」が表示されます。 |
$ sudo passwd root 新しいUNIXパスワードを入力してください: 新しいUNIX パスワードを再入力してください: passwd: パスワードは正しく更新されました $ su - root パスワード: # dd if=/dev/sda3 of=/home/ubuntu/vine4bootsector.img bs=512 count=1 ※ブートセクタのファイル化(512バイト) 1+0 記録始め 1+0 記録終わり 512 バイト (512 B) コピー終了, 0.491927 s, 1.0 kB/s # mount /dev/sda2 /mnt # cp /home/ubuntu/vine4bootsector.img /mnt/myboot/ ※Win7側ではC:\myboot\vine4bootsector.imgとして利用します。 # umount /mnt |
bcdedit /create /d "Vine Linux 4" /application bootsector ※「エントリ {aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee} は正常に作成されました。」と表示されます。 ※この{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee} を後続のコマンドで指定します。 bcdedit /set {aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee} device partition=C: bcdedit /set {aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee} path \myboot\vine4bootsector.img bcdedit /displayorder {aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee} /addlast bcdedit /v ※最後のエントリとして以下の内容が表示されます。
|
bcdedit /set {各OSのGUID} DESCRIPTION "ブート名" |