Virtual Boxに作成したUbuntu環境の仮想ハードディスクをコピーして、簡単にバックアップしたりコピーする方法です。
単純なファイルコピーだとハードディスクのUUIDの重複でVirtual Boxに登録できません。
UUIDを下記コマンドで付け替えると起動します。
$ VBoxManage internalcommands setvdiuuid copydisk.vdi VirtualBox Command Line Management Interface Version 2.2.2 (C) 2005-2009 Sun Microsystems, Inc. All rights reserved. UUID changed to: bb9f9884-54c5-53a8-a803-a4783b4181aa $
UUIDの付け替えで起動するようになってもNICのMACアドレスが変更されてしまうためネットワークにつながりません。
環境
環境は、以下の通りです。
H/W: Intel Core 2 Duo 2GHz Memory 4GB
ホストOS: Mac OS X 10.5.6
Virtual Box: Ver 2.2.2 r46594
ゲストOS: Ubuntu 9.04 Server
仮想ディスクのコピー
仮想ディスクのコピーは、ファイルとしてコピーしてUUID付け替えでも良いのですが、VBoxManageコマンドのclonevdiオプションで一度に実行することができます。
$ VBoxManage clonevdi orgdisk.vdi copydisk.vdi VirtualBox Command Line Management Interface Version 2.2.2 (C) 2005-2009 Sun Microsystems, Inc. All rights reserved. 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100% Clone hard disk created in format 'VDI'. UUID: f897cfe8-6537-59da-99d0-ef8cab9e24f9 $
Virtual Boxへの登録
Virtual BoxのGUI画面で新規仮想マシンを登録します。
ハードディスクは、既存ディスクとしてコピーしたディスクを指定します。
作成できたら起動します。
ネットワークの設定
起動してもネットワークに接続できていないはずです。
下記のコマンドでudevがeth0をeth2に変更していることが分かります。
$ dmesg | grep eth
/etc/network/interfaceを下記のように変更してネットワークを再起動します。
cat /etc/network/interfaces # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface #auto eth0 #iface eth0 inet dhcp auto eth2 iface eth2 inet dhcp $ sudo /etc/init.d/networking restart
これでネットワークに接続できるようになりました。
ホスト名の変更
あとは、ホスト名を変更すればOKです。
/etc/hostnameと/etc/hostsを変更してネットワークを再起動すると新しいホスト名になります。
cat /etc/hostname newhostname $ grep `cat /etc/hostname` /etc/hosts 127.0.1.1 newhostname.2.0.10.in-addr.arpa newhostname $ sudo /etc/init.d/networking restart $ hostname newhostname $
これで、必要なだけコピーを作って、いろいろ試せます。