NAME

qm - qemu/kvm virtual machine manager

SYNOPSIS

 qm <COMMAND> [ARGS] [OPTIONS]

 qm clone <vmid> <newid> [OPTIONS]
 
   Create a copy of virtual machine/template.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <newid>    integer (1 - N)
 
             VMID for the clone.
 
   -description string
 
             Description for the new VM.
 
   -format    (qcow2 | raw | vmdk)
 
             Target format for file storage.
 
             Requires option(s): full
 
   -full      boolean   (default=0)
 
             Create a full copy of all disk. This is always done when you
             clone a normal VM. For VM templates, we try to create a linked
             clone by default.
 
   -name      string
 
             Set a name for the new VM.
 
   -pool      string
 
             Add the new VM to the specified pool.
 
   -snapname  string
 
             The name of the snapshot.
 
   -storage   string
 
             Target storage for full clone.
 
             Requires option(s): full
 
   -target    string
 
             Target node. Only allowed if the original VM is on shared
             storage.
 
 

 qm config <vmid> [OPTIONS]
 
   Get current virtual machine configuration. This does not include pending
   configuration changes (see 'pending' API).
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -current   boolean   (default=0)
 
             Get current values (instead of pending values).
 
 

 qm create <vmid> [OPTIONS]
 
   Create or restore a virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -acpi      boolean   (default=1)
 
             Enable/disable ACPI.
 
   -agent     boolean   (default=0)
 
             Enable/disable Qemu GuestAgent.
 
   -archive   string
 
             The backup file.
 
   -args      string
 
             Note: this option is for experts only. It allows you to pass
             arbitrary arguments to kvm, for example:
             
             args: -no-reboot -no-hpet
 
   -autostart boolean   (default=0)
 
             Automatic restart after crash (currently ignored).
 
   -balloon   integer (0 - N)
 
             Amount of target RAM for the VM in MB. Using zero disables the
             ballon driver.
 
   -boot      [acdn]{1,4}   (default=cdn)
 
             Boot on floppy (a), hard disk (c), CD-ROM (d), or network (n).
 
   -bootdisk  (ide|sata|scsi|virtio)\d+
 
             Enable booting from specified disk.
 
   -cdrom     volume
 
             This is an alias for option -ide2
 
   -cores     integer (1 - N)   (default=1)
 
             The number of cores per socket.
 
   -cpu      (486 | Broadwell | Conroe | Haswell | IvyBridge | Nehalem |
             Opteron_G1 | Opteron_G2 | Opteron_G3 | Opteron_G4 | Opteron_G5
             | Penryn | SandyBridge | Westmere | athlon | core2duo |
             coreduo | host | kvm32 | kvm64 | pentium | pentium2 | pentium3
             | phenom | qemu32 | qemu64)   (default=kvm64)
 
             Emulated CPU type.
 
   -cpulimit  number (0 - 128)  (default=0)
 
             Limit of CPU usage. Note if the computer has 2 CPUs, it has
             total of '2' CPU time. Value '0' indicates no CPU limit.
 
   -cpuunits  integer (0 - 500000)   (default=1000)
 
             CPU weight for a VM. Argument is used in the kernel fair
             scheduler. The larger the number is, the more CPU time this VM
             gets. Number is relative to weights of all the other running
             VMs.
             
             NOTE: You can disable fair-scheduler configuration by setting
             this to 0.
 
   -description string
 
             Description for the VM. Only used on the configuration web
             interface. This is saved as comment inside the configuration
             file.
 
   -force     boolean
 
             Allow to overwrite existing VM.
 
             Requires option(s): archive
 
   -freeze    boolean
 
             Freeze CPU at startup (use 'c' monitor command to start
             execution).
 
   -hostpci[n] [host=]HOSTPCIDEVICE [,driver=kvm|vfio] [,rombar=on|off]
             [,pcie=0|1] [,x-vga=on|off]
 
             Map host pci devices. HOSTPCIDEVICE syntax is:
             
             'bus:dev.func' (hexadecimal numbers)
             
             You can us the 'lspci' command to list existing pci devices.
             
             The 'rombar' option determines whether or not the device's ROM
             will be visible in the guest's memory map (default is 'on').
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             Experimental: user reported problems with this option.
 
   -hotplug   string   (default=network,disk,usb)
 
             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. Value '1' is
             an alias for the default 'network,disk,usb'.
 
   -ide[n]    [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads]
             [,discard=ignore|on]
 
             Use volume as IDE hard disk or CD-ROM (n is 0 to 3).
 
   -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)   (default=en-us)
 
             Keybord layout for vnc server. Default is read from the
             datacenter configuration file.
 
   -kvm      boolean   (default=1)
 
             Enable/disable KVM hardware virtualization.
 
   -localtime boolean
 
             Set the real time clock to local time. This is enabled by
             default if ostype indicates a Microsoft OS.
 
   -lock      (backup | migrate | rollback | snapshot)
 
             Lock/unlock the VM.
 
   -machine   (pc|pc(-i440fx)?-\d+\.\d+|q35|pc-q35-\d+\.\d+)
 
             Specific the Qemu machine type.
 
   -memory    integer (16 - N)  (default=512)
 
             Amount of RAM for the VM in MB. This is the maximum available
             memory when you use the balloon device.
 
   -migrate_downtime number (0 - N)   (default=0.1)
 
             Set maximum tolerated downtime (in seconds) for migrations.
 
   -migrate_speed integer (0 - N)   (default=0)
 
             Set maximum speed (in MB/s) for migrations. Value 0 is no
             limit.
 
   -name      string
 
             Set a name for the VM. Only used on the configuration web
             interface.
 
   -net[n]    MODEL=XX:XX:XX:XX:XX:XX
             [,bridge=<dev>][,queues=<nbqueues>][,rate=<mbps>]
             [,tag=<vlanid>][,firewall=0|1],link_down=0|1]
 
             Specify network devices.
             
             MODEL is one of: e1000 e1000-82540em e1000-82544gc
             e1000-82545em i82551 i82557b i82559er ne2k_isa ne2k_pci pcnet
             rtl8139 virtio vmxnet3
             
             XX:XX:XX:XX:XX:XX should be an unique MAC address. This is
             automatically generated if not specified.
             
             The bridge parameter can be used to automatically add the
             interface to a bridge device. The Proxmox VE standard bridge
             is called 'vmbr0'.
             
             Option 'rate' is used to limit traffic bandwidth from and to
             this interface. It is specified as floating point number, unit
             is 'Megabytes per second'.
             
             If you specify no bridge, we create a kvm 'user' (NATed)
             network device, which provides DHCP and DNS services. The
             following addresses are used:
             
             10.0.2.2   Gateway
             10.0.2.3   DNS Server
             10.0.2.4   SMB Server
             
             The DHCP server assign addresses to the guest starting from
             10.0.2.15.
 
 
   -numa      boolean   (default=0)
 
             Enable/disable Numa.
 
   -numa[n]   cpus=<id[-id],memory=<mb>[[,hostnodes=<id[-id]>]
             [,policy=<preferred|bind|interleave>]]
 
             numa topology
 
   -onboot    boolean   (default=0)
 
             Specifies whether a VM will be started during system bootup.
 
   -ostype    (l24 | l26 | other | solaris | w2k | w2k3 | w2k8 | win7 | win8
             | wvista | wxp)
 
             Used to enable special optimization/features for specific
             operating systems:
             
             other  => unspecified OS
             wxp    => Microsoft Windows XP
             w2k    => Microsoft Windows 2000
             w2k3   => Microsoft Windows 2003
             w2k8   => Microsoft Windows 2008
             wvista => Microsoft Windows Vista
             win7   => Microsoft Windows 7
             win8   => Microsoft Windows 8/2012
             l24    => Linux 2.4 Kernel
             l26    => Linux 2.6/3.X Kernel
             solaris => solaris/opensolaris/openindiania kernel
             
             other|l24|l26|solaris                       ... no special
             behaviour
             wxp|w2k|w2k3|w2k8|wvista|win7|win8  ... use --localtime switch
 
   -parallel[n] /dev/parport\d+|/dev/usb/lp\d+
 
             Map host parallel devices (n is 0 to 2).
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             Experimental: user reported problems with this option.
 
   -pool      string
 
             Add the VM to the specified pool.
 
   -reboot    boolean   (default=1)
 
             Allow reboot. If set to '0' the VM exit on reboot.
 
   -sata[n]   [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads] 
             [,discard=ignore|on]
 
             Use volume as SATA hard disk or CD-ROM (n is 0 to 5).
 
   -scsi[n]   [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads]
             [,discard=ignore|on] [,iothread=on] [,queues=<nbqueues>]
 
             Use volume as SCSI hard disk or CD-ROM (n is 0 to 13).
 
   -scsihw    (lsi | lsi53c810 | megasas | pvscsi | virtio-scsi-pci |
             virtio-scsi-single)   (default=lsi)
 
             scsi controller model
 
   -serial[n] (/dev/.+|socket)
 
             Create a serial device inside the VM (n is 0 to 3), and pass
             through a host serial device (i.e. /dev/ttyS0), or create a
             unix socket on the host side (use 'qm terminal' to open a
             terminal connection).
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             Experimental: user reported problems with this option.
 
   -shares    integer (0 - 50000)   (default=1000)
 
             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
 
   -smbios[n] [manufacturer=str][,product=str][,version=str][,serial=str]
             [,uuid=uuid][,sku=str][,family=str]
 
             Specify SMBIOS type 1 fields.
 
   -smp      integer (1 - N)   (default=1)
 
             The number of CPUs. Please use option -sockets instead.
 
   -sockets   integer (1 - N)   (default=1)
 
             The number of CPU sockets.
 
   -startdate (now | YYYY-MM-DD | YYYY-MM-DDTHH:MM:SS)  (default=now)
 
             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'.
 
   -startup   [[order=]\d+] [,up=\d+] [,down=\d+] 
 
             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.
 
   -storage   string
 
             Default storage.
 
   -tablet    boolean   (default=1)
 
             Enable/disable the usb tablet device. This device is usually
             needed to allow absolute mouse positioning with VNC. Else the
             mouse runs out of sync with normal VNC clients. If you're
             running lots of console-only guests on one host, you may
             consider disabling this to save some context switches. This is
             turned of by default if you use spice (vga=qxl).
 
   -tdf      boolean   (default=0)
 
             Enable/disable time drift fix.
 
   -template  boolean   (default=0)
 
             Enable/disable Template.
 
   -unique    boolean
 
             Assign a unique random ethernet address.
 
             Requires option(s): archive
 
   -unused[n] string
 
             Reference to unused volumes.
 
   -usb[n]    host=HOSTUSBDEVICE|spice
 
             Configure an USB device (n is 0 to 4). This can be used to
             pass-through usb devices to the guest. HOSTUSBDEVICE syntax
             is:
             
             'bus-port(.port)*' (decimal numbers) or
             'vendor_id:product_id' (hexadeciaml numbers)
             
             You can use the 'lsusb -t' command to list existing usb
             devices.
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             The value 'spice' can be used to add a usb redirection devices
             for spice.
 
 
   -vcpus     integer (1 - N)   (default=0)
 
             Number of hotplugged vcpus.
 
   -vga      (cirrus | qxl | qxl2 | qxl3 | qxl4 | serial0 | serial1 |
             serial2 | serial3 | std | vmware)
 
             Select VGA type. If you want to use high resolution modes (>=
             1280x1024x16) then you should use option 'std' or 'vmware'.
             Default is 'std' for win8/win7/w2k8, and 'cirrur' for other OS
             types. Option 'qxl' enables the SPICE display sever. You can
             also run without any graphic card using a serial devive as
             terminal.
 
   -virtio[n] [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads] 
             [,discard=ignore|on] [,iothread=on]
 
             Use volume as VIRTIO hard disk (n is 0 to 15).
 
   -watchdog  [[model=]i6300esb|ib700]
             [,[action=]reset|shutdown|poweroff|pause|debug|none]
 
             Create a virtual hardware watchdog device.  Once enabled (by a
             guest action), the watchdog must be periodically polled by an
             agent inside the guest or else the guest will be restarted (or
             execute the action specified)
 
 

 qm delsnapshot <vmid> <snapname> [OPTIONS]
 
   Delete a VM snapshot.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <snapname> string
 
             The name of the snapshot.
 
   -force     boolean
 
             For removal from config file, even if removing disk snapshots
             fails.
 
 

 qm destroy <vmid> [OPTIONS]
 
   Destroy the vm (also delete all used/owned volumes).
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
 

 qm list 
 
   Virtual machine index (per node).
 
 

 qm migrate <vmid> <target> [OPTIONS]
 
   Migrate virtual machine. Creates a new migration task.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <target>   string
 
             Target node.
 
   -force     boolean
 
             Allow to migrate VMs which use local devices. Only root may
             use this option.
 
   -online    boolean
 
             Use online/live migration.
 
 

 qm move_disk <vmid> <disk> <storage> [OPTIONS]
 
   Move volume to different storage.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <disk>     (ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 |
             sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 |
             scsi13 | scsi2 | scsi3 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8
             | scsi9 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 |
             virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 |
             virtio5 | virtio6 | virtio7 | virtio8 | virtio9)
 
             The disk you want to move.
 
   <storage>  string
 
             Target Storage.
 
   -delete    boolean   (default=0)
 
             Delete the original disk after successful copy. By default the
             original disk is kept as unused disk.
 
   -digest    string
 
             Prevent changes if current configuration file has different
             SHA1 digest. This can be used to prevent concurrent
             modifications.
 
   -format    (qcow2 | raw | vmdk)
 
             Target Format.
 
 

 qm pending <vmid>
 
   Get virtual machine configuration, including pending changes.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
 

 qm reset <vmid> [OPTIONS]
 
   Reset virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
 

 qm resize <vmid> <disk> <size> [OPTIONS]
 
   Extend volume size.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <disk>     (ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 |
             sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 |
             scsi13 | scsi2 | scsi3 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8
             | scsi9 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 |
             virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 |
             virtio5 | virtio6 | virtio7 | virtio8 | virtio9)
 
             The disk you want to resize.
 
   <size>     \+?\d+(\.\d+)?[KMGT]?
 
             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.
 
   -digest    string
 
             Prevent changes if current configuration file has different
             SHA1 digest. This can be used to prevent concurrent
             modifications.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
 

 qm resume <vmid> [OPTIONS]
 
   Resume virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
 

 qm rollback <vmid> <snapname>
 
   Rollback VM state to specified snapshot.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <snapname> string
 
             The name of the snapshot.
 
 

 qm sendkey <vmid> <key> [OPTIONS]
 
   Send key event to virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <key>      string
 
             The key (qemu monitor encoding).
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
 

 qm set <vmid> [OPTIONS]
 
   Set virtual machine options (synchrounous API) - You should consider
   using the POST method instead for any actions involving hotplug or
   storage allocation.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -acpi      boolean   (default=1)
 
             Enable/disable ACPI.
 
   -agent     boolean   (default=0)
 
             Enable/disable Qemu GuestAgent.
 
   -args      string
 
             Note: this option is for experts only. It allows you to pass
             arbitrary arguments to kvm, for example:
             
             args: -no-reboot -no-hpet
 
   -autostart boolean   (default=0)
 
             Automatic restart after crash (currently ignored).
 
   -balloon   integer (0 - N)
 
             Amount of target RAM for the VM in MB. Using zero disables the
             ballon driver.
 
   -boot      [acdn]{1,4}   (default=cdn)
 
             Boot on floppy (a), hard disk (c), CD-ROM (d), or network (n).
 
   -bootdisk  (ide|sata|scsi|virtio)\d+
 
             Enable booting from specified disk.
 
   -cdrom     volume
 
             This is an alias for option -ide2
 
   -cores     integer (1 - N)   (default=1)
 
             The number of cores per socket.
 
   -cpu      (486 | Broadwell | Conroe | Haswell | IvyBridge | Nehalem |
             Opteron_G1 | Opteron_G2 | Opteron_G3 | Opteron_G4 | Opteron_G5
             | Penryn | SandyBridge | Westmere | athlon | core2duo |
             coreduo | host | kvm32 | kvm64 | pentium | pentium2 | pentium3
             | phenom | qemu32 | qemu64)   (default=kvm64)
 
             Emulated CPU type.
 
   -cpulimit  number (0 - 128)  (default=0)
 
             Limit of CPU usage. Note if the computer has 2 CPUs, it has
             total of '2' CPU time. Value '0' indicates no CPU limit.
 
   -cpuunits  integer (0 - 500000)   (default=1000)
 
             CPU weight for a VM. Argument is used in the kernel fair
             scheduler. The larger the number is, the more CPU time this VM
             gets. Number is relative to weights of all the other running
             VMs.
             
             NOTE: You can disable fair-scheduler configuration by setting
             this to 0.
 
   -delete    string
 
             A list of settings you want to delete.
 
   -description string
 
             Description for the VM. Only used on the configuration web
             interface. This is saved as comment inside the configuration
             file.
 
   -digest    string
 
             Prevent changes if current configuration file has different
             SHA1 digest. This can be used to prevent concurrent
             modifications.
 
   -force     boolean
 
             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.
 
             Requires option(s): delete
 
   -freeze    boolean
 
             Freeze CPU at startup (use 'c' monitor command to start
             execution).
 
   -hostpci[n] [host=]HOSTPCIDEVICE [,driver=kvm|vfio] [,rombar=on|off]
             [,pcie=0|1] [,x-vga=on|off]
 
             Map host pci devices. HOSTPCIDEVICE syntax is:
             
             'bus:dev.func' (hexadecimal numbers)
             
             You can us the 'lspci' command to list existing pci devices.
             
             The 'rombar' option determines whether or not the device's ROM
             will be visible in the guest's memory map (default is 'on').
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             Experimental: user reported problems with this option.
 
   -hotplug   string   (default=network,disk,usb)
 
             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. Value '1' is
             an alias for the default 'network,disk,usb'.
 
   -ide[n]    [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads]
             [,discard=ignore|on]
 
             Use volume as IDE hard disk or CD-ROM (n is 0 to 3).
 
   -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)   (default=en-us)
 
             Keybord layout for vnc server. Default is read from the
             datacenter configuration file.
 
   -kvm      boolean   (default=1)
 
             Enable/disable KVM hardware virtualization.
 
   -localtime boolean
 
             Set the real time clock to local time. This is enabled by
             default if ostype indicates a Microsoft OS.
 
   -lock      (backup | migrate | rollback | snapshot)
 
             Lock/unlock the VM.
 
   -machine   (pc|pc(-i440fx)?-\d+\.\d+|q35|pc-q35-\d+\.\d+)
 
             Specific the Qemu machine type.
 
   -memory    integer (16 - N)  (default=512)
 
             Amount of RAM for the VM in MB. This is the maximum available
             memory when you use the balloon device.
 
   -migrate_downtime number (0 - N)   (default=0.1)
 
             Set maximum tolerated downtime (in seconds) for migrations.
 
   -migrate_speed integer (0 - N)   (default=0)
 
             Set maximum speed (in MB/s) for migrations. Value 0 is no
             limit.
 
   -name      string
 
             Set a name for the VM. Only used on the configuration web
             interface.
 
   -net[n]    MODEL=XX:XX:XX:XX:XX:XX
             [,bridge=<dev>][,queues=<nbqueues>][,rate=<mbps>]
             [,tag=<vlanid>][,firewall=0|1],link_down=0|1]
 
             Specify network devices.
             
             MODEL is one of: e1000 e1000-82540em e1000-82544gc
             e1000-82545em i82551 i82557b i82559er ne2k_isa ne2k_pci pcnet
             rtl8139 virtio vmxnet3
             
             XX:XX:XX:XX:XX:XX should be an unique MAC address. This is
             automatically generated if not specified.
             
             The bridge parameter can be used to automatically add the
             interface to a bridge device. The Proxmox VE standard bridge
             is called 'vmbr0'.
             
             Option 'rate' is used to limit traffic bandwidth from and to
             this interface. It is specified as floating point number, unit
             is 'Megabytes per second'.
             
             If you specify no bridge, we create a kvm 'user' (NATed)
             network device, which provides DHCP and DNS services. The
             following addresses are used:
             
             10.0.2.2   Gateway
             10.0.2.3   DNS Server
             10.0.2.4   SMB Server
             
             The DHCP server assign addresses to the guest starting from
             10.0.2.15.
 
 
   -numa      boolean   (default=0)
 
             Enable/disable Numa.
 
   -numa[n]   cpus=<id[-id],memory=<mb>[[,hostnodes=<id[-id]>]
             [,policy=<preferred|bind|interleave>]]
 
             numa topology
 
   -onboot    boolean   (default=0)
 
             Specifies whether a VM will be started during system bootup.
 
   -ostype    (l24 | l26 | other | solaris | w2k | w2k3 | w2k8 | win7 | win8
             | wvista | wxp)
 
             Used to enable special optimization/features for specific
             operating systems:
             
             other  => unspecified OS
             wxp    => Microsoft Windows XP
             w2k    => Microsoft Windows 2000
             w2k3   => Microsoft Windows 2003
             w2k8   => Microsoft Windows 2008
             wvista => Microsoft Windows Vista
             win7   => Microsoft Windows 7
             win8   => Microsoft Windows 8/2012
             l24    => Linux 2.4 Kernel
             l26    => Linux 2.6/3.X Kernel
             solaris => solaris/opensolaris/openindiania kernel
             
             other|l24|l26|solaris                       ... no special
             behaviour
             wxp|w2k|w2k3|w2k8|wvista|win7|win8  ... use --localtime switch
 
   -parallel[n] /dev/parport\d+|/dev/usb/lp\d+
 
             Map host parallel devices (n is 0 to 2).
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             Experimental: user reported problems with this option.
 
   -reboot    boolean   (default=1)
 
             Allow reboot. If set to '0' the VM exit on reboot.
 
   -revert    string
 
             Revert a pending change.
 
   -sata[n]   [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads] 
             [,discard=ignore|on]
 
             Use volume as SATA hard disk or CD-ROM (n is 0 to 5).
 
   -scsi[n]   [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads]
             [,discard=ignore|on] [,iothread=on] [,queues=<nbqueues>]
 
             Use volume as SCSI hard disk or CD-ROM (n is 0 to 13).
 
   -scsihw    (lsi | lsi53c810 | megasas | pvscsi | virtio-scsi-pci |
             virtio-scsi-single)   (default=lsi)
 
             scsi controller model
 
   -serial[n] (/dev/.+|socket)
 
             Create a serial device inside the VM (n is 0 to 3), and pass
             through a host serial device (i.e. /dev/ttyS0), or create a
             unix socket on the host side (use 'qm terminal' to open a
             terminal connection).
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             Experimental: user reported problems with this option.
 
   -shares    integer (0 - 50000)   (default=1000)
 
             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
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
   -smbios[n] [manufacturer=str][,product=str][,version=str][,serial=str]
             [,uuid=uuid][,sku=str][,family=str]
 
             Specify SMBIOS type 1 fields.
 
   -smp      integer (1 - N)   (default=1)
 
             The number of CPUs. Please use option -sockets instead.
 
   -sockets   integer (1 - N)   (default=1)
 
             The number of CPU sockets.
 
   -startdate (now | YYYY-MM-DD | YYYY-MM-DDTHH:MM:SS)  (default=now)
 
             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'.
 
   -startup   [[order=]\d+] [,up=\d+] [,down=\d+] 
 
             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.
 
   -tablet    boolean   (default=1)
 
             Enable/disable the usb tablet device. This device is usually
             needed to allow absolute mouse positioning with VNC. Else the
             mouse runs out of sync with normal VNC clients. If you're
             running lots of console-only guests on one host, you may
             consider disabling this to save some context switches. This is
             turned of by default if you use spice (vga=qxl).
 
   -tdf      boolean   (default=0)
 
             Enable/disable time drift fix.
 
   -template  boolean   (default=0)
 
             Enable/disable Template.
 
   -unused[n] string
 
             Reference to unused volumes.
 
   -usb[n]    host=HOSTUSBDEVICE|spice
 
             Configure an USB device (n is 0 to 4). This can be used to
             pass-through usb devices to the guest. HOSTUSBDEVICE syntax
             is:
             
             'bus-port(.port)*' (decimal numbers) or
             'vendor_id:product_id' (hexadeciaml numbers)
             
             You can use the 'lsusb -t' command to list existing usb
             devices.
             
             Note: This option allows direct access to host hardware. So it
             is no longer possible to migrate such machines - use with
             special care.
             
             The value 'spice' can be used to add a usb redirection devices
             for spice.
 
 
   -vcpus     integer (1 - N)   (default=0)
 
             Number of hotplugged vcpus.
 
   -vga      (cirrus | qxl | qxl2 | qxl3 | qxl4 | serial0 | serial1 |
             serial2 | serial3 | std | vmware)
 
             Select VGA type. If you want to use high resolution modes (>=
             1280x1024x16) then you should use option 'std' or 'vmware'.
             Default is 'std' for win8/win7/w2k8, and 'cirrur' for other OS
             types. Option 'qxl' enables the SPICE display sever. You can
             also run without any graphic card using a serial devive as
             terminal.
 
   -virtio[n] [volume=]volume,] [,media=cdrom|disk]
             [,cyls=c,heads=h,secs=s[,trans=t]] [,snapshot=on|off]
             [,cache=none|writethrough|writeback|unsafe|directsync]
             [,format=f] [,backup=yes|no] [,rerror=ignore|report|stop]
             [,werror=enospc|ignore|report|stop] [,aio=native|threads] 
             [,discard=ignore|on] [,iothread=on]
 
             Use volume as VIRTIO hard disk (n is 0 to 15).
 
   -watchdog  [[model=]i6300esb|ib700]
             [,[action=]reset|shutdown|poweroff|pause|debug|none]
 
             Create a virtual hardware watchdog device.  Once enabled (by a
             guest action), the watchdog must be periodically polled by an
             agent inside the guest or else the guest will be restarted (or
             execute the action specified)
 
 

 qm shutdown <vmid> [OPTIONS]
 
   Shutdown virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -forceStop boolean   (default=0)
 
             Make sure the VM stops.
 
   -keepActive boolean  (default=0)
 
             Do not decativate storage volumes.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
   -timeout   integer (0 - N)
 
             Wait maximal timeout seconds.
 
 

 qm snapshot <vmid> <snapname> [OPTIONS]
 
   Snapshot a VM.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   <snapname> string
 
             The name of the snapshot.
 
   -description string
 
             A textual description or comment.
 
   -vmstate   boolean
 
             Save the vmstate
 
 

 qm start <vmid> [OPTIONS]
 
   Start virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -machine   (pc|pc(-i440fx)?-\d+\.\d+|q35|pc-q35-\d+\.\d+)
 
             Specific the Qemu machine type.
 
   -migratedfrom string
 
             The cluster node name.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
   -stateuri  string
 
             Some command save/restore state from this location.
 
 

 qm stop <vmid> [OPTIONS]
 
   Stop virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -keepActive boolean  (default=0)
 
             Do not decativate storage volumes.
 
   -migratedfrom string
 
             The cluster node name.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
   -timeout   integer (0 - N)
 
             Wait maximal timeout seconds.
 
 

 qm suspend <vmid> [OPTIONS]
 
   Suspend virtual machine.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -skiplock  boolean
 
             Ignore locks - only root is allowed to use this option.
 
 

 qm template <vmid> [OPTIONS]
 
   Create a Template.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -disk      (ide0 | ide1 | ide2 | ide3 | sata0 | sata1 | sata2 | sata3 |
             sata4 | sata5 | scsi0 | scsi1 | scsi10 | scsi11 | scsi12 |
             scsi13 | scsi2 | scsi3 | scsi4 | scsi5 | scsi6 | scsi7 | scsi8
             | scsi9 | virtio0 | virtio1 | virtio10 | virtio11 | virtio12 |
             virtio13 | virtio14 | virtio15 | virtio2 | virtio3 | virtio4 |
             virtio5 | virtio6 | virtio7 | virtio8 | virtio9)
 
             If you want to convert only 1 disk to base image.
 
 

 qm unlink <vmid> -idlist <string> [OPTIONS]
 
   Unlink/delete disk images.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -force     boolean
 
             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.
 
   -idlist    string
 
             A list of disk IDs you want to delete.
 
 


 qm help [<cmd>] [OPTIONS]
 
   Get help about specified command.
 
   <cmd>      string
 
             Command name
 
   -verbose   boolean
 
             Verbose output format.
 
 


 qm monitor <vmid>
 
   Enter Qemu Monitor interface.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
 

 qm mtunnel 
 
   Used by qmigrate - do not use manually.
 
 

 qm rescan  [OPTIONS]
 
   Rescan all storages and update disk sizes and unused disk images.
 
   -vmid      integer (1 - N)
 
             The (unique) ID of the VM.
 
 

 qm showcmd <vmid>
 
   Show command line which is used to start the VM (debug info).
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
 

 qm status <vmid> [OPTIONS]
 
   Show VM status.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -verbose   boolean
 
             Verbose output format
 
 

 qm terminal <vmid> [OPTIONS]
 
   Open a terminal using a serial device (The VM need to have a serial
   device configured, for example 'serial0: socket')
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -iface     (serial0 | serial1 | serial2 | serial3)
 
             Select the serial device. By default we simply use the first
             suitable device.
 
 

 qm unlock <vmid>
 
   Unlock the VM.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
 

 qm vncproxy <vmid>
 
   Proxy VM VNC traffic to stdin/stdout
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
 

 qm wait <vmid> [OPTIONS]
 
   Wait until the VM is stopped.
 
   <vmid>     integer (1 - N)
 
             The (unique) ID of the VM.
 
   -timeout   integer (1 - N)
 
             Timeout in seconds. Default is to wait forever.
 
 

DESCRIPTION

qm is a script to manage virtual machines with qemu/kvm. You can create and destroy virtual machines, and control execution (start/stop/suspend/resume). Besides that, you can use qm to set parameters in the associated config file. It is also possible to create and delete virtual disks.

CONFIGURATION

All configuration files consists of lines in the form

       PARAMETER: value

See vm.conf for a complete list of options.

Configuration files are stored inside the Proxmox configuration file system, and can be access at /etc/pve/qemu-server/VMID.conf.

The default for option 'keyboard' is read from /etc/pve/datacenter.conf.

Locks

Online migration and backups (vzdump) set a lock to prevent unintentional action on such VMs. Sometimes you need remove such lock manually (power failure).

 qm unlock <vmid>

EXAMPLES

 # create a new VM with 4 GB ide disk
 qm create 300 -ide0 4 -net0 e1000 -cdrom proxmox-mailgateway_2.1.iso

 # start the new VM
 qm start 300

 # send shutdown, then wait until VM is stopped
 qm shutdown 300 && qm wait 300

 # same as above, but only wait for 40 seconds
 qm shutdown 300 && qm wait 300 -timeout 40

COPYRIGHT AND DISCLAIMER

Copyright (C) 2007-2015 Proxmox Server Solutions GmbH

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.