1 *qm* `<COMMAND> [ARGS] [OPTIONS]`
5 An alias for 'qm guest cmd'.
7 *qm cleanup* `<vmid> <clean-shutdown> <guest-requested>`
9 Cleans up resources like tap devices, vgpus, etc. Called after a vm shuts
12 `<vmid>`: `<integer> (100 - 999999999)` ::
14 The (unique) ID of the VM.
16 `<clean-shutdown>`: `<boolean>` ::
18 Indicates if qemu shutdown cleanly.
20 `<guest-requested>`: `<boolean>` ::
22 Indicates if the shutdown was requested by the guest or via qmp.
24 *qm clone* `<vmid> <newid>` `[OPTIONS]`
26 Create a copy of virtual machine/template.
28 `<vmid>`: `<integer> (100 - 999999999)` ::
30 The (unique) ID of the VM.
32 `<newid>`: `<integer> (100 - 999999999)` ::
36 `--bwlimit` `<integer> (0 - N)` ('default =' `clone limit from datacenter or storage config`)::
38 Override I/O bandwidth limit (in KiB/s).
40 `--description` `<string>` ::
42 Description for the new VM.
44 `--format` `<qcow2 | raw | vmdk>` ::
46 Target format for file storage. Only valid for full clone.
48 `--full` `<boolean>` ::
50 Create a full copy of all disks. This is always done when you clone a normal VM. For VM templates, we try to create a linked clone by default.
52 `--name` `<string>` ::
54 Set a name for the new VM.
56 `--pool` `<string>` ::
58 Add the new VM to the specified pool.
60 `--snapname` `<string>` ::
62 The name of the snapshot.
64 `--storage` `<string>` ::
66 Target storage for full clone.
68 `--target` `<string>` ::
70 Target node. Only allowed if the original VM is on shared storage.
72 *qm cloudinit dump* `<vmid> <type>`
74 Get automatically generated cloudinit config.
76 `<vmid>`: `<integer> (100 - 999999999)` ::
78 The (unique) ID of the VM.
80 `<type>`: `<meta | network | user>` ::
84 *qm cloudinit pending* `<vmid>`
86 Get the cloudinit configuration with both current and pending values.
88 `<vmid>`: `<integer> (100 - 999999999)` ::
90 The (unique) ID of the VM.
92 *qm cloudinit update* `<vmid>`
94 Regenerate and change cloudinit config drive.
96 `<vmid>`: `<integer> (100 - 999999999)` ::
98 The (unique) ID of the VM.
100 *qm config* `<vmid>` `[OPTIONS]`
102 Get the virtual machine configuration with pending configuration changes
103 applied. Set the 'current' parameter to get the current configuration
106 `<vmid>`: `<integer> (100 - 999999999)` ::
108 The (unique) ID of the VM.
110 `--current` `<boolean>` ('default =' `0`)::
112 Get current values (instead of pending values).
114 `--snapshot` `<string>` ::
116 Fetch config values from given snapshot.
118 *qm create* `<vmid>` `[OPTIONS]`
120 Create or restore a virtual machine.
122 `<vmid>`: `<integer> (100 - 999999999)` ::
124 The (unique) ID of the VM.
126 `--acpi` `<boolean>` ('default =' `1`)::
130 `--affinity` `<string>` ::
132 List of host cores used to execute guest processes, for example: 0,5,8-11
134 `--agent` `[enabled=]<1|0> [,freeze-fs-on-backup=<1|0>] [,fstrim_cloned_disks=<1|0>] [,type=<virtio|isa>]` ::
136 Enable/disable communication with the QEMU Guest Agent and its properties.
138 `--arch` `<aarch64 | x86_64>` ::
140 Virtual processor architecture. Defaults to the host.
142 `--archive` `<string>` ::
144 The backup archive. Either the file system path to a .tar or .vma file (use '-' to pipe data from stdin) or a proxmox storage backup volume identifier.
146 `--args` `<string>` ::
148 Arbitrary arguments passed to kvm.
150 `--audio0` `device=<ich9-intel-hda|intel-hda|AC97> [,driver=<spice|none>]` ::
152 Configure a audio device, useful in combination with QXL/Spice.
154 `--autostart` `<boolean>` ('default =' `0`)::
156 Automatic restart after crash (currently ignored).
158 `--balloon` `<integer> (0 - N)` ::
160 Amount of target RAM for the VM in MiB. Using zero disables the ballon driver.
162 `--bios` `<ovmf | seabios>` ('default =' `seabios`)::
164 Select BIOS implementation.
166 `--boot` `[[legacy=]<[acdn]{1,4}>] [,order=<device[;device...]>]` ::
168 Specify guest boot order. Use the 'order=' sub-property as usage with no key or 'legacy=' is deprecated.
170 `--bootdisk` `(ide|sata|scsi|virtio)\d+` ::
172 Enable booting from specified disk. Deprecated: Use 'boot: order=foo;bar' instead.
174 `--bwlimit` `<integer> (0 - N)` ('default =' `restore limit from datacenter or storage config`)::
176 Override I/O bandwidth limit (in KiB/s).
178 `--cdrom` `<volume>` ::
180 This is an alias for option -ide2
182 `--cicustom` `[meta=<volume>] [,network=<volume>] [,user=<volume>] [,vendor=<volume>]` ::
184 cloud-init: Specify custom files to replace the automatically generated ones at start.
186 `--cipassword` `<password>` ::
188 cloud-init: Password to assign the user. Using this is generally not recommended. Use ssh keys instead. Also note that older cloud-init versions do not support hashed passwords.
190 `--citype` `<configdrive2 | nocloud | opennebula>` ::
192 Specifies the cloud-init configuration format. The default depends on the configured operating system type (`ostype`. We use the `nocloud` format for Linux, and `configdrive2` for windows.
194 `--ciupgrade` `<boolean>` ('default =' `1`)::
196 cloud-init: do an automatic package upgrade after the first boot.
198 `--ciuser` `<string>` ::
200 cloud-init: User name to change ssh keys and password for instead of the image's configured default user.
202 `--cores` `<integer> (1 - N)` ('default =' `1`)::
204 The number of cores per socket.
206 `--cpu` `[[cputype=]<string>] [,flags=<+FLAG[;-FLAG...]>] [,hidden=<1|0>] [,hv-vendor-id=<vendor-id>] [,phys-bits=<8-64|host>] [,reported-model=<enum>]` ::
210 `--cpulimit` `<number> (0 - 128)` ('default =' `0`)::
214 `--cpuunits` `<integer> (1 - 262144)` ('default =' `cgroup v1: 1024, cgroup v2: 100`)::
216 CPU weight for a VM, will be clamped to [1, 10000] in cgroup v2.
218 `--description` `<string>` ::
220 Description for the VM. Shown in the web-interface VM's summary. This is saved as comment inside the configuration file.
222 `--efidisk0` `[file=]<volume> [,efitype=<2m|4m>] [,format=<enum>] [,import-from=<source volume>] [,pre-enrolled-keys=<1|0>] [,size=<DiskSize>]` ::
224 Configure a disk for storing EFI vars. Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Note that SIZE_IN_GiB is ignored here and that the default EFI vars are copied to the volume instead. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
226 `--force` `<boolean>` ::
228 Allow to overwrite existing VM.
230 NOTE: Requires option(s): `archive`
232 `--freeze` `<boolean>` ::
234 Freeze CPU at startup (use 'c' monitor command to start execution).
236 `--hookscript` `<string>` ::
238 Script that will be executed during various steps in the vms lifetime.
240 `--hostpci[n]` `[[host=]<HOSTPCIID[;HOSTPCIID2...]>] [,device-id=<hex id>] [,legacy-igd=<1|0>] [,mapping=<mapping-id>] [,mdev=<string>] [,pcie=<1|0>] [,rombar=<1|0>] [,romfile=<string>] [,sub-device-id=<hex id>] [,sub-vendor-id=<hex id>] [,vendor-id=<hex id>] [,x-vga=<1|0>]` ::
242 Map host PCI devices into guest.
244 `--hotplug` `<string>` ('default =' `network,disk,usb`)::
246 Selectively enable hotplug features. This is a comma separated list of hotplug features: 'network', 'disk', 'cpu', 'memory', 'usb' and 'cloudinit'. Use '0' to disable hotplug completely. Using '1' as value is an alias for the default `network,disk,usb`. USB hotplugging is possible for guests with machine version >= 7.1 and ostype l26 or windows > 7.
248 `--hugepages` `<1024 | 2 | any>` ::
250 Enable/disable hugepages memory.
252 `--ide[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,model=<model>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,ssd=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>] [,wwn=<wwn>]` ::
254 Use volume as IDE hard disk or CD-ROM (n is 0 to 3). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
256 `--ipconfig[n]` `[gw=<GatewayIPv4>] [,gw6=<GatewayIPv6>] [,ip=<IPv4Format/CIDR>] [,ip6=<IPv6Format/CIDR>]` ::
258 cloud-init: Specify IP addresses and gateways for the corresponding interface.
260 IP addresses use CIDR notation, gateways are optional but need an IP of the same type specified.
262 The special string 'dhcp' can be used for IP addresses to use DHCP, in which case no explicit
263 gateway should be provided.
264 For IPv6 the special string 'auto' can be used to use stateless autoconfiguration. This requires
265 cloud-init 19.4 or newer.
267 If cloud-init is enabled and neither an IPv4 nor an IPv6 address is specified, it defaults to using
270 `--ivshmem` `size=<integer> [,name=<string>]` ::
272 Inter-VM shared memory. Useful for direct communication between VMs, or to the host.
274 `--keephugepages` `<boolean>` ('default =' `0`)::
276 Use together with hugepages. If enabled, hugepages will not not be deleted after VM shutdown and can be used for subsequent starts.
278 `--keyboard` `<da | de | de-ch | en-gb | en-us | es | fi | fr | fr-be | fr-ca | fr-ch | hu | is | it | ja | lt | mk | nl | no | pl | pt | pt-br | sl | sv | tr>` ::
280 Keyboard layout for VNC server. This option is generally not required and is often better handled from within the guest OS.
282 `--kvm` `<boolean>` ('default =' `1`)::
284 Enable/disable KVM hardware virtualization.
286 `--live-restore` `<boolean>` ::
288 Start the VM immediately from the backup and restore in background. PBS only.
290 NOTE: Requires option(s): `archive`
292 `--localtime` `<boolean>` ::
294 Set the real time clock (RTC) to local time. This is enabled by default if the `ostype` indicates a Microsoft Windows OS.
296 `--lock` `<backup | clone | create | migrate | rollback | snapshot | snapshot-delete | suspended | suspending>` ::
300 `--machine` `(pc|pc(-i440fx)?-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|q35|pc-q35-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|virt(?:-\d+(\.\d+)+)?(\+pve\d+)?)` ::
302 Specifies the QEMU machine type.
304 `--memory` `[current=]<integer>` ::
308 `--migrate_downtime` `<number> (0 - N)` ('default =' `0.1`)::
310 Set maximum tolerated downtime (in seconds) for migrations.
312 `--migrate_speed` `<integer> (0 - N)` ('default =' `0`)::
314 Set maximum speed (in MB/s) for migrations. Value 0 is no limit.
316 `--name` `<string>` ::
318 Set a name for the VM. Only used on the configuration web interface.
320 `--nameserver` `<string>` ::
322 cloud-init: Sets DNS server IP address for a container. Create will automatically use the setting from the host if neither searchdomain nor nameserver are set.
324 `--net[n]` `[model=]<enum> [,bridge=<bridge>] [,firewall=<1|0>] [,link_down=<1|0>] [,macaddr=<XX:XX:XX:XX:XX:XX>] [,mtu=<integer>] [,queues=<integer>] [,rate=<number>] [,tag=<integer>] [,trunks=<vlanid[;vlanid...]>] [,<model>=<macaddr>]` ::
326 Specify network devices.
328 `--numa` `<boolean>` ('default =' `0`)::
332 `--numa[n]` `cpus=<id[-id];...> [,hostnodes=<id[-id];...>] [,memory=<number>] [,policy=<preferred|bind|interleave>]` ::
336 `--onboot` `<boolean>` ('default =' `0`)::
338 Specifies whether a VM will be started during system bootup.
340 `--ostype` `<l24 | l26 | other | solaris | w2k | w2k3 | w2k8 | win10 | win11 | win7 | win8 | wvista | wxp>` ::
342 Specify guest operating system.
344 `--parallel[n]` `/dev/parport\d+|/dev/usb/lp\d+` ::
346 Map host parallel devices (n is 0 to 2).
348 `--pool` `<string>` ::
350 Add the VM to the specified pool.
352 `--protection` `<boolean>` ('default =' `0`)::
354 Sets the protection flag of the VM. This will disable the remove VM and remove disk operations.
356 `--reboot` `<boolean>` ('default =' `1`)::
358 Allow reboot. If set to '0' the VM exit on reboot.
360 `--rng0` `[source=]</dev/urandom|/dev/random|/dev/hwrng> [,max_bytes=<integer>] [,period=<integer>]` ::
362 Configure a VirtIO-based Random Number Generator.
364 `--sata[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,ssd=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>] [,wwn=<wwn>]` ::
366 Use volume as SATA hard disk or CD-ROM (n is 0 to 5). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
368 `--scsi[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,iothread=<1|0>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,queues=<integer>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,ro=<1|0>] [,scsiblock=<1|0>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,ssd=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>] [,wwn=<wwn>]` ::
370 Use volume as SCSI hard disk or CD-ROM (n is 0 to 30). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
372 `--scsihw` `<lsi | lsi53c810 | megasas | pvscsi | virtio-scsi-pci | virtio-scsi-single>` ('default =' `lsi`)::
374 SCSI controller model
376 `--searchdomain` `<string>` ::
378 cloud-init: Sets DNS search domains for a container. Create will automatically use the setting from the host if neither searchdomain nor nameserver are set.
380 `--serial[n]` `(/dev/.+|socket)` ::
382 Create a serial device inside the VM (n is 0 to 3)
384 `--shares` `<integer> (0 - 50000)` ('default =' `1000`)::
386 Amount of memory shares for auto-ballooning. The larger the number is, the more memory this VM gets. Number is relative to weights of all other running VMs. Using zero disables auto-ballooning. Auto-ballooning is done by pvestatd.
388 `--smbios1` `[base64=<1|0>] [,family=<Base64 encoded string>] [,manufacturer=<Base64 encoded string>] [,product=<Base64 encoded string>] [,serial=<Base64 encoded string>] [,sku=<Base64 encoded string>] [,uuid=<UUID>] [,version=<Base64 encoded string>]` ::
390 Specify SMBIOS type 1 fields.
392 `--smp` `<integer> (1 - N)` ('default =' `1`)::
394 The number of CPUs. Please use option -sockets instead.
396 `--sockets` `<integer> (1 - N)` ('default =' `1`)::
398 The number of CPU sockets.
400 `--spice_enhancements` `[foldersharing=<1|0>] [,videostreaming=<off|all|filter>]` ::
402 Configure additional enhancements for SPICE.
404 `--sshkeys` `<filepath>` ::
406 cloud-init: Setup public SSH keys (one key per line, OpenSSH format).
408 `--start` `<boolean>` ('default =' `0`)::
410 Start VM after it was created successfully.
412 `--startdate` `(now | YYYY-MM-DD | YYYY-MM-DDTHH:MM:SS)` ('default =' `now`)::
414 Set the initial date of the real time clock. Valid format for date are:'now' or '2006-06-17T16:01:21' or '2006-06-17'.
416 `--startup` `[[order=]\d+] [,up=\d+] [,down=\d+] ` ::
418 Startup and shutdown behavior. Order is a non-negative number defining the general startup order. Shutdown in done with reverse ordering. Additionally you can set the 'up' or 'down' delay in seconds, which specifies a delay to wait before the next VM is started or stopped.
420 `--storage` `<string>` ::
424 `--tablet` `<boolean>` ('default =' `1`)::
426 Enable/disable the USB tablet device.
428 `--tags` `<string>` ::
430 Tags of the VM. This is only meta information.
432 `--tdf` `<boolean>` ('default =' `0`)::
434 Enable/disable time drift fix.
436 `--template` `<boolean>` ('default =' `0`)::
438 Enable/disable Template.
440 `--tpmstate0` `[file=]<volume> [,import-from=<source volume>] [,size=<DiskSize>] [,version=<v1.2|v2.0>]` ::
442 Configure a Disk for storing TPM state. The format is fixed to 'raw'. Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Note that SIZE_IN_GiB is ignored here and 4 MiB will be used instead. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
444 `--unique` `<boolean>` ::
446 Assign a unique random ethernet address.
448 NOTE: Requires option(s): `archive`
450 `--unused[n]` `[file=]<volume>` ::
452 Reference to unused volumes. This is used internally, and should not be modified manually.
454 `--usb[n]` `[[host=]<HOSTUSBDEVICE|spice>] [,mapping=<mapping-id>] [,usb3=<1|0>]` ::
456 Configure an USB device (n is 0 to 4, for machine version >= 7.1 and ostype l26 or windows > 7, n can be up to 14).
458 `--vcpus` `<integer> (1 - N)` ('default =' `0`)::
460 Number of hotplugged vcpus.
462 `--vga` `[[type=]<enum>] [,clipboard=<vnc>] [,memory=<integer>]` ::
464 Configure the VGA hardware.
466 `--virtio[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,iothread=<1|0>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,ro=<1|0>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>]` ::
468 Use volume as VIRTIO hard disk (n is 0 to 15). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
470 `--vmgenid` `<UUID>` ('default =' `1 (autogenerated)`)::
472 Set VM Generation ID. Use '1' to autogenerate on create or update, pass '0' to disable explicitly.
474 `--vmstatestorage` `<string>` ::
476 Default storage for VM state volumes/files.
478 `--watchdog` `[[model=]<i6300esb|ib700>] [,action=<enum>]` ::
480 Create a virtual hardware watchdog device.
482 *qm delsnapshot* `<vmid> <snapname>` `[OPTIONS]`
484 Delete a VM snapshot.
486 `<vmid>`: `<integer> (100 - 999999999)` ::
488 The (unique) ID of the VM.
490 `<snapname>`: `<string>` ::
492 The name of the snapshot.
494 `--force` `<boolean>` ::
496 For removal from config file, even if removing disk snapshots fails.
498 *qm destroy* `<vmid>` `[OPTIONS]`
500 Destroy the VM and all used/owned volumes. Removes any VM specific
501 permissions and firewall rules
503 `<vmid>`: `<integer> (100 - 999999999)` ::
505 The (unique) ID of the VM.
507 `--destroy-unreferenced-disks` `<boolean>` ('default =' `0`)::
509 If set, destroy additionally all disks not referenced in the config but with a matching VMID from all enabled storages.
511 `--purge` `<boolean>` ::
513 Remove VMID from configurations, like backup & replication jobs and HA.
515 `--skiplock` `<boolean>` ::
517 Ignore locks - only root is allowed to use this option.
519 *qm disk import* `<vmid> <source> <storage>` `[OPTIONS]`
521 Import an external disk image as an unused disk in a VM. The
522 image format has to be supported by qemu-img(1).
524 `<vmid>`: `<integer> (100 - 999999999)` ::
526 The (unique) ID of the VM.
528 `<source>`: `<string>` ::
530 Path to the disk image to import
532 `<storage>`: `<string>` ::
536 `--format` `<qcow2 | raw | vmdk>` ::
540 *qm disk move* `<vmid> <disk> [<storage>]` `[OPTIONS]`
542 Move volume to different storage or to a different VM.
544 `<vmid>`: `<integer> (100 - 999999999)` ::
546 The (unique) ID of the VM.
548 `<disk>`: `<efidisk0 | ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 | sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 | scsi13 | scsi14 | scsi15 | scsi16 | scsi17 | scsi18 | scsi19 | scsi2 | scsi20 | scsi21 | scsi22 | scsi23 | scsi24 | scsi25 | scsi26 | scsi27 | scsi28 | scsi29 | scsi3 | scsi30 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8 | scsi9 | tpmstate0 | unused0 | unused1 | unused10 | unused100 | unused101 | unused102 | unused103 | unused104 | unused105 | unused106 | unused107 | unused108 | unused109 | unused11 | unused110 | unused111 | unused112 | unused113 | unused114 | unused115 | unused116 | unused117 | unused118 | unused119 | unused12 | unused120 | unused121 | unused122 | unused123 | unused124 | unused125 | unused126 | unused127 | unused128 | unused129 | unused13 | unused130 | unused131 | unused132 | unused133 | unused134 | unused135 | unused136 | unused137 | unused138 | unused139 | unused14 | unused140 | unused141 | unused142 | unused143 | unused144 | unused145 | unused146 | unused147 | unused148 | unused149 | unused15 | unused150 | unused151 | unused152 | unused153 | unused154 | unused155 | unused156 | unused157 | unused158 | unused159 | unused16 | unused160 | unused161 | unused162 | unused163 | unused164 | unused165 | unused166 | unused167 | unused168 | unused169 | unused17 | unused170 | unused171 | unused172 | unused173 | unused174 | unused175 | unused176 | unused177 | unused178 | unused179 | unused18 | unused180 | unused181 | unused182 | unused183 | unused184 | unused185 | unused186 | unused187 | unused188 | unused189 | unused19 | unused190 | unused191 | unused192 | unused193 | unused194 | unused195 | unused196 | unused197 | unused198 | unused199 | unused2 | unused20 | unused200 | unused201 | unused202 | unused203 | unused204 | unused205 | unused206 | unused207 | unused208 | unused209 | unused21 | unused210 | unused211 | unused212 | unused213 | unused214 | unused215 | unused216 | unused217 | unused218 | unused219 | unused22 | unused220 | unused221 | unused222 | unused223 | unused224 | unused225 | unused226 | unused227 | unused228 | unused229 | unused23 | unused230 | unused231 | unused232 | unused233 | unused234 | unused235 | unused236 | unused237 | unused238 | unused239 | unused24 | unused240 | unused241 | unused242 | unused243 | unused244 | unused245 | unused246 | unused247 | unused248 | unused249 | unused25 | unused250 | unused251 | unused252 | unused253 | unused254 | unused255 | unused26 | unused27 | unused28 | unused29 | unused3 | unused30 | unused31 | unused32 | unused33 | unused34 | unused35 | unused36 | unused37 | unused38 | unused39 | unused4 | unused40 | unused41 | unused42 | unused43 | unused44 | unused45 | unused46 | unused47 | unused48 | unused49 | unused5 | unused50 | unused51 | unused52 | unused53 | unused54 | unused55 | unused56 | unused57 | unused58 | unused59 | unused6 | unused60 | unused61 | unused62 | unused63 | unused64 | unused65 | unused66 | unused67 | unused68 | unused69 | unused7 | unused70 | unused71 | unused72 | unused73 | unused74 | unused75 | unused76 | unused77 | unused78 | unused79 | unused8 | unused80 | unused81 | unused82 | unused83 | unused84 | unused85 | unused86 | unused87 | unused88 | unused89 | unused9 | unused90 | unused91 | unused92 | unused93 | unused94 | unused95 | unused96 | unused97 | unused98 | unused99 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 | virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 | virtio5 | virtio6 | virtio7 | virtio8 | virtio9>` ::
550 The disk you want to move.
552 `<storage>`: `<string>` ::
556 `--bwlimit` `<integer> (0 - N)` ('default =' `move limit from datacenter or storage config`)::
558 Override I/O bandwidth limit (in KiB/s).
560 `--delete` `<boolean>` ('default =' `0`)::
562 Delete the original disk after successful copy. By default the original disk is kept as unused disk.
564 `--digest` `<string>` ::
566 Prevent changes if current configuration file has different SHA1"
567 ." digest. This can be used to prevent concurrent modifications.
569 `--format` `<qcow2 | raw | vmdk>` ::
573 `--target-digest` `<string>` ::
575 Prevent changes if the current config file of the target VM has a"
576 ." different SHA1 digest. This can be used to detect concurrent modifications.
578 `--target-disk` `<efidisk0 | ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 | sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 | scsi13 | scsi14 | scsi15 | scsi16 | scsi17 | scsi18 | scsi19 | scsi2 | scsi20 | scsi21 | scsi22 | scsi23 | scsi24 | scsi25 | scsi26 | scsi27 | scsi28 | scsi29 | scsi3 | scsi30 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8 | scsi9 | tpmstate0 | unused0 | unused1 | unused10 | unused100 | unused101 | unused102 | unused103 | unused104 | unused105 | unused106 | unused107 | unused108 | unused109 | unused11 | unused110 | unused111 | unused112 | unused113 | unused114 | unused115 | unused116 | unused117 | unused118 | unused119 | unused12 | unused120 | unused121 | unused122 | unused123 | unused124 | unused125 | unused126 | unused127 | unused128 | unused129 | unused13 | unused130 | unused131 | unused132 | unused133 | unused134 | unused135 | unused136 | unused137 | unused138 | unused139 | unused14 | unused140 | unused141 | unused142 | unused143 | unused144 | unused145 | unused146 | unused147 | unused148 | unused149 | unused15 | unused150 | unused151 | unused152 | unused153 | unused154 | unused155 | unused156 | unused157 | unused158 | unused159 | unused16 | unused160 | unused161 | unused162 | unused163 | unused164 | unused165 | unused166 | unused167 | unused168 | unused169 | unused17 | unused170 | unused171 | unused172 | unused173 | unused174 | unused175 | unused176 | unused177 | unused178 | unused179 | unused18 | unused180 | unused181 | unused182 | unused183 | unused184 | unused185 | unused186 | unused187 | unused188 | unused189 | unused19 | unused190 | unused191 | unused192 | unused193 | unused194 | unused195 | unused196 | unused197 | unused198 | unused199 | unused2 | unused20 | unused200 | unused201 | unused202 | unused203 | unused204 | unused205 | unused206 | unused207 | unused208 | unused209 | unused21 | unused210 | unused211 | unused212 | unused213 | unused214 | unused215 | unused216 | unused217 | unused218 | unused219 | unused22 | unused220 | unused221 | unused222 | unused223 | unused224 | unused225 | unused226 | unused227 | unused228 | unused229 | unused23 | unused230 | unused231 | unused232 | unused233 | unused234 | unused235 | unused236 | unused237 | unused238 | unused239 | unused24 | unused240 | unused241 | unused242 | unused243 | unused244 | unused245 | unused246 | unused247 | unused248 | unused249 | unused25 | unused250 | unused251 | unused252 | unused253 | unused254 | unused255 | unused26 | unused27 | unused28 | unused29 | unused3 | unused30 | unused31 | unused32 | unused33 | unused34 | unused35 | unused36 | unused37 | unused38 | unused39 | unused4 | unused40 | unused41 | unused42 | unused43 | unused44 | unused45 | unused46 | unused47 | unused48 | unused49 | unused5 | unused50 | unused51 | unused52 | unused53 | unused54 | unused55 | unused56 | unused57 | unused58 | unused59 | unused6 | unused60 | unused61 | unused62 | unused63 | unused64 | unused65 | unused66 | unused67 | unused68 | unused69 | unused7 | unused70 | unused71 | unused72 | unused73 | unused74 | unused75 | unused76 | unused77 | unused78 | unused79 | unused8 | unused80 | unused81 | unused82 | unused83 | unused84 | unused85 | unused86 | unused87 | unused88 | unused89 | unused9 | unused90 | unused91 | unused92 | unused93 | unused94 | unused95 | unused96 | unused97 | unused98 | unused99 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 | virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 | virtio5 | virtio6 | virtio7 | virtio8 | virtio9>` ::
580 The config key the disk will be moved to on the target VM (for example, ide0 or scsi1). Default is the source disk key.
582 `--target-vmid` `<integer> (100 - 999999999)` ::
584 The (unique) ID of the VM.
586 *qm disk rescan* `[OPTIONS]`
588 Rescan all storages and update disk sizes and unused disk images.
590 `--dryrun` `<boolean>` ('default =' `0`)::
592 Do not actually write changes out to VM config(s).
594 `--vmid` `<integer> (100 - 999999999)` ::
596 The (unique) ID of the VM.
598 *qm disk resize* `<vmid> <disk> <size>` `[OPTIONS]`
602 `<vmid>`: `<integer> (100 - 999999999)` ::
604 The (unique) ID of the VM.
606 `<disk>`: `<efidisk0 | ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 | sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 | scsi13 | scsi14 | scsi15 | scsi16 | scsi17 | scsi18 | scsi19 | scsi2 | scsi20 | scsi21 | scsi22 | scsi23 | scsi24 | scsi25 | scsi26 | scsi27 | scsi28 | scsi29 | scsi3 | scsi30 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8 | scsi9 | tpmstate0 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 | virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 | virtio5 | virtio6 | virtio7 | virtio8 | virtio9>` ::
608 The disk you want to resize.
610 `<size>`: `\+?\d+(\.\d+)?[KMGT]?` ::
612 The new size. With the `+` sign the value is added to the actual size of the volume and without it, the value is taken as an absolute one. Shrinking disk size is not supported.
614 `--digest` `<string>` ::
616 Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.
618 `--skiplock` `<boolean>` ::
620 Ignore locks - only root is allowed to use this option.
622 *qm disk unlink* `<vmid> --idlist <string>` `[OPTIONS]`
624 Unlink/delete disk images.
626 `<vmid>`: `<integer> (100 - 999999999)` ::
628 The (unique) ID of the VM.
630 `--force` `<boolean>` ::
632 Force physical removal. Without this, we simple remove the disk from the config file and create an additional configuration entry called 'unused[n]', which contains the volume ID. Unlink of unused[n] always cause physical removal.
634 `--idlist` `<string>` ::
636 A list of disk IDs you want to delete.
638 *qm guest cmd* `<vmid> <command>`
640 Execute QEMU Guest Agent commands.
642 `<vmid>`: `<integer> (100 - 999999999)` ::
644 The (unique) ID of the VM.
646 `<command>`: `<fsfreeze-freeze | fsfreeze-status | fsfreeze-thaw | fstrim | get-fsinfo | get-host-name | get-memory-block-info | get-memory-blocks | get-osinfo | get-time | get-timezone | get-users | get-vcpus | info | network-get-interfaces | ping | shutdown | suspend-disk | suspend-hybrid | suspend-ram>` ::
650 *qm guest exec* `<vmid> [<extra-args>]` `[OPTIONS]`
652 Executes the given command via the guest agent
654 `<vmid>`: `<integer> (100 - 999999999)` ::
656 The (unique) ID of the VM.
658 `<extra-args>`: `<array>` ::
660 Extra arguments as array
662 `--pass-stdin` `<boolean>` ('default =' `0`)::
664 When set, read STDIN until EOF and forward to guest agent via 'input-data' (usually treated as STDIN to process launched by guest agent). Allows maximal 1 MiB.
666 `--synchronous` `<boolean>` ('default =' `1`)::
668 If set to off, returns the pid immediately instead of waiting for the commmand to finish or the timeout.
670 `--timeout` `<integer> (0 - N)` ('default =' `30`)::
672 The maximum time to wait synchronously for the command to finish. If reached, the pid gets returned. Set to 0 to deactivate
674 *qm guest exec-status* `<vmid> <pid>`
676 Gets the status of the given pid started by the guest-agent
678 `<vmid>`: `<integer> (100 - 999999999)` ::
680 The (unique) ID of the VM.
682 `<pid>`: `<integer>` ::
686 *qm guest passwd* `<vmid> <username>` `[OPTIONS]`
688 Sets the password for the given user to the given password
690 `<vmid>`: `<integer> (100 - 999999999)` ::
692 The (unique) ID of the VM.
694 `<username>`: `<string>` ::
696 The user to set the password for.
698 `--crypted` `<boolean>` ('default =' `0`)::
700 set to 1 if the password has already been passed through crypt()
702 *qm help* `[OPTIONS]`
704 Get help about specified command.
706 `--extra-args` `<array>` ::
708 Shows help for a specific command
710 `--verbose` `<boolean>` ::
712 Verbose output format.
716 An alias for 'qm disk import'.
718 *qm importovf* `<vmid> <manifest> <storage>` `[OPTIONS]`
720 Create a new VM using parameters read from an OVF manifest
722 `<vmid>`: `<integer> (100 - 999999999)` ::
724 The (unique) ID of the VM.
726 `<manifest>`: `<string>` ::
730 `<storage>`: `<string>` ::
734 `--dryrun` `<boolean>` ::
736 Print a parsed representation of the extracted OVF parameters, but do not create a VM
738 `--format` `<qcow2 | raw | vmdk>` ::
742 *qm list* `[OPTIONS]`
744 Virtual machine index (per node).
746 `--full` `<boolean>` ::
748 Determine the full status of active VMs.
750 *qm listsnapshot* `<vmid>`
754 `<vmid>`: `<integer> (100 - 999999999)` ::
756 The (unique) ID of the VM.
758 *qm migrate* `<vmid> <target>` `[OPTIONS]`
760 Migrate virtual machine. Creates a new migration task.
762 `<vmid>`: `<integer> (100 - 999999999)` ::
764 The (unique) ID of the VM.
766 `<target>`: `<string>` ::
770 `--bwlimit` `<integer> (0 - N)` ('default =' `migrate limit from datacenter or storage config`)::
772 Override I/O bandwidth limit (in KiB/s).
774 `--force` `<boolean>` ::
776 Allow to migrate VMs which use local devices. Only root may use this option.
778 `--migration_network` `<string>` ::
780 CIDR of the (sub) network that is used for migration.
782 `--migration_type` `<insecure | secure>` ::
784 Migration traffic is encrypted using an SSH tunnel by default. On secure, completely private networks this can be disabled to increase performance.
786 `--online` `<boolean>` ::
788 Use online/live migration if VM is running. Ignored if VM is stopped.
790 `--targetstorage` `<string>` ::
792 Mapping from source to target storages. Providing only a single storage ID maps all source storages to that storage. Providing the special value '1' will map each source storage to itself.
794 `--with-local-disks` `<boolean>` ::
796 Enable live storage migration for local disk
798 *qm monitor* `<vmid>`
800 Enter QEMU Monitor interface.
802 `<vmid>`: `<integer> (100 - 999999999)` ::
804 The (unique) ID of the VM.
808 An alias for 'qm disk move'.
812 An alias for 'qm disk move'.
816 Used by qmigrate - do not use manually.
818 *qm nbdstop* `<vmid>`
820 Stop embedded nbd server.
822 `<vmid>`: `<integer> (100 - 999999999)` ::
824 The (unique) ID of the VM.
826 *qm pending* `<vmid>`
828 Get the virtual machine configuration with both current and pending values.
830 `<vmid>`: `<integer> (100 - 999999999)` ::
832 The (unique) ID of the VM.
834 *qm reboot* `<vmid>` `[OPTIONS]`
836 Reboot the VM by shutting it down, and starting it again. Applies pending
839 `<vmid>`: `<integer> (100 - 999999999)` ::
841 The (unique) ID of the VM.
843 `--timeout` `<integer> (0 - N)` ::
845 Wait maximal timeout seconds for the shutdown.
847 *qm remote-migrate* `<vmid> [<target-vmid>] <target-endpoint> --target-bridge <string> --target-storage <string>` `[OPTIONS]`
849 Migrate virtual machine to a remote cluster. Creates a new migration task.
850 EXPERIMENTAL feature!
852 `<vmid>`: `<integer> (100 - 999999999)` ::
854 The (unique) ID of the VM.
856 `<target-vmid>`: `<integer> (100 - 999999999)` ::
858 The (unique) ID of the VM.
860 `<target-endpoint>`: `apitoken=<A full Proxmox API token including the secret value.> ,host=<Remote Proxmox hostname or IP> [,fingerprint=<Remote host's certificate fingerprint, if not trusted by system store.>] [,port=<integer>]` ::
862 Remote target endpoint
864 `--bwlimit` `<integer> (0 - N)` ('default =' `migrate limit from datacenter or storage config`)::
866 Override I/O bandwidth limit (in KiB/s).
868 `--delete` `<boolean>` ('default =' `0`)::
870 Delete the original VM and related data after successful migration. By default the original VM is kept on the source cluster in a stopped state.
872 `--online` `<boolean>` ::
874 Use online/live migration if VM is running. Ignored if VM is stopped.
876 `--target-bridge` `<string>` ::
878 Mapping from source to target bridges. Providing only a single bridge ID maps all source bridges to that bridge. Providing the special value '1' will map each source bridge to itself.
880 `--target-storage` `<string>` ::
882 Mapping from source to target storages. Providing only a single storage ID maps all source storages to that storage. Providing the special value '1' will map each source storage to itself.
886 An alias for 'qm disk rescan'.
888 *qm reset* `<vmid>` `[OPTIONS]`
890 Reset virtual machine.
892 `<vmid>`: `<integer> (100 - 999999999)` ::
894 The (unique) ID of the VM.
896 `--skiplock` `<boolean>` ::
898 Ignore locks - only root is allowed to use this option.
902 An alias for 'qm disk resize'.
904 *qm resume* `<vmid>` `[OPTIONS]`
906 Resume virtual machine.
908 `<vmid>`: `<integer> (100 - 999999999)` ::
910 The (unique) ID of the VM.
912 `--nocheck` `<boolean>` ::
914 no description available
916 `--skiplock` `<boolean>` ::
918 Ignore locks - only root is allowed to use this option.
920 *qm rollback* `<vmid> <snapname>` `[OPTIONS]`
922 Rollback VM state to specified snapshot.
924 `<vmid>`: `<integer> (100 - 999999999)` ::
926 The (unique) ID of the VM.
928 `<snapname>`: `<string>` ::
930 The name of the snapshot.
932 `--start` `<boolean>` ('default =' `0`)::
934 Whether the VM should get started after rolling back successfully. (Note: VMs will be automatically started if the snapshot includes RAM.)
936 *qm sendkey* `<vmid> <key>` `[OPTIONS]`
938 Send key event to virtual machine.
940 `<vmid>`: `<integer> (100 - 999999999)` ::
942 The (unique) ID of the VM.
944 `<key>`: `<string>` ::
946 The key (qemu monitor encoding).
948 `--skiplock` `<boolean>` ::
950 Ignore locks - only root is allowed to use this option.
952 *qm set* `<vmid>` `[OPTIONS]`
954 Set virtual machine options (synchrounous API) - You should consider using
955 the POST method instead for any actions involving hotplug or storage
958 `<vmid>`: `<integer> (100 - 999999999)` ::
960 The (unique) ID of the VM.
962 `--acpi` `<boolean>` ('default =' `1`)::
966 `--affinity` `<string>` ::
968 List of host cores used to execute guest processes, for example: 0,5,8-11
970 `--agent` `[enabled=]<1|0> [,freeze-fs-on-backup=<1|0>] [,fstrim_cloned_disks=<1|0>] [,type=<virtio|isa>]` ::
972 Enable/disable communication with the QEMU Guest Agent and its properties.
974 `--arch` `<aarch64 | x86_64>` ::
976 Virtual processor architecture. Defaults to the host.
978 `--args` `<string>` ::
980 Arbitrary arguments passed to kvm.
982 `--audio0` `device=<ich9-intel-hda|intel-hda|AC97> [,driver=<spice|none>]` ::
984 Configure a audio device, useful in combination with QXL/Spice.
986 `--autostart` `<boolean>` ('default =' `0`)::
988 Automatic restart after crash (currently ignored).
990 `--balloon` `<integer> (0 - N)` ::
992 Amount of target RAM for the VM in MiB. Using zero disables the ballon driver.
994 `--bios` `<ovmf | seabios>` ('default =' `seabios`)::
996 Select BIOS implementation.
998 `--boot` `[[legacy=]<[acdn]{1,4}>] [,order=<device[;device...]>]` ::
1000 Specify guest boot order. Use the 'order=' sub-property as usage with no key or 'legacy=' is deprecated.
1002 `--bootdisk` `(ide|sata|scsi|virtio)\d+` ::
1004 Enable booting from specified disk. Deprecated: Use 'boot: order=foo;bar' instead.
1006 `--cdrom` `<volume>` ::
1008 This is an alias for option -ide2
1010 `--cicustom` `[meta=<volume>] [,network=<volume>] [,user=<volume>] [,vendor=<volume>]` ::
1012 cloud-init: Specify custom files to replace the automatically generated ones at start.
1014 `--cipassword` `<password>` ::
1016 cloud-init: Password to assign the user. Using this is generally not recommended. Use ssh keys instead. Also note that older cloud-init versions do not support hashed passwords.
1018 `--citype` `<configdrive2 | nocloud | opennebula>` ::
1020 Specifies the cloud-init configuration format. The default depends on the configured operating system type (`ostype`. We use the `nocloud` format for Linux, and `configdrive2` for windows.
1022 `--ciupgrade` `<boolean>` ('default =' `1`)::
1024 cloud-init: do an automatic package upgrade after the first boot.
1026 `--ciuser` `<string>` ::
1028 cloud-init: User name to change ssh keys and password for instead of the image's configured default user.
1030 `--cores` `<integer> (1 - N)` ('default =' `1`)::
1032 The number of cores per socket.
1034 `--cpu` `[[cputype=]<string>] [,flags=<+FLAG[;-FLAG...]>] [,hidden=<1|0>] [,hv-vendor-id=<vendor-id>] [,phys-bits=<8-64|host>] [,reported-model=<enum>]` ::
1038 `--cpulimit` `<number> (0 - 128)` ('default =' `0`)::
1042 `--cpuunits` `<integer> (1 - 262144)` ('default =' `cgroup v1: 1024, cgroup v2: 100`)::
1044 CPU weight for a VM, will be clamped to [1, 10000] in cgroup v2.
1046 `--delete` `<string>` ::
1048 A list of settings you want to delete.
1050 `--description` `<string>` ::
1052 Description for the VM. Shown in the web-interface VM's summary. This is saved as comment inside the configuration file.
1054 `--digest` `<string>` ::
1056 Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.
1058 `--efidisk0` `[file=]<volume> [,efitype=<2m|4m>] [,format=<enum>] [,import-from=<source volume>] [,pre-enrolled-keys=<1|0>] [,size=<DiskSize>]` ::
1060 Configure a disk for storing EFI vars. Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Note that SIZE_IN_GiB is ignored here and that the default EFI vars are copied to the volume instead. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
1062 `--force` `<boolean>` ::
1064 Force physical removal. Without this, we simple remove the disk from the config file and create an additional configuration entry called 'unused[n]', which contains the volume ID. Unlink of unused[n] always cause physical removal.
1066 NOTE: Requires option(s): `delete`
1068 `--freeze` `<boolean>` ::
1070 Freeze CPU at startup (use 'c' monitor command to start execution).
1072 `--hookscript` `<string>` ::
1074 Script that will be executed during various steps in the vms lifetime.
1076 `--hostpci[n]` `[[host=]<HOSTPCIID[;HOSTPCIID2...]>] [,device-id=<hex id>] [,legacy-igd=<1|0>] [,mapping=<mapping-id>] [,mdev=<string>] [,pcie=<1|0>] [,rombar=<1|0>] [,romfile=<string>] [,sub-device-id=<hex id>] [,sub-vendor-id=<hex id>] [,vendor-id=<hex id>] [,x-vga=<1|0>]` ::
1078 Map host PCI devices into guest.
1080 `--hotplug` `<string>` ('default =' `network,disk,usb`)::
1082 Selectively enable hotplug features. This is a comma separated list of hotplug features: 'network', 'disk', 'cpu', 'memory', 'usb' and 'cloudinit'. Use '0' to disable hotplug completely. Using '1' as value is an alias for the default `network,disk,usb`. USB hotplugging is possible for guests with machine version >= 7.1 and ostype l26 or windows > 7.
1084 `--hugepages` `<1024 | 2 | any>` ::
1086 Enable/disable hugepages memory.
1088 `--ide[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,model=<model>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,ssd=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>] [,wwn=<wwn>]` ::
1090 Use volume as IDE hard disk or CD-ROM (n is 0 to 3). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
1092 `--ipconfig[n]` `[gw=<GatewayIPv4>] [,gw6=<GatewayIPv6>] [,ip=<IPv4Format/CIDR>] [,ip6=<IPv6Format/CIDR>]` ::
1094 cloud-init: Specify IP addresses and gateways for the corresponding interface.
1096 IP addresses use CIDR notation, gateways are optional but need an IP of the same type specified.
1098 The special string 'dhcp' can be used for IP addresses to use DHCP, in which case no explicit
1099 gateway should be provided.
1100 For IPv6 the special string 'auto' can be used to use stateless autoconfiguration. This requires
1101 cloud-init 19.4 or newer.
1103 If cloud-init is enabled and neither an IPv4 nor an IPv6 address is specified, it defaults to using
1106 `--ivshmem` `size=<integer> [,name=<string>]` ::
1108 Inter-VM shared memory. Useful for direct communication between VMs, or to the host.
1110 `--keephugepages` `<boolean>` ('default =' `0`)::
1112 Use together with hugepages. If enabled, hugepages will not not be deleted after VM shutdown and can be used for subsequent starts.
1114 `--keyboard` `<da | de | de-ch | en-gb | en-us | es | fi | fr | fr-be | fr-ca | fr-ch | hu | is | it | ja | lt | mk | nl | no | pl | pt | pt-br | sl | sv | tr>` ::
1116 Keyboard layout for VNC server. This option is generally not required and is often better handled from within the guest OS.
1118 `--kvm` `<boolean>` ('default =' `1`)::
1120 Enable/disable KVM hardware virtualization.
1122 `--localtime` `<boolean>` ::
1124 Set the real time clock (RTC) to local time. This is enabled by default if the `ostype` indicates a Microsoft Windows OS.
1126 `--lock` `<backup | clone | create | migrate | rollback | snapshot | snapshot-delete | suspended | suspending>` ::
1130 `--machine` `(pc|pc(-i440fx)?-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|q35|pc-q35-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|virt(?:-\d+(\.\d+)+)?(\+pve\d+)?)` ::
1132 Specifies the QEMU machine type.
1134 `--memory` `[current=]<integer>` ::
1138 `--migrate_downtime` `<number> (0 - N)` ('default =' `0.1`)::
1140 Set maximum tolerated downtime (in seconds) for migrations.
1142 `--migrate_speed` `<integer> (0 - N)` ('default =' `0`)::
1144 Set maximum speed (in MB/s) for migrations. Value 0 is no limit.
1146 `--name` `<string>` ::
1148 Set a name for the VM. Only used on the configuration web interface.
1150 `--nameserver` `<string>` ::
1152 cloud-init: Sets DNS server IP address for a container. Create will automatically use the setting from the host if neither searchdomain nor nameserver are set.
1154 `--net[n]` `[model=]<enum> [,bridge=<bridge>] [,firewall=<1|0>] [,link_down=<1|0>] [,macaddr=<XX:XX:XX:XX:XX:XX>] [,mtu=<integer>] [,queues=<integer>] [,rate=<number>] [,tag=<integer>] [,trunks=<vlanid[;vlanid...]>] [,<model>=<macaddr>]` ::
1156 Specify network devices.
1158 `--numa` `<boolean>` ('default =' `0`)::
1160 Enable/disable NUMA.
1162 `--numa[n]` `cpus=<id[-id];...> [,hostnodes=<id[-id];...>] [,memory=<number>] [,policy=<preferred|bind|interleave>]` ::
1166 `--onboot` `<boolean>` ('default =' `0`)::
1168 Specifies whether a VM will be started during system bootup.
1170 `--ostype` `<l24 | l26 | other | solaris | w2k | w2k3 | w2k8 | win10 | win11 | win7 | win8 | wvista | wxp>` ::
1172 Specify guest operating system.
1174 `--parallel[n]` `/dev/parport\d+|/dev/usb/lp\d+` ::
1176 Map host parallel devices (n is 0 to 2).
1178 `--protection` `<boolean>` ('default =' `0`)::
1180 Sets the protection flag of the VM. This will disable the remove VM and remove disk operations.
1182 `--reboot` `<boolean>` ('default =' `1`)::
1184 Allow reboot. If set to '0' the VM exit on reboot.
1186 `--revert` `<string>` ::
1188 Revert a pending change.
1190 `--rng0` `[source=]</dev/urandom|/dev/random|/dev/hwrng> [,max_bytes=<integer>] [,period=<integer>]` ::
1192 Configure a VirtIO-based Random Number Generator.
1194 `--sata[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,ssd=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>] [,wwn=<wwn>]` ::
1196 Use volume as SATA hard disk or CD-ROM (n is 0 to 5). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
1198 `--scsi[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,iothread=<1|0>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,queues=<integer>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,ro=<1|0>] [,scsiblock=<1|0>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,ssd=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>] [,wwn=<wwn>]` ::
1200 Use volume as SCSI hard disk or CD-ROM (n is 0 to 30). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
1202 `--scsihw` `<lsi | lsi53c810 | megasas | pvscsi | virtio-scsi-pci | virtio-scsi-single>` ('default =' `lsi`)::
1204 SCSI controller model
1206 `--searchdomain` `<string>` ::
1208 cloud-init: Sets DNS search domains for a container. Create will automatically use the setting from the host if neither searchdomain nor nameserver are set.
1210 `--serial[n]` `(/dev/.+|socket)` ::
1212 Create a serial device inside the VM (n is 0 to 3)
1214 `--shares` `<integer> (0 - 50000)` ('default =' `1000`)::
1216 Amount of memory shares for auto-ballooning. The larger the number is, the more memory this VM gets. Number is relative to weights of all other running VMs. Using zero disables auto-ballooning. Auto-ballooning is done by pvestatd.
1218 `--skiplock` `<boolean>` ::
1220 Ignore locks - only root is allowed to use this option.
1222 `--smbios1` `[base64=<1|0>] [,family=<Base64 encoded string>] [,manufacturer=<Base64 encoded string>] [,product=<Base64 encoded string>] [,serial=<Base64 encoded string>] [,sku=<Base64 encoded string>] [,uuid=<UUID>] [,version=<Base64 encoded string>]` ::
1224 Specify SMBIOS type 1 fields.
1226 `--smp` `<integer> (1 - N)` ('default =' `1`)::
1228 The number of CPUs. Please use option -sockets instead.
1230 `--sockets` `<integer> (1 - N)` ('default =' `1`)::
1232 The number of CPU sockets.
1234 `--spice_enhancements` `[foldersharing=<1|0>] [,videostreaming=<off|all|filter>]` ::
1236 Configure additional enhancements for SPICE.
1238 `--sshkeys` `<filepath>` ::
1240 cloud-init: Setup public SSH keys (one key per line, OpenSSH format).
1242 `--startdate` `(now | YYYY-MM-DD | YYYY-MM-DDTHH:MM:SS)` ('default =' `now`)::
1244 Set the initial date of the real time clock. Valid format for date are:'now' or '2006-06-17T16:01:21' or '2006-06-17'.
1246 `--startup` `[[order=]\d+] [,up=\d+] [,down=\d+] ` ::
1248 Startup and shutdown behavior. Order is a non-negative number defining the general startup order. Shutdown in done with reverse ordering. Additionally you can set the 'up' or 'down' delay in seconds, which specifies a delay to wait before the next VM is started or stopped.
1250 `--tablet` `<boolean>` ('default =' `1`)::
1252 Enable/disable the USB tablet device.
1254 `--tags` `<string>` ::
1256 Tags of the VM. This is only meta information.
1258 `--tdf` `<boolean>` ('default =' `0`)::
1260 Enable/disable time drift fix.
1262 `--template` `<boolean>` ('default =' `0`)::
1264 Enable/disable Template.
1266 `--tpmstate0` `[file=]<volume> [,import-from=<source volume>] [,size=<DiskSize>] [,version=<v1.2|v2.0>]` ::
1268 Configure a Disk for storing TPM state. The format is fixed to 'raw'. Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Note that SIZE_IN_GiB is ignored here and 4 MiB will be used instead. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
1270 `--unused[n]` `[file=]<volume>` ::
1272 Reference to unused volumes. This is used internally, and should not be modified manually.
1274 `--usb[n]` `[[host=]<HOSTUSBDEVICE|spice>] [,mapping=<mapping-id>] [,usb3=<1|0>]` ::
1276 Configure an USB device (n is 0 to 4, for machine version >= 7.1 and ostype l26 or windows > 7, n can be up to 14).
1278 `--vcpus` `<integer> (1 - N)` ('default =' `0`)::
1280 Number of hotplugged vcpus.
1282 `--vga` `[[type=]<enum>] [,clipboard=<vnc>] [,memory=<integer>]` ::
1284 Configure the VGA hardware.
1286 `--virtio[n]` `[file=]<volume> [,aio=<native|threads|io_uring>] [,backup=<1|0>] [,bps=<bps>] [,bps_max_length=<seconds>] [,bps_rd=<bps>] [,bps_rd_max_length=<seconds>] [,bps_wr=<bps>] [,bps_wr_max_length=<seconds>] [,cache=<enum>] [,cyls=<integer>] [,detect_zeroes=<1|0>] [,discard=<ignore|on>] [,format=<enum>] [,heads=<integer>] [,import-from=<source volume>] [,iops=<iops>] [,iops_max=<iops>] [,iops_max_length=<seconds>] [,iops_rd=<iops>] [,iops_rd_max=<iops>] [,iops_rd_max_length=<seconds>] [,iops_wr=<iops>] [,iops_wr_max=<iops>] [,iops_wr_max_length=<seconds>] [,iothread=<1|0>] [,mbps=<mbps>] [,mbps_max=<mbps>] [,mbps_rd=<mbps>] [,mbps_rd_max=<mbps>] [,mbps_wr=<mbps>] [,mbps_wr_max=<mbps>] [,media=<cdrom|disk>] [,replicate=<1|0>] [,rerror=<ignore|report|stop>] [,ro=<1|0>] [,secs=<integer>] [,serial=<serial>] [,shared=<1|0>] [,size=<DiskSize>] [,snapshot=<1|0>] [,trans=<none|lba|auto>] [,werror=<enum>]` ::
1288 Use volume as VIRTIO hard disk (n is 0 to 15). Use the special syntax STORAGE_ID:SIZE_IN_GiB to allocate a new volume. Use STORAGE_ID:0 and the 'import-from' parameter to import from an existing volume.
1290 `--vmgenid` `<UUID>` ('default =' `1 (autogenerated)`)::
1292 Set VM Generation ID. Use '1' to autogenerate on create or update, pass '0' to disable explicitly.
1294 `--vmstatestorage` `<string>` ::
1296 Default storage for VM state volumes/files.
1298 `--watchdog` `[[model=]<i6300esb|ib700>] [,action=<enum>]` ::
1300 Create a virtual hardware watchdog device.
1302 *qm showcmd* `<vmid>` `[OPTIONS]`
1304 Show command line which is used to start the VM (debug info).
1306 `<vmid>`: `<integer> (100 - 999999999)` ::
1308 The (unique) ID of the VM.
1310 `--pretty` `<boolean>` ('default =' `0`)::
1312 Puts each option on a new line to enhance human readability
1314 `--snapshot` `<string>` ::
1316 Fetch config values from given snapshot.
1318 *qm shutdown* `<vmid>` `[OPTIONS]`
1320 Shutdown virtual machine. This is similar to pressing the power button on a
1321 physical machine.This will send an ACPI event for the guest OS, which
1322 should then proceed to a clean shutdown.
1324 `<vmid>`: `<integer> (100 - 999999999)` ::
1326 The (unique) ID of the VM.
1328 `--forceStop` `<boolean>` ('default =' `0`)::
1330 Make sure the VM stops.
1332 `--keepActive` `<boolean>` ('default =' `0`)::
1334 Do not deactivate storage volumes.
1336 `--skiplock` `<boolean>` ::
1338 Ignore locks - only root is allowed to use this option.
1340 `--timeout` `<integer> (0 - N)` ::
1342 Wait maximal timeout seconds.
1344 *qm snapshot* `<vmid> <snapname>` `[OPTIONS]`
1348 `<vmid>`: `<integer> (100 - 999999999)` ::
1350 The (unique) ID of the VM.
1352 `<snapname>`: `<string>` ::
1354 The name of the snapshot.
1356 `--description` `<string>` ::
1358 A textual description or comment.
1360 `--vmstate` `<boolean>` ::
1364 *qm start* `<vmid>` `[OPTIONS]`
1366 Start virtual machine.
1368 `<vmid>`: `<integer> (100 - 999999999)` ::
1370 The (unique) ID of the VM.
1372 `--force-cpu` `<string>` ::
1374 Override QEMU's -cpu argument with the given string.
1376 `--machine` `(pc|pc(-i440fx)?-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|q35|pc-q35-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|virt(?:-\d+(\.\d+)+)?(\+pve\d+)?)` ::
1378 Specifies the QEMU machine type.
1380 `--migratedfrom` `<string>` ::
1382 The cluster node name.
1384 `--migration_network` `<string>` ::
1386 CIDR of the (sub) network that is used for migration.
1388 `--migration_type` `<insecure | secure>` ::
1390 Migration traffic is encrypted using an SSH tunnel by default. On secure, completely private networks this can be disabled to increase performance.
1392 `--skiplock` `<boolean>` ::
1394 Ignore locks - only root is allowed to use this option.
1396 `--stateuri` `<string>` ::
1398 Some command save/restore state from this location.
1400 `--targetstorage` `<string>` ::
1402 Mapping from source to target storages. Providing only a single storage ID maps all source storages to that storage. Providing the special value '1' will map each source storage to itself.
1404 `--timeout` `<integer> (0 - N)` ('default =' `max(30, vm memory in GiB)`)::
1406 Wait maximal timeout seconds.
1408 *qm status* `<vmid>` `[OPTIONS]`
1412 `<vmid>`: `<integer> (100 - 999999999)` ::
1414 The (unique) ID of the VM.
1416 `--verbose` `<boolean>` ::
1418 Verbose output format
1420 *qm stop* `<vmid>` `[OPTIONS]`
1422 Stop virtual machine. The qemu process will exit immediately. Thisis akin
1423 to pulling the power plug of a running computer and may damage the VM data
1425 `<vmid>`: `<integer> (100 - 999999999)` ::
1427 The (unique) ID of the VM.
1429 `--keepActive` `<boolean>` ('default =' `0`)::
1431 Do not deactivate storage volumes.
1433 `--migratedfrom` `<string>` ::
1435 The cluster node name.
1437 `--skiplock` `<boolean>` ::
1439 Ignore locks - only root is allowed to use this option.
1441 `--timeout` `<integer> (0 - N)` ::
1443 Wait maximal timeout seconds.
1445 *qm suspend* `<vmid>` `[OPTIONS]`
1447 Suspend virtual machine.
1449 `<vmid>`: `<integer> (100 - 999999999)` ::
1451 The (unique) ID of the VM.
1453 `--skiplock` `<boolean>` ::
1455 Ignore locks - only root is allowed to use this option.
1457 `--statestorage` `<string>` ::
1459 The storage for the VM state
1461 NOTE: Requires option(s): `todisk`
1463 `--todisk` `<boolean>` ('default =' `0`)::
1465 If set, suspends the VM to disk. Will be resumed on next VM start.
1467 *qm template* `<vmid>` `[OPTIONS]`
1471 `<vmid>`: `<integer> (100 - 999999999)` ::
1473 The (unique) ID of the VM.
1475 `--disk` `<efidisk0 | ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 | sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 | scsi13 | scsi14 | scsi15 | scsi16 | scsi17 | scsi18 | scsi19 | scsi2 | scsi20 | scsi21 | scsi22 | scsi23 | scsi24 | scsi25 | scsi26 | scsi27 | scsi28 | scsi29 | scsi3 | scsi30 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8 | scsi9 | tpmstate0 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 | virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 | virtio5 | virtio6 | virtio7 | virtio8 | virtio9>` ::
1477 If you want to convert only 1 disk to base image.
1479 *qm terminal* `<vmid>` `[OPTIONS]`
1481 Open a terminal using a serial device (The VM need to have a serial device
1482 configured, for example 'serial0: socket')
1484 `<vmid>`: `<integer> (100 - 999999999)` ::
1486 The (unique) ID of the VM.
1488 `--escape` `<string>` ('default =' `^O`)::
1492 `--iface` `<serial0 | serial1 | serial2 | serial3>` ::
1494 Select the serial device. By default we simply use the first suitable device.
1498 An alias for 'qm disk unlink'.
1500 *qm unlock* `<vmid>`
1504 `<vmid>`: `<integer> (100 - 999999999)` ::
1506 The (unique) ID of the VM.
1508 *qm vncproxy* `<vmid>`
1510 Proxy VM VNC traffic to stdin/stdout
1512 `<vmid>`: `<integer> (100 - 999999999)` ::
1514 The (unique) ID of the VM.
1516 *qm wait* `<vmid>` `[OPTIONS]`
1518 Wait until the VM is stopped.
1520 `<vmid>`: `<integer> (100 - 999999999)` ::
1522 The (unique) ID of the VM.
1524 `--timeout` `<integer> (1 - N)` ::
1526 Timeout in seconds. Default is to wait forever.