Skip to content

Templates and Cloning

Building every VM by clicking through an OS installer gets old after the second one. The Proxmox answer: build a machine once, perfect it, freeze it as a template, then stamp out clones in seconds.

The workflow

  1. Create a VM and install the OS (see Your First VM).
  2. Configure it the way you like every machine to start: updates applied, guest agent installed, your SSH key, the hostname not set (clones must get their own).
  3. Shut it down. Right-click → Convert to template (or, on the host shell — verified against the official qm man page — qm template 100).
  4. The template can't be started anymore — it's a mold, not a machine.
  5. Right-click → Clone whenever you need another one.

Honestly labeled: qm template <vmid> verified against the official man page; not executed here.

Full clones vs linked clones

Cloning a template offers two flavors:

  • Linked clone (the default for templates): the new VM shares the template's disk and only records differences. Nearly instant, nearly free — but it depends on the template. Delete the template and the clones break.
  • Full clone: a complete independent copy. Takes as long as copying the disk takes, uses full space, depends on nothing.

For throwaway test machines, linked clones are perfect. For anything you care about, full clone.

# Full clone of template 900 into new VM 101 (verified against
# the official qm man page; not executed here):
qm clone 900 101 --name web-test --full 1

Honestly labeled: qm clone <vmid> <newid> with --name and --full verified against the official man page; not executed here.

The golden-image habit

Keep one template per OS you use — "Debian 13 base," "Ubuntu 24.04 base" — updated every few months: clone it, run updates inside the clone, convert the clone into the new template, delete the old one. Every new machine then starts life patched and configured, and you never install an OS from scratch again.

Containers, too

Containers clone the same way (pct clone, verified against the official pct man page), and container templates work identically. A "base Debian container" template is the highest-leverage object in a home lab: new services in seconds.

The one idea to keep

Install once, template it, clone forever. Linked clones for experiments, full clones for keepers. Next: how guests reach the network, in Networking.