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> (1 - N)` ::
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> (1 - N)` ::
30 The (unique) ID of the VM.
32 `<newid>`: `<integer> (1 - N)` ::
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> (1 - N)` ::
78 The (unique) ID of the VM.
80 `<type>`: `<meta | network | user>` ::
84 *qm config* `<vmid>` `[OPTIONS]`
86 Get the virtual machine configuration with pending configuration changes
87 applied. Set the 'current' parameter to get the current configuration
90 `<vmid>`: `<integer> (1 - N)` ::
92 The (unique) ID of the VM.
94 `--current` `<boolean>` ('default =' `0`)::
96 Get current values (instead of pending values).
98 `--snapshot` `<string>` ::
100 Fetch config values from given snapshot.
102 *qm create* `<vmid>` `[OPTIONS]`
104 Create or restore a virtual machine.
106 `<vmid>`: `<integer> (1 - N)` ::
108 The (unique) ID of the VM.
110 `--acpi` `<boolean>` ('default =' `1`)::
114 `--agent` `[enabled=]<1|0> [,fstrim_cloned_disks=<1|0>] [,type=<virtio|isa>]` ::
116 Enable/disable communication with the Qemu Guest Agent and its properties.
118 `--arch` `<aarch64 | x86_64>` ::
120 Virtual processor architecture. Defaults to the host.
122 `--archive` `<string>` ::
124 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.
126 `--args` `<string>` ::
128 Arbitrary arguments passed to kvm.
130 `--audio0` `device=<ich9-intel-hda|intel-hda|AC97> [,driver=<spice|none>]` ::
132 Configure a audio device, useful in combination with QXL/Spice.
134 `--autostart` `<boolean>` ('default =' `0`)::
136 Automatic restart after crash (currently ignored).
138 `--balloon` `<integer> (0 - N)` ::
140 Amount of target RAM for the VM in MB. Using zero disables the ballon driver.
142 `--bios` `<ovmf | seabios>` ('default =' `seabios`)::
144 Select BIOS implementation.
146 `--boot` `[[legacy=]<[acdn]{1,4}>] [,order=<device[;device...]>]` ::
148 Specify guest boot order. Use the 'order=' sub-property as usage with no key or 'legacy=' is deprecated.
150 `--bootdisk` `(ide|sata|scsi|virtio)\d+` ::
152 Enable booting from specified disk. Deprecated: Use 'boot: order=foo;bar' instead.
154 `--bwlimit` `<integer> (0 - N)` ('default =' `restore limit from datacenter or storage config`)::
156 Override I/O bandwidth limit (in KiB/s).
158 `--cdrom` `<volume>` ::
160 This is an alias for option -ide2
162 `--cicustom` `[meta=<volume>] [,network=<volume>] [,user=<volume>] [,vendor=<volume>]` ::
164 cloud-init: Specify custom files to replace the automatically generated ones at start.
166 `--cipassword` `<password>` ::
168 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.
170 `--citype` `<configdrive2 | nocloud | opennebula>` ::
172 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.
174 `--ciuser` `<string>` ::
176 cloud-init: User name to change ssh keys and password for instead of the image's configured default user.
178 `--cores` `<integer> (1 - N)` ('default =' `1`)::
180 The number of cores per socket.
182 `--cpu` `[[cputype=]<string>] [,flags=<+FLAG[;-FLAG...]>] [,hidden=<1|0>] [,hv-vendor-id=<vendor-id>] [,phys-bits=<8-64|host>] [,reported-model=<enum>]` ::
186 `--cpulimit` `<number> (0 - 128)` ('default =' `0`)::
190 `--cpuunits` `<integer> (1 - 262144)` ('default =' `cgroup v1: 1024, cgroup v2: 100`)::
192 CPU weight for a VM, will be clamped to [1, 10000] in cgroup v2.
194 `--description` `<string>` ::
196 Description for the VM. Shown in the web-interface VM's summary. This is saved as comment inside the configuration file.
198 `--efidisk0` `[file=]<volume> [,efitype=<2m|4m>] [,format=<enum>] [,import-from=<source volume>] [,pre-enrolled-keys=<1|0>] [,size=<DiskSize>]` ::
200 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.
202 `--force` `<boolean>` ::
204 Allow to overwrite existing VM.
206 NOTE: Requires option(s): `archive`
208 `--freeze` `<boolean>` ::
210 Freeze CPU at startup (use 'c' monitor command to start execution).
212 `--hookscript` `<string>` ::
214 Script that will be executed during various steps in the vms lifetime.
216 `--hostpci[n]` `[host=]<HOSTPCIID[;HOSTPCIID2...]> [,device-id=<hex id>] [,legacy-igd=<1|0>] [,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>]` ::
218 Map host PCI devices into guest.
220 `--hotplug` `<string>` ('default =' `network,disk,usb`)::
222 Selectively enable hotplug features. This is a comma separated list of hotplug features: 'network', 'disk', 'cpu', 'memory' and 'usb'. Use '0' to disable hotplug completely. Using '1' as value is an alias for the default `network,disk,usb`.
224 `--hugepages` `<1024 | 2 | any>` ::
226 Enable/disable hugepages memory.
228 `--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>]` ::
230 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.
232 `--ipconfig[n]` `[gw=<GatewayIPv4>] [,gw6=<GatewayIPv6>] [,ip=<IPv4Format/CIDR>] [,ip6=<IPv6Format/CIDR>]` ::
234 cloud-init: Specify IP addresses and gateways for the corresponding interface.
236 IP addresses use CIDR notation, gateways are optional but need an IP of the same type specified.
238 The special string 'dhcp' can be used for IP addresses to use DHCP, in which case no explicit
239 gateway should be provided.
240 For IPv6 the special string 'auto' can be used to use stateless autoconfiguration. This requires
241 cloud-init 19.4 or newer.
243 If cloud-init is enabled and neither an IPv4 nor an IPv6 address is specified, it defaults to using
246 `--ivshmem` `size=<integer> [,name=<string>]` ::
248 Inter-VM shared memory. Useful for direct communication between VMs, or to the host.
250 `--keephugepages` `<boolean>` ('default =' `0`)::
252 Use together with hugepages. If enabled, hugepages will not not be deleted after VM shutdown and can be used for subsequent starts.
254 `--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>` ::
256 Keyboard layout for VNC server. This option is generally not required and is often better handled from within the guest OS.
258 `--kvm` `<boolean>` ('default =' `1`)::
260 Enable/disable KVM hardware virtualization.
262 `--live-restore` `<boolean>` ::
264 Start the VM immediately from the backup and restore in background. PBS only.
266 NOTE: Requires option(s): `archive`
268 `--localtime` `<boolean>` ::
270 Set the real time clock (RTC) to local time. This is enabled by default if the `ostype` indicates a Microsoft Windows OS.
272 `--lock` `<backup | clone | create | migrate | rollback | snapshot | snapshot-delete | suspended | suspending>` ::
276 `--machine` `(pc|pc(-i440fx)?-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|q35|pc-q35-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|virt(?:-\d+(\.\d+)+)?(\+pve\d+)?)` ::
278 Specifies the Qemu machine type.
280 `--memory` `<integer> (16 - N)` ('default =' `512`)::
282 Amount of RAM for the VM in MB. This is the maximum available memory when you use the balloon device.
284 `--migrate_downtime` `<number> (0 - N)` ('default =' `0.1`)::
286 Set maximum tolerated downtime (in seconds) for migrations.
288 `--migrate_speed` `<integer> (0 - N)` ('default =' `0`)::
290 Set maximum speed (in MB/s) for migrations. Value 0 is no limit.
292 `--name` `<string>` ::
294 Set a name for the VM. Only used on the configuration web interface.
296 `--nameserver` `<string>` ::
298 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.
300 `--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>]` ::
302 Specify network devices.
304 `--numa` `<boolean>` ('default =' `0`)::
308 `--numa[n]` `cpus=<id[-id];...> [,hostnodes=<id[-id];...>] [,memory=<number>] [,policy=<preferred|bind|interleave>]` ::
312 `--onboot` `<boolean>` ('default =' `0`)::
314 Specifies whether a VM will be started during system bootup.
316 `--ostype` `<l24 | l26 | other | solaris | w2k | w2k3 | w2k8 | win10 | win11 | win7 | win8 | wvista | wxp>` ::
318 Specify guest operating system.
320 `--parallel[n]` `/dev/parport\d+|/dev/usb/lp\d+` ::
322 Map host parallel devices (n is 0 to 2).
324 `--pool` `<string>` ::
326 Add the VM to the specified pool.
328 `--protection` `<boolean>` ('default =' `0`)::
330 Sets the protection flag of the VM. This will disable the remove VM and remove disk operations.
332 `--reboot` `<boolean>` ('default =' `1`)::
334 Allow reboot. If set to '0' the VM exit on reboot.
336 `--rng0` `[source=]</dev/urandom|/dev/random|/dev/hwrng> [,max_bytes=<integer>] [,period=<integer>]` ::
338 Configure a VirtIO-based Random Number Generator.
340 `--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>]` ::
342 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.
344 `--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>]` ::
346 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.
348 `--scsihw` `<lsi | lsi53c810 | megasas | pvscsi | virtio-scsi-pci | virtio-scsi-single>` ('default =' `lsi`)::
350 SCSI controller model
352 `--searchdomain` `<string>` ::
354 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.
356 `--serial[n]` `(/dev/.+|socket)` ::
358 Create a serial device inside the VM (n is 0 to 3)
360 `--shares` `<integer> (0 - 50000)` ('default =' `1000`)::
362 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.
364 `--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>]` ::
366 Specify SMBIOS type 1 fields.
368 `--smp` `<integer> (1 - N)` ('default =' `1`)::
370 The number of CPUs. Please use option -sockets instead.
372 `--sockets` `<integer> (1 - N)` ('default =' `1`)::
374 The number of CPU sockets.
376 `--spice_enhancements` `[foldersharing=<1|0>] [,videostreaming=<off|all|filter>]` ::
378 Configure additional enhancements for SPICE.
380 `--sshkeys` `<filepath>` ::
382 cloud-init: Setup public SSH keys (one key per line, OpenSSH format).
384 `--start` `<boolean>` ('default =' `0`)::
386 Start VM after it was created successfully.
388 `--startdate` `(now | YYYY-MM-DD | YYYY-MM-DDTHH:MM:SS)` ('default =' `now`)::
390 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'.
392 `--startup` `[[order=]\d+] [,up=\d+] [,down=\d+] ` ::
394 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.
396 `--storage` `<string>` ::
400 `--tablet` `<boolean>` ('default =' `1`)::
402 Enable/disable the USB tablet device.
404 `--tags` `<string>` ::
406 Tags of the VM. This is only meta information.
408 `--tdf` `<boolean>` ('default =' `0`)::
410 Enable/disable time drift fix.
412 `--template` `<boolean>` ('default =' `0`)::
414 Enable/disable Template.
416 `--tpmstate0` `[file=]<volume> [,import-from=<source volume>] [,size=<DiskSize>] [,version=<v1.2|v2.0>]` ::
418 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.
420 `--unique` `<boolean>` ::
422 Assign a unique random ethernet address.
424 NOTE: Requires option(s): `archive`
426 `--unused[n]` `[file=]<volume>` ::
428 Reference to unused volumes. This is used internally, and should not be modified manually.
430 `--usb[n]` `[host=]<HOSTUSBDEVICE|spice> [,usb3=<1|0>]` ::
432 Configure an USB device (n is 0 to 4).
434 `--vcpus` `<integer> (1 - N)` ('default =' `0`)::
436 Number of hotplugged vcpus.
438 `--vga` `[[type=]<enum>] [,memory=<integer>]` ::
440 Configure the VGA hardware.
442 `--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>]` ::
444 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.
446 `--vmgenid` `<UUID>` ('default =' `1 (autogenerated)`)::
448 Set VM Generation ID. Use '1' to autogenerate on create or update, pass '0' to disable explicitly.
450 `--vmstatestorage` `<string>` ::
452 Default storage for VM state volumes/files.
454 `--watchdog` `[[model=]<i6300esb|ib700>] [,action=<enum>]` ::
456 Create a virtual hardware watchdog device.
458 *qm delsnapshot* `<vmid> <snapname>` `[OPTIONS]`
460 Delete a VM snapshot.
462 `<vmid>`: `<integer> (1 - N)` ::
464 The (unique) ID of the VM.
466 `<snapname>`: `<string>` ::
468 The name of the snapshot.
470 `--force` `<boolean>` ::
472 For removal from config file, even if removing disk snapshots fails.
474 *qm destroy* `<vmid>` `[OPTIONS]`
476 Destroy the VM and all used/owned volumes. Removes any VM specific
477 permissions and firewall rules
479 `<vmid>`: `<integer> (1 - N)` ::
481 The (unique) ID of the VM.
483 `--destroy-unreferenced-disks` `<boolean>` ('default =' `0`)::
485 If set, destroy additionally all disks not referenced in the config but with a matching VMID from all enabled storages.
487 `--purge` `<boolean>` ::
489 Remove VMID from configurations, like backup & replication jobs and HA.
491 `--skiplock` `<boolean>` ::
493 Ignore locks - only root is allowed to use this option.
495 *qm guest cmd* `<vmid> <command>`
497 Execute Qemu Guest Agent commands.
499 `<vmid>`: `<integer> (1 - N)` ::
501 The (unique) ID of the VM.
503 `<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>` ::
507 *qm guest exec* `<vmid> [<extra-args>]` `[OPTIONS]`
509 Executes the given command via the guest agent
511 `<vmid>`: `<integer> (1 - N)` ::
513 The (unique) ID of the VM.
515 `<extra-args>`: `<array>` ::
517 Extra arguments as array
519 `--pass-stdin` `<boolean>` ('default =' `0`)::
521 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.
523 `--synchronous` `<boolean>` ('default =' `1`)::
525 If set to off, returns the pid immediately instead of waiting for the commmand to finish or the timeout.
527 `--timeout` `<integer> (0 - N)` ('default =' `30`)::
529 The maximum time to wait synchronously for the command to finish. If reached, the pid gets returned. Set to 0 to deactivate
531 *qm guest exec-status* `<vmid> <pid>`
533 Gets the status of the given pid started by the guest-agent
535 `<vmid>`: `<integer> (1 - N)` ::
537 The (unique) ID of the VM.
539 `<pid>`: `<integer>` ::
543 *qm guest passwd* `<vmid> <username>` `[OPTIONS]`
545 Sets the password for the given user to the given password
547 `<vmid>`: `<integer> (1 - N)` ::
549 The (unique) ID of the VM.
551 `<username>`: `<string>` ::
553 The user to set the password for.
555 `--crypted` `<boolean>` ('default =' `0`)::
557 set to 1 if the password has already been passed through crypt()
559 *qm help* `[OPTIONS]`
561 Get help about specified command.
563 `--extra-args` `<array>` ::
565 Shows help for a specific command
567 `--verbose` `<boolean>` ::
569 Verbose output format.
571 *qm importdisk* `<vmid> <source> <storage>` `[OPTIONS]`
573 Import an external disk image as an unused disk in a VM. The
574 image format has to be supported by qemu-img(1).
576 `<vmid>`: `<integer> (1 - N)` ::
578 The (unique) ID of the VM.
580 `<source>`: `<string>` ::
582 Path to the disk image to import
584 `<storage>`: `<string>` ::
588 `--format` `<qcow2 | raw | vmdk>` ::
592 *qm importovf* `<vmid> <manifest> <storage>` `[OPTIONS]`
594 Create a new VM using parameters read from an OVF manifest
596 `<vmid>`: `<integer> (1 - N)` ::
598 The (unique) ID of the VM.
600 `<manifest>`: `<string>` ::
604 `<storage>`: `<string>` ::
608 `--dryrun` `<boolean>` ::
610 Print a parsed representation of the extracted OVF parameters, but do not create a VM
612 `--format` `<qcow2 | raw | vmdk>` ::
616 *qm list* `[OPTIONS]`
618 Virtual machine index (per node).
620 `--full` `<boolean>` ::
622 Determine the full status of active VMs.
624 *qm listsnapshot* `<vmid>`
628 `<vmid>`: `<integer> (1 - N)` ::
630 The (unique) ID of the VM.
632 *qm migrate* `<vmid> <target>` `[OPTIONS]`
634 Migrate virtual machine. Creates a new migration task.
636 `<vmid>`: `<integer> (1 - N)` ::
638 The (unique) ID of the VM.
640 `<target>`: `<string>` ::
644 `--bwlimit` `<integer> (0 - N)` ('default =' `migrate limit from datacenter or storage config`)::
646 Override I/O bandwidth limit (in KiB/s).
648 `--force` `<boolean>` ::
650 Allow to migrate VMs which use local devices. Only root may use this option.
652 `--migration_network` `<string>` ::
654 CIDR of the (sub) network that is used for migration.
656 `--migration_type` `<insecure | secure>` ::
658 Migration traffic is encrypted using an SSH tunnel by default. On secure, completely private networks this can be disabled to increase performance.
660 `--online` `<boolean>` ::
662 Use online/live migration if VM is running. Ignored if VM is stopped.
664 `--targetstorage` `<string>` ::
666 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.
668 `--with-local-disks` `<boolean>` ::
670 Enable live storage migration for local disk
672 *qm monitor* `<vmid>`
674 Enter Qemu Monitor interface.
676 `<vmid>`: `<integer> (1 - N)` ::
678 The (unique) ID of the VM.
680 *qm move-disk* `<vmid> <disk> [<storage>]` `[OPTIONS]`
682 Move volume to different storage or to a different VM.
684 `<vmid>`: `<integer> (1 - N)` ::
686 The (unique) ID of the VM.
688 `<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>` ::
690 The disk you want to move.
692 `<storage>`: `<string>` ::
696 `--bwlimit` `<integer> (0 - N)` ('default =' `move limit from datacenter or storage config`)::
698 Override I/O bandwidth limit (in KiB/s).
700 `--delete` `<boolean>` ('default =' `0`)::
702 Delete the original disk after successful copy. By default the original disk is kept as unused disk.
704 `--digest` `<string>` ::
706 Prevent changes if current configuration file has different SHA1"
707 ." digest. This can be used to prevent concurrent modifications.
709 `--format` `<qcow2 | raw | vmdk>` ::
713 `--target-digest` `<string>` ::
715 Prevent changes if the current config file of the target VM has a"
716 ." different SHA1 digest. This can be used to detect concurrent modifications.
718 `--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>` ::
720 The config key the disk will be moved to on the target VM (for example, ide0 or scsi1). Default is the source disk key.
722 `--target-vmid` `<integer> (1 - N)` ::
724 The (unique) ID of the VM.
728 An alias for 'qm move-disk'.
732 Used by qmigrate - do not use manually.
734 *qm nbdstop* `<vmid>`
736 Stop embedded nbd server.
738 `<vmid>`: `<integer> (1 - N)` ::
740 The (unique) ID of the VM.
742 *qm pending* `<vmid>`
744 Get the virtual machine configuration with both current and pending values.
746 `<vmid>`: `<integer> (1 - N)` ::
748 The (unique) ID of the VM.
750 *qm reboot* `<vmid>` `[OPTIONS]`
752 Reboot the VM by shutting it down, and starting it again. Applies pending
755 `<vmid>`: `<integer> (1 - N)` ::
757 The (unique) ID of the VM.
759 `--timeout` `<integer> (0 - N)` ::
761 Wait maximal timeout seconds for the shutdown.
763 *qm rescan* `[OPTIONS]`
765 Rescan all storages and update disk sizes and unused disk images.
767 `--dryrun` `<boolean>` ('default =' `0`)::
769 Do not actually write changes out to VM config(s).
771 `--vmid` `<integer> (1 - N)` ::
773 The (unique) ID of the VM.
775 *qm reset* `<vmid>` `[OPTIONS]`
777 Reset virtual machine.
779 `<vmid>`: `<integer> (1 - N)` ::
781 The (unique) ID of the VM.
783 `--skiplock` `<boolean>` ::
785 Ignore locks - only root is allowed to use this option.
787 *qm resize* `<vmid> <disk> <size>` `[OPTIONS]`
791 `<vmid>`: `<integer> (1 - N)` ::
793 The (unique) ID of the VM.
795 `<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>` ::
797 The disk you want to resize.
799 `<size>`: `\+?\d+(\.\d+)?[KMGT]?` ::
801 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.
803 `--digest` `<string>` ::
805 Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.
807 `--skiplock` `<boolean>` ::
809 Ignore locks - only root is allowed to use this option.
811 *qm resume* `<vmid>` `[OPTIONS]`
813 Resume virtual machine.
815 `<vmid>`: `<integer> (1 - N)` ::
817 The (unique) ID of the VM.
819 `--nocheck` `<boolean>` ::
821 no description available
823 `--skiplock` `<boolean>` ::
825 Ignore locks - only root is allowed to use this option.
827 *qm rollback* `<vmid> <snapname>`
829 Rollback VM state to specified snapshot.
831 `<vmid>`: `<integer> (1 - N)` ::
833 The (unique) ID of the VM.
835 `<snapname>`: `<string>` ::
837 The name of the snapshot.
839 *qm sendkey* `<vmid> <key>` `[OPTIONS]`
841 Send key event to virtual machine.
843 `<vmid>`: `<integer> (1 - N)` ::
845 The (unique) ID of the VM.
847 `<key>`: `<string>` ::
849 The key (qemu monitor encoding).
851 `--skiplock` `<boolean>` ::
853 Ignore locks - only root is allowed to use this option.
855 *qm set* `<vmid>` `[OPTIONS]`
857 Set virtual machine options (synchrounous API) - You should consider using
858 the POST method instead for any actions involving hotplug or storage
861 `<vmid>`: `<integer> (1 - N)` ::
863 The (unique) ID of the VM.
865 `--acpi` `<boolean>` ('default =' `1`)::
869 `--agent` `[enabled=]<1|0> [,fstrim_cloned_disks=<1|0>] [,type=<virtio|isa>]` ::
871 Enable/disable communication with the Qemu Guest Agent and its properties.
873 `--arch` `<aarch64 | x86_64>` ::
875 Virtual processor architecture. Defaults to the host.
877 `--args` `<string>` ::
879 Arbitrary arguments passed to kvm.
881 `--audio0` `device=<ich9-intel-hda|intel-hda|AC97> [,driver=<spice|none>]` ::
883 Configure a audio device, useful in combination with QXL/Spice.
885 `--autostart` `<boolean>` ('default =' `0`)::
887 Automatic restart after crash (currently ignored).
889 `--balloon` `<integer> (0 - N)` ::
891 Amount of target RAM for the VM in MB. Using zero disables the ballon driver.
893 `--bios` `<ovmf | seabios>` ('default =' `seabios`)::
895 Select BIOS implementation.
897 `--boot` `[[legacy=]<[acdn]{1,4}>] [,order=<device[;device...]>]` ::
899 Specify guest boot order. Use the 'order=' sub-property as usage with no key or 'legacy=' is deprecated.
901 `--bootdisk` `(ide|sata|scsi|virtio)\d+` ::
903 Enable booting from specified disk. Deprecated: Use 'boot: order=foo;bar' instead.
905 `--cdrom` `<volume>` ::
907 This is an alias for option -ide2
909 `--cicustom` `[meta=<volume>] [,network=<volume>] [,user=<volume>] [,vendor=<volume>]` ::
911 cloud-init: Specify custom files to replace the automatically generated ones at start.
913 `--cipassword` `<password>` ::
915 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.
917 `--citype` `<configdrive2 | nocloud | opennebula>` ::
919 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.
921 `--ciuser` `<string>` ::
923 cloud-init: User name to change ssh keys and password for instead of the image's configured default user.
925 `--cores` `<integer> (1 - N)` ('default =' `1`)::
927 The number of cores per socket.
929 `--cpu` `[[cputype=]<string>] [,flags=<+FLAG[;-FLAG...]>] [,hidden=<1|0>] [,hv-vendor-id=<vendor-id>] [,phys-bits=<8-64|host>] [,reported-model=<enum>]` ::
933 `--cpulimit` `<number> (0 - 128)` ('default =' `0`)::
937 `--cpuunits` `<integer> (1 - 262144)` ('default =' `cgroup v1: 1024, cgroup v2: 100`)::
939 CPU weight for a VM, will be clamped to [1, 10000] in cgroup v2.
941 `--delete` `<string>` ::
943 A list of settings you want to delete.
945 `--description` `<string>` ::
947 Description for the VM. Shown in the web-interface VM's summary. This is saved as comment inside the configuration file.
949 `--digest` `<string>` ::
951 Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.
953 `--efidisk0` `[file=]<volume> [,efitype=<2m|4m>] [,format=<enum>] [,import-from=<source volume>] [,pre-enrolled-keys=<1|0>] [,size=<DiskSize>]` ::
955 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.
957 `--force` `<boolean>` ::
959 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.
961 NOTE: Requires option(s): `delete`
963 `--freeze` `<boolean>` ::
965 Freeze CPU at startup (use 'c' monitor command to start execution).
967 `--hookscript` `<string>` ::
969 Script that will be executed during various steps in the vms lifetime.
971 `--hostpci[n]` `[host=]<HOSTPCIID[;HOSTPCIID2...]> [,device-id=<hex id>] [,legacy-igd=<1|0>] [,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>]` ::
973 Map host PCI devices into guest.
975 `--hotplug` `<string>` ('default =' `network,disk,usb`)::
977 Selectively enable hotplug features. This is a comma separated list of hotplug features: 'network', 'disk', 'cpu', 'memory' and 'usb'. Use '0' to disable hotplug completely. Using '1' as value is an alias for the default `network,disk,usb`.
979 `--hugepages` `<1024 | 2 | any>` ::
981 Enable/disable hugepages memory.
983 `--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>]` ::
985 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.
987 `--ipconfig[n]` `[gw=<GatewayIPv4>] [,gw6=<GatewayIPv6>] [,ip=<IPv4Format/CIDR>] [,ip6=<IPv6Format/CIDR>]` ::
989 cloud-init: Specify IP addresses and gateways for the corresponding interface.
991 IP addresses use CIDR notation, gateways are optional but need an IP of the same type specified.
993 The special string 'dhcp' can be used for IP addresses to use DHCP, in which case no explicit
994 gateway should be provided.
995 For IPv6 the special string 'auto' can be used to use stateless autoconfiguration. This requires
996 cloud-init 19.4 or newer.
998 If cloud-init is enabled and neither an IPv4 nor an IPv6 address is specified, it defaults to using
1001 `--ivshmem` `size=<integer> [,name=<string>]` ::
1003 Inter-VM shared memory. Useful for direct communication between VMs, or to the host.
1005 `--keephugepages` `<boolean>` ('default =' `0`)::
1007 Use together with hugepages. If enabled, hugepages will not not be deleted after VM shutdown and can be used for subsequent starts.
1009 `--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>` ::
1011 Keyboard layout for VNC server. This option is generally not required and is often better handled from within the guest OS.
1013 `--kvm` `<boolean>` ('default =' `1`)::
1015 Enable/disable KVM hardware virtualization.
1017 `--localtime` `<boolean>` ::
1019 Set the real time clock (RTC) to local time. This is enabled by default if the `ostype` indicates a Microsoft Windows OS.
1021 `--lock` `<backup | clone | create | migrate | rollback | snapshot | snapshot-delete | suspended | suspending>` ::
1025 `--machine` `(pc|pc(-i440fx)?-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|q35|pc-q35-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|virt(?:-\d+(\.\d+)+)?(\+pve\d+)?)` ::
1027 Specifies the Qemu machine type.
1029 `--memory` `<integer> (16 - N)` ('default =' `512`)::
1031 Amount of RAM for the VM in MB. This is the maximum available memory when you use the balloon device.
1033 `--migrate_downtime` `<number> (0 - N)` ('default =' `0.1`)::
1035 Set maximum tolerated downtime (in seconds) for migrations.
1037 `--migrate_speed` `<integer> (0 - N)` ('default =' `0`)::
1039 Set maximum speed (in MB/s) for migrations. Value 0 is no limit.
1041 `--name` `<string>` ::
1043 Set a name for the VM. Only used on the configuration web interface.
1045 `--nameserver` `<string>` ::
1047 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.
1049 `--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>]` ::
1051 Specify network devices.
1053 `--numa` `<boolean>` ('default =' `0`)::
1055 Enable/disable NUMA.
1057 `--numa[n]` `cpus=<id[-id];...> [,hostnodes=<id[-id];...>] [,memory=<number>] [,policy=<preferred|bind|interleave>]` ::
1061 `--onboot` `<boolean>` ('default =' `0`)::
1063 Specifies whether a VM will be started during system bootup.
1065 `--ostype` `<l24 | l26 | other | solaris | w2k | w2k3 | w2k8 | win10 | win11 | win7 | win8 | wvista | wxp>` ::
1067 Specify guest operating system.
1069 `--parallel[n]` `/dev/parport\d+|/dev/usb/lp\d+` ::
1071 Map host parallel devices (n is 0 to 2).
1073 `--protection` `<boolean>` ('default =' `0`)::
1075 Sets the protection flag of the VM. This will disable the remove VM and remove disk operations.
1077 `--reboot` `<boolean>` ('default =' `1`)::
1079 Allow reboot. If set to '0' the VM exit on reboot.
1081 `--revert` `<string>` ::
1083 Revert a pending change.
1085 `--rng0` `[source=]</dev/urandom|/dev/random|/dev/hwrng> [,max_bytes=<integer>] [,period=<integer>]` ::
1087 Configure a VirtIO-based Random Number Generator.
1089 `--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>]` ::
1091 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.
1093 `--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>]` ::
1095 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.
1097 `--scsihw` `<lsi | lsi53c810 | megasas | pvscsi | virtio-scsi-pci | virtio-scsi-single>` ('default =' `lsi`)::
1099 SCSI controller model
1101 `--searchdomain` `<string>` ::
1103 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.
1105 `--serial[n]` `(/dev/.+|socket)` ::
1107 Create a serial device inside the VM (n is 0 to 3)
1109 `--shares` `<integer> (0 - 50000)` ('default =' `1000`)::
1111 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.
1113 `--skiplock` `<boolean>` ::
1115 Ignore locks - only root is allowed to use this option.
1117 `--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>]` ::
1119 Specify SMBIOS type 1 fields.
1121 `--smp` `<integer> (1 - N)` ('default =' `1`)::
1123 The number of CPUs. Please use option -sockets instead.
1125 `--sockets` `<integer> (1 - N)` ('default =' `1`)::
1127 The number of CPU sockets.
1129 `--spice_enhancements` `[foldersharing=<1|0>] [,videostreaming=<off|all|filter>]` ::
1131 Configure additional enhancements for SPICE.
1133 `--sshkeys` `<filepath>` ::
1135 cloud-init: Setup public SSH keys (one key per line, OpenSSH format).
1137 `--startdate` `(now | YYYY-MM-DD | YYYY-MM-DDTHH:MM:SS)` ('default =' `now`)::
1139 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'.
1141 `--startup` `[[order=]\d+] [,up=\d+] [,down=\d+] ` ::
1143 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.
1145 `--tablet` `<boolean>` ('default =' `1`)::
1147 Enable/disable the USB tablet device.
1149 `--tags` `<string>` ::
1151 Tags of the VM. This is only meta information.
1153 `--tdf` `<boolean>` ('default =' `0`)::
1155 Enable/disable time drift fix.
1157 `--template` `<boolean>` ('default =' `0`)::
1159 Enable/disable Template.
1161 `--tpmstate0` `[file=]<volume> [,import-from=<source volume>] [,size=<DiskSize>] [,version=<v1.2|v2.0>]` ::
1163 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.
1165 `--unused[n]` `[file=]<volume>` ::
1167 Reference to unused volumes. This is used internally, and should not be modified manually.
1169 `--usb[n]` `[host=]<HOSTUSBDEVICE|spice> [,usb3=<1|0>]` ::
1171 Configure an USB device (n is 0 to 4).
1173 `--vcpus` `<integer> (1 - N)` ('default =' `0`)::
1175 Number of hotplugged vcpus.
1177 `--vga` `[[type=]<enum>] [,memory=<integer>]` ::
1179 Configure the VGA hardware.
1181 `--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>]` ::
1183 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.
1185 `--vmgenid` `<UUID>` ('default =' `1 (autogenerated)`)::
1187 Set VM Generation ID. Use '1' to autogenerate on create or update, pass '0' to disable explicitly.
1189 `--vmstatestorage` `<string>` ::
1191 Default storage for VM state volumes/files.
1193 `--watchdog` `[[model=]<i6300esb|ib700>] [,action=<enum>]` ::
1195 Create a virtual hardware watchdog device.
1197 *qm showcmd* `<vmid>` `[OPTIONS]`
1199 Show command line which is used to start the VM (debug info).
1201 `<vmid>`: `<integer> (1 - N)` ::
1203 The (unique) ID of the VM.
1205 `--pretty` `<boolean>` ('default =' `0`)::
1207 Puts each option on a new line to enhance human readability
1209 `--snapshot` `<string>` ::
1211 Fetch config values from given snapshot.
1213 *qm shutdown* `<vmid>` `[OPTIONS]`
1215 Shutdown virtual machine. This is similar to pressing the power button on a
1216 physical machine.This will send an ACPI event for the guest OS, which
1217 should then proceed to a clean shutdown.
1219 `<vmid>`: `<integer> (1 - N)` ::
1221 The (unique) ID of the VM.
1223 `--forceStop` `<boolean>` ('default =' `0`)::
1225 Make sure the VM stops.
1227 `--keepActive` `<boolean>` ('default =' `0`)::
1229 Do not deactivate storage volumes.
1231 `--skiplock` `<boolean>` ::
1233 Ignore locks - only root is allowed to use this option.
1235 `--timeout` `<integer> (0 - N)` ::
1237 Wait maximal timeout seconds.
1239 *qm snapshot* `<vmid> <snapname>` `[OPTIONS]`
1243 `<vmid>`: `<integer> (1 - N)` ::
1245 The (unique) ID of the VM.
1247 `<snapname>`: `<string>` ::
1249 The name of the snapshot.
1251 `--description` `<string>` ::
1253 A textual description or comment.
1255 `--vmstate` `<boolean>` ::
1259 *qm start* `<vmid>` `[OPTIONS]`
1261 Start virtual machine.
1263 `<vmid>`: `<integer> (1 - N)` ::
1265 The (unique) ID of the VM.
1267 `--force-cpu` `<string>` ::
1269 Override QEMU's -cpu argument with the given string.
1271 `--machine` `(pc|pc(-i440fx)?-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|q35|pc-q35-\d+(\.\d+)+(\+pve\d+)?(\.pxe)?|virt(?:-\d+(\.\d+)+)?(\+pve\d+)?)` ::
1273 Specifies the Qemu machine type.
1275 `--migratedfrom` `<string>` ::
1277 The cluster node name.
1279 `--migration_network` `<string>` ::
1281 CIDR of the (sub) network that is used for migration.
1283 `--migration_type` `<insecure | secure>` ::
1285 Migration traffic is encrypted using an SSH tunnel by default. On secure, completely private networks this can be disabled to increase performance.
1287 `--skiplock` `<boolean>` ::
1289 Ignore locks - only root is allowed to use this option.
1291 `--stateuri` `<string>` ::
1293 Some command save/restore state from this location.
1295 `--targetstorage` `<string>` ::
1297 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.
1299 `--timeout` `<integer> (0 - N)` ('default =' `max(30, vm memory in GiB)`)::
1301 Wait maximal timeout seconds.
1303 *qm status* `<vmid>` `[OPTIONS]`
1307 `<vmid>`: `<integer> (1 - N)` ::
1309 The (unique) ID of the VM.
1311 `--verbose` `<boolean>` ::
1313 Verbose output format
1315 *qm stop* `<vmid>` `[OPTIONS]`
1317 Stop virtual machine. The qemu process will exit immediately. Thisis akin
1318 to pulling the power plug of a running computer and may damage the VM data
1320 `<vmid>`: `<integer> (1 - N)` ::
1322 The (unique) ID of the VM.
1324 `--keepActive` `<boolean>` ('default =' `0`)::
1326 Do not deactivate storage volumes.
1328 `--migratedfrom` `<string>` ::
1330 The cluster node name.
1332 `--skiplock` `<boolean>` ::
1334 Ignore locks - only root is allowed to use this option.
1336 `--timeout` `<integer> (0 - N)` ::
1338 Wait maximal timeout seconds.
1340 *qm suspend* `<vmid>` `[OPTIONS]`
1342 Suspend virtual machine.
1344 `<vmid>`: `<integer> (1 - N)` ::
1346 The (unique) ID of the VM.
1348 `--skiplock` `<boolean>` ::
1350 Ignore locks - only root is allowed to use this option.
1352 `--statestorage` `<string>` ::
1354 The storage for the VM state
1356 NOTE: Requires option(s): `todisk`
1358 `--todisk` `<boolean>` ('default =' `0`)::
1360 If set, suspends the VM to disk. Will be resumed on next VM start.
1362 *qm template* `<vmid>` `[OPTIONS]`
1366 `<vmid>`: `<integer> (1 - N)` ::
1368 The (unique) ID of the VM.
1370 `--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>` ::
1372 If you want to convert only 1 disk to base image.
1374 *qm terminal* `<vmid>` `[OPTIONS]`
1376 Open a terminal using a serial device (The VM need to have a serial device
1377 configured, for example 'serial0: socket')
1379 `<vmid>`: `<integer> (1 - N)` ::
1381 The (unique) ID of the VM.
1383 `--escape` `<string>` ('default =' `^O`)::
1387 `--iface` `<serial0 | serial1 | serial2 | serial3>` ::
1389 Select the serial device. By default we simply use the first suitable device.
1391 *qm unlink* `<vmid> --idlist <string>` `[OPTIONS]`
1393 Unlink/delete disk images.
1395 `<vmid>`: `<integer> (1 - N)` ::
1397 The (unique) ID of the VM.
1399 `--force` `<boolean>` ::
1401 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.
1403 `--idlist` `<string>` ::
1405 A list of disk IDs you want to delete.
1407 *qm unlock* `<vmid>`
1411 `<vmid>`: `<integer> (1 - N)` ::
1413 The (unique) ID of the VM.
1415 *qm vncproxy* `<vmid>`
1417 Proxy VM VNC traffic to stdin/stdout
1419 `<vmid>`: `<integer> (1 - N)` ::
1421 The (unique) ID of the VM.
1423 *qm wait* `<vmid>` `[OPTIONS]`
1425 Wait until the VM is stopped.
1427 `<vmid>`: `<integer> (1 - N)` ::
1429 The (unique) ID of the VM.
1431 `--timeout` `<integer> (1 - N)` ::
1433 Timeout in seconds. Default is to wait forever.