nbctcp3
Enthusiast
Enthusiast

Clone vm without vCSA

Jump to solution

SW INFO:

-ESXi 6.7

I am trying to clone a vm without vCenter

My plans are:

-clone vmdk

-create an empty vm

-attach cloned disk into new vm

I got this error when trying to clone

# vmkfstools -i WIN2016/WIN2016.vmdk AD1/AD1.vmdk

DiskLib_Check() failed for source disk The system cannot find the file specified (25).

Google said need to install multiextent module, but I can't find it.

# vmkload_mod -l|grep multiextent

QUESTIONS:

1. Do I need multiextent in esxi 6.7

2. I also try to
# cp old*.vmdk new*.vmdk
but I can't see the disk when I am trying to attach using GUI

tq

Message was edited by: nbctcp3

Tags (1)
1 Solution

Accepted Solutions
nbctcp3
Enthusiast
Enthusiast

This how I fix.

-check flat filename

# cat WIN2016.vmdk

RW 83886080 VMFS "WIN2016_1-flat.vmdk"

# ls

AD1.vmsd           AD1.vmx            WIN2016-flat.vmdk  WIN2016.vmdk

-as you can see vmdk looking for the file that doesn't exist

-so just rename the file file

# mv WIN2016_1-flat.vmdk WIN2016-flat.vmdk

or

modify WIN2016.vmdk

from

RW 83886080 VMFS "WIN2016_1-flat.vmdk"

to

RW 83886080 VMFS "WIN2016-flat.vmdk"

View solution in original post

0 Kudos
7 Replies
GayathriS
Expert
Expert

Similar query is answered here please check out this :
Copy virtual disk for using by another VM

https://www.altaro.com/vmware/how-to-clone-vms-vcenter/

Please mark this as "correct" or " Helpfull" if this answers your query.

regards

Gayathri

0 Kudos
IRIX201110141
Virtuoso
Virtuoso

On paper it looks completly right what youre doing but the error msg is something like "file not found" so please check again if you specified the file path corretly. My cmd ordering is a little bit different because i create the "empty" VM first so thats foldername already exisits when starting. I always start in the source VM folder.

cd /vmfs/volumes/datastorename/source_vm/

vmkfstool -i source_vm.vmdk ../new_vm/new_vm.vmdk -d thin

When ever possible use the shell feature of tab-complete.

Regards

Joerg

0 Kudos
nbctcp3
Enthusiast
Enthusiast

Have you try yourself with esxi 6.7

Your method is just copying oldvm.vmdk into new vm folder.

What I want is rename oldvm.vmdk in the new vm folder to be the same as new vm folder name i.e newvm/newvm.vmdk

0 Kudos
IRIX201110141
Virtuoso
Virtuoso

You have asking for cloning.... and not renaming to match file name to folder and VM name.

Renaming can be archived by using

vmkfstools -E "originalname.vmdk" "newname.vmdk"

The lazy ppl just use a svMotion.

Regards,

Joerg

0 Kudos
GayathriS
Expert
Expert

Yes as Joerg said you have asked for clone not for renaming filename.

regards

Gayathri

0 Kudos
nbctcp3
Enthusiast
Enthusiast

This how I fix.

-check flat filename

# cat WIN2016.vmdk

RW 83886080 VMFS "WIN2016_1-flat.vmdk"

# ls

AD1.vmsd           AD1.vmx            WIN2016-flat.vmdk  WIN2016.vmdk

-as you can see vmdk looking for the file that doesn't exist

-so just rename the file file

# mv WIN2016_1-flat.vmdk WIN2016-flat.vmdk

or

modify WIN2016.vmdk

from

RW 83886080 VMFS "WIN2016_1-flat.vmdk"

to

RW 83886080 VMFS "WIN2016-flat.vmdk"

View solution in original post

0 Kudos
IRIX201110141
Virtuoso
Virtuoso

An vDisk is based on 2 files... first one is the small human readable file descriptor and the second one is the -flat which contains the data. In a first step you have used "mv" to rename the *-flat. This breaks the relationschip because whitin the descriptor you have to specifed the filename of the -flat one. With this broken relationschip, which is the same as a missig descriptor or flat the GUI will not display the vDisk anymore.

So next time dont use "mv" instead use vmfkstools -E because all 2 files and the information inside the descriptor are changed in one single step.

Regards,

Joerg