あれのーと

らくがきちょうです。

windows migration on VirtualBox(実践編)

あけましておめでとうございます。
前に調べたhdd上にあるwindowsの移行に関して実践してみる。参考にしたページはここ
http://tornweb.dk/blog/?Articles=20080603-Running_existing_Windows_in_VirtualBox_by_Andreas_Moegelmose
イメージで呼び出す方法については明確なページもないので、HDD上にあるWindowsパーティションを呼び出す方法でやってみる。
LinuxデュアルブートLinuxをメインにしているけど、たまにWinodwsを使いたいけど再起動はなんてときは良いのでは。

  1. Winodws側の準備

2つの準備が必要。windowsを起動して実施。

  • MergeIDE

現在Windows上のコントローラでは起動に失敗するので、これをダウンロードしてMergeIDE.batファイルを起動する。

  • ハードウェアプロファイル

次に、現在インストールしているドライバで失敗しないように、バーチャルマシン用にハードウェアプロファイルを作成します。コントロールパネル->システム->ハードウェア->ハードウェアプロファイルで作成することができます。現在のプロファイルを選択してコピーを行います。新しいコピーには"VirtualBox boot"と、現在のプロファイルには"Stand-alone boot"とリネームします。

あなたの選択の後に現在のハードウェアプロファイルを順序づけます(この順序はWindowsが起動するときに表示される順序を決定します。よく使われる一つとして、"VirtualBox boot"を先に持っていけばよいでしょう)

念のため、「ハードウェアプロファイルをユーザが選択するまで待つ」にチェックを入れておけば、ブート時に誤った選択をすることはないでしょう。

Windows側での作業は以上。次は、Ubuntu内でWindowsを起動します。

  1. Ubuntu側の準備

オープンソース版でないVirtualBoxダウンロードしインストールします。deb版があるからだいじょうぶでしょう。

  • mbr-toolsのインストール

次は、バーチャルマシン用のmbrの作成を行います。

$ sudo apt-get install mbr

  1. バーチャルマシンの作成

自分のディレクトリに戻って、.VirtualBox配下にMBRを作成します。

$ cd ~
$ install-mbr --force .VirtualBox/vboxmbr.mbr

  • バーチャルマシンの作成

fdiskでターゲット(windows)の場所を確認します。

$ sudo fdisk -l


Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes
Disk identifier: 0x8f800100

デバイス Boot Start End Blocks Id System
/dev/sda1 1 6 48163+ de Dell ユーティリティ
/dev/sda2 * 7 7757 62259907+ 7 HPFS/NTFS
/dev/sda3 7758 14131 51199155 83 Linux
/dev/sda4 14132 38913 199061415 5 拡張領域
/dev/sda5 14132 14593 3710983+ 82 Linux swap / Solaris
/dev/sda6 14594 38913 195350368+ 83 Linux
$

この場合、sda2がターゲットなので、-partitionsの後の値を2にする(sda1であれば1ね)。併せて先ほど作ったmbrにも登録します。

$ sudo VBoxManage internalcommands createrawvmdk -filename /home/hoge/.VirtualBox/WindowsXP.vmdk -rawdisk /dev/sda -partitions 2 -mbr /home/hoge/.VirtualBox/vboxmbr.mbr -relative -register

複数のパーティションを持つ場合はこんな感じ。(ここでは、sda1とsda5)

$ sudo VBoxManage internalcommands createrawvmdk -filename /home/hoge/.VirtualBox/WindowsXP.vmdk -rawdisk /dev/sda -partitions 1,5 -mbr /home/hoge/.VirtualBox/vboxmbr.mbr -relative -register

  1. VirtualBox内のマシンの作成

パーミッションをユーザが動作で切るようにします。[username]や[group]はあなたのユーザ・グループに変えます。

$ sudo chown [username]:[group] .VirtualBox/WindowsXP.vmdk .VirtualBox/WindowsXP-pt.vmdk

  1. groupの追加

.VirtualBox/WindowsXP.vmdkが、/dev/sda2にアクセスできるよう、VirtualBoxを実行するユーザをdiskグループに追加。

$ sudo useradd -G disk -a `whoami`

もし、まだvboxusersグループに登録していない場合はそちらも追加しておくこと。

ここまで来たら、VirtualBoxを起動して登録します。ファイル->仮想メディアマネージャで追加を選択し、vmdkファイル(.VirtualBox/WindowsXP.vmdk)を選択しOKを押します。

マシンを作成するには、新規を押し、次へをクリック。名前を入力し、OSタイプを設定。今回はXPを選択し次へ。メモリサイズは1000Mで選択して次へ。WindowsXP.vmdkを選択して次へ。そして完了。

ほとんど完了ですが、Windows起動のために"IO APICを有効化"と"VT-x/AMD-Vを有効化"を選択しておきます。バーチャルマシンを選択して設定を押し、高度のタブからこれらのチェックボックスをONにしておきます。

  1. バーチャルマシンの設定
  • ネットワーク

PCnet-FAST IIでOK?

探してください。。