VMWare ESXi上でCLIでVMをコピーする
VMWare ESXiにはvim-cmdというCLIがあるので、それを使って大体の作業ができます。
# VIM IDの確認
vim-cmd vmsvc/getallvms
# コピーもとVMのshutdown(コピー元の電源がONの場合だけ必要)
vim-cmd vmsvc/power.off "vimid"
# VMのコピー
cp -r /vmfs/volumes/datastore1/base-ubuntu804server /vmfs/volumes/datastore1/app001-ubuntu804 rm -f /vmfs/volumes/datastore1/app001-ubuntu804/*.log rm -f /vmfs/volumes/datastore1/app001-ubuntu804/*.nvram
# VMの設定
/vmfs/volumes/datastore1/app001-ubuntu804/base-ubuntu804server.vmx
MACアドレスの変更
下3桁の変更
uuid.location = "56 4d 08 25 50 bf da 27-38 d8 ba 6e 2c 0b 36 60" uuid.bios = "56 4d 08 25 50 bf da 27-38 d8 ba 6e 2c 0b 36 60" ethernet0.generatedAddress = "00:0c:29:0b:36:60"
# vmの登録
vim-cmd solo/registervm /vmfs/volumes/datastore1/app001-ubuntu804/base-ubuntu804server.vmx app001-ubuntu804
vim-cmd vmsvc/getallvms
# 追加したVMの電源ON
vim-cmd vmsvc/power.on "vimid"
この先、起動したVMのIPアドレスとかを編集するのに、VMWareのClient使わなきゃいけないのがいまいちなんだけれど、何かいい解がないかなぁ。xenのxm consoleみたいに、ゲストOSにssh以外の方法で繋ぐ方法があるといいんだけどなぁ