หากต้องการ clone โดยการใช้ command ในกรณีที่ไม่ใช้ Virtual Center หรือมีแค่ ESXi Free
สามารถใช้คำสั่ง vmkfstools ได้ จากตัวอย่างคือการ copy disk จาก Win2k3StdSP1 เป็น DEVMAIL01 แต่จะต้องใช้คำสั่ง mkdir เพื่อสร้าง folder ชื่อ DEVMAIL01 ไว้รอก่อน
vmkfstools -i /vmfs/volumes/SharedDisk/MasterOS/Win2k3StdSP1.vmdk /vmfs/volumes/SharedDisk/DEVMAIL01/DEVMAIL01.vmdkจากนั้นค่อยสร้าง virtual machine ใหม่ชื่อ DEVMAIL01 แบบ Custom แล้วเลือก Existing Disk
ที่ต้องสร้างชื่อไฟล์ให้เหมือนกันอย่างนี้เพราะว่ามันจะไปสร้างไฟล์ .vmx และไฟล์อื่นอยู่ใน folder เดียวกับ Disk ที่ได้ clone ไว้ก่อนหน้านี้
ส่วนเรื่องไฟล์ที่มี -flat ต่อท้าย เวลาเข้า ssh ไฟล์นี้สำคัญมากๆๆ เพราะเป็น disk จริงๆ
ตัวอย่างเช่น ไฟล์ Pilot1.vmdk กับ Pilot1-flat.vmdk
เราสามารถใช้คำสั่ง vi หรือ nano เพื่อแก้ไขไฟล์ Pilot1.vmdk ได้ แต่ถ้าใช้คำสั่งนี้กับ -flat จะไม่สามารถอ่านออกได้เลย
การแก้ไขไฟล์ Pilot1.vmdk ที่เคยทำมาก็เพื่อจะ rename disk เนื่องจากการที่เราเปลี่ยนชื่อ VM ใน vSphere Client แล้ว folder ใน Datastore จะไม่ถูกเปลี่ยนตาม มีอยู่ 2 วิธีในการเปลี่ยน คือ
1. เปลี่ยนแบบ Wizard โดยการ migrate VM ไปไว้ Datastore อื่น
2. ใช้ manual คือเข้า ssh ทำการ rename folder และแก้ไขชื่อ VM ในไฟล์ .vmx และไฟล์ .vmdk โดยใช้คำสั่ง vi หรือ nano
จาก KB ของ VMware ข้างล่างนี้คือ ไฟล์ Pilot1-flat.vmdk อยู่ แต่ header/descriptor file (Pilot1.vmdk) หายไป เราก็สามารถสร้างขึ้นใหม่ได้
Recreating a missing virtual disk (VMDK) header/descriptor filehttp://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1002511ถ้า Browse Datastore ขึ้นมา จะไม่เห็น -flat.vmdk ไฟล์ เนื่องจากมันถูกซ่อนอยู่ แต่ถ้า download เฉพาะ .vmdk มาเก็บใส่เครื่องเรา ก็จะได้ไฟล์ ทั้ง .vmdk ทั้ง 2 ไฟล์ (-flat.vmdk และ .vmdk ธรรมดา)
ส่วนชื่อ vmdk ที่ vmware สร้างขึ้นมานั้น ถ้าสังเกตดีจะพบว่า ครั้งแรกจะสร้างชื่อเดียวกับ VM เช่น เราสร้าง VM ชื่อ Pilot1 , Virtual Harddisk ตัวแรกจะชื่อ Pilot1.vmdk และ Pilot1-flat.vmdk
ถ้าสร้าง Virtual Harddisk ตัวที่ 2 ก็จะ auto create ชื่อว่า Pilot1_1.vmdk และ Pilot1_1-flat.vmdk
ถ้าสร้าง Virtual Harddisk ตัวที่ 3 ก็จะ auto create ชื่อว่า Pilot1_2.vmdk และ Pilot1_2-flat.vmdk