共通の仮想マシンファイルを使いまわして1台のPC上で2台のゲストOSを動かす

Windows(ホストOS)上で2個VMware Playerを起動して、2つのゲストOS(今回はCentOS)が起動できるようにした場合のメモ。

要件: 1つ目でOSインストール、各種インストールを済ませておき、2つ目は1つ目のvmx,vmdx,...ファイルをコピーして使い回す。これだけ。

ぶっつけでやってみると以下の手順で問題なく動いた(っぽい)。

  1. vmx, vmdk, vmxfm vmxd等のファイルのうち、1つ目と同じで名前が衝突するものはマズイので別名をつけておく。
    例えば、displayName = "CentOS"ide0:0.filename = "centos4_8.vmdk"displayName = "CentOS-b"ide0:0.filename = "centos4_8-b.vmdk"に修正していく。それぞれオリジナルゲストOS、コピーゲストOSと呼んでおく。
    ちなみに、オリジナルゲストOSの方は全く何も変更する必要はなし。
  2. これで何も考えずVMware Playerを2つ起動し、オリジナルゲストOS、コピーゲストOSそれぞれのvmxファイルを開く。
  3. コピーゲストOSのホスト名は変更。/etc/hosts, /etc/sysconfig/networkを編集。
  4. NICに割り当てられている仮想MACアドレスが重複していて怒られるので、hwconfとifcfg-eth0を編集。
    参考:
    http://192168111.blog71.fc2.com/blog-entry-9.html
    hwconfに対してgrep hwaddrすると、オリジナルゲストOSは1行しかひっかからないけど、コピーゲストOSは2行ひっかかると思う。オリジナルと一致する方のエントリは削除する。で、残ったエントリがコピーゲストOSの正しいMACアドレスなので、このアドレスを使ってifcfg-eth0を編集。

どうしても差異がでてきてしまうような箇所、例えばホスト名とかMACアドレスとかは仕方がないとして、それ以外で余計な苦労をせずに使えるのは素晴らしい。