When shall I use linked vs full VM clones?
I've seen documentation for the Full and Linked virtual machine clones, but I can't seem to fully understand when I should use one over another. I see that the full clone creates a copy of the VM, but what about the linked one -- does it mean whatever I do in one VM will be reflected in another? That doesn't make sense to me...
Can someone give a couple of specific examples when they'd use full vs. linked VM clones?
Solution 1:
The linked clone works similar to the snapshot technique. Snapshots work in a way that saves disk use: When you create a snapshot and make changes after this (as you work with the system inside the VM), VMware stores only the changed parts of the disk (sectors).
Linked VM clones work similar: If you have a 10 GB disk and create a linked clone, you do not need additional 10 GB of space - just much less. As you work with the original or cloned VM, only the changes or differences are stores. It is important to note, that the cloned VM still depends on the original disk image.
But: You can work with both VMs independently - the differences is only internal. You save disk space when using a linked clone - but the performance might also be less in certain cases.
If you have lots of very similar VMs to run, it might make sense to use linked clones, as you can save a lot of disk space.
If you just clone a VM and then start installing totally different software or data, a copied clone might be better.
Solution 2:
The linked clone is also faster to take, but you have to be careful when removing VMs - if you delete the base image for a given linked clone, that linked clone will die. I am a VirtualBox (happy) user: there you can see for a given machine (Settings -> Storage -> stop the cursor over the virtual HDD image) whether that image is based on another one, and what is the base. But for now I don't know how to make sure before deleting a VM that it is not a base for any other linked clone. Also note that at any time if you wish to make a linked clone an independent one, you can make Full Clone of that linked clone, and you will have it. I think the reverse process is impossible (making given clone linked over a given base in order to save disk space). Please, someone correct me if I am not right.