### qm start Source: https://pve.proxmox.com/pve-docs/qm.1.html Starts a virtual machine. ```APIDOC ## qm start ### Description Start virtual machine. ### Parameters #### Path Parameters - **vmid** (integer) - Required - The (unique) ID of the VM. (100 - 999999999) #### Query Parameters - **--force-cpu** (string) - Optional - Override QEMU’s -cpu argument with the given string. - **--machine** (string) - Optional - Specify the QEMU machine. Format: [[type=] [,aw-bits=] [,enable-s3=<1|0>] [,enable-s4=<1|0>] [,viommu=]] - **--migratedfrom** (string) - Optional - The cluster node name. - **--migration_network** (string) - Optional - CIDR of the (sub) network that is used for migration. - **--migration_type** (string) - Optional - Migration traffic is encrypted using an SSH tunnel by default. On secure, completely private networks this can be disabled to increase performance. Allowed values: insecure, secure - **--nets-host-mtu** (string) - Optional - Used for migration compat. List of VirtIO network devices and their effective host_mtu setting according to the QEMU object model on the source side of the migration. A value of 0 means that the host_mtu parameter is to be avoided for the corresponding device. - **--skiplock** (boolean) - Optional - Ignore locks - only root is allowed to use this option. - **--stateuri** (string) - Optional - Some command save/restore state from this location. - **--targetstorage** (string) - Optional - 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. - **--timeout** (integer) - Optional - Wait maximal timeout seconds. (default: max(30, vm memory in GiB)) - **--with-conntrack-state** (boolean) - Optional - Whether to migrate conntrack entries for running VMs. (default: 0) ``` -------------------------------- ### Simple Zone Example Configuration Source: https://pve.proxmox.com/pve-docs/chapter-pvesdn.html Example configuration for a VNet and its subnets, demonstrating IPv4 and IPv6 subnet setup with DHCP ranges and gateways. ```text # /etc/pve/sdn/vnets.cfg vnet: vnet0 zone simple # /etc/pve/sdn/subnets.cfg subnet: simple-192.0.2.0-24 vnet vnet0 dhcp-range start-address=192.0.2.100,end-address=192.0.2.199 gateway 192.0.2.1 subnet: simple-2001:db8::-64 vnet vnet0 dhcp-range start-address=2001:db8::1000,end-address=2001:db8::1999 gateway 2001:db8::1 ``` -------------------------------- ### On Boot Start Source: https://pve.proxmox.com/pve-docs/qm.1.html Specifies whether a virtual machine should start automatically during system bootup. ```APIDOC ## --onboot ### Description Specifies whether a VM will be started during system bootup. ### Parameters #### Query Parameters - **onboot** (boolean) - Optional - Specifies whether a VM will be started during system bootup. Defaults to 0. ``` -------------------------------- ### Example vzdump.conf Configuration Source: https://pve.proxmox.com/pve-docs/chapter-vzdump.html This example demonstrates how to configure backup storage, mode, and bandwidth limits. ```shell tmpdir: /mnt/fast_local_disk storage: my_backup_storage mode: snapshot bwlimit: 10000 ``` -------------------------------- ### Start a virtual machine Source: https://pve.proxmox.com/pve-docs/chapter-qm.html This command starts a virtual machine with the specified VMID. ```bash # qm start 300 ``` -------------------------------- ### Start All VMs and Containers Source: https://pve.proxmox.com/pve-docs/pvenode.1.html Starts all virtual machines and containers on the node. Optionally, it can force the start even if 'onboot' is not set. ```APIDOC ## pvenode startall [OPTIONS] ### Description Start all VMs and containers located on this node (by default only those with onboot=1). ### Options - `--force `: Issue start command even if virtual guest have _onboot_ not set or set to off. - `--max-workers `: Defines the maximum number of tasks running concurrently. If not set, uses _max_workers_ from datacenter.cfg, and if that’s not set, the available CPU threads, clamped to a maximum of 8, are used. - `--vms `: Only consider guests from this comma separated list of VMIDs. ``` -------------------------------- ### pve-ha-lrm start Source: https://pve.proxmox.com/pve-docs/pve-ha-lrm.8.html Start the daemon. ```APIDOC ## pve-ha-lrm start [OPTIONS] ### Description Start the daemon. ### Options - --debug (_default =_ 0) Debug mode - stay in foreground ``` -------------------------------- ### Start qmeventd Service Source: https://pve.proxmox.com/pve-docs/qmeventd.8.html Use this command to start the qmeventd service. Ensure systemd is managing the service. ```bash systemctl start qmeventd ``` -------------------------------- ### Enable Automatic Container Start on Boot Source: https://pve.proxmox.com/pve-docs/chapter-pct.html To ensure a container starts automatically when the host system boots, enable the 'Start at boot' option in the web interface or use the `pct` command. ```bash pct set --startup enabled ``` -------------------------------- ### Corosync Configuration File Example (Before Change) Source: https://pve.proxmox.com/pve-docs/chapter-pvecm.html An example of the corosync.conf file before modifying network addresses. Note the `ring0_addr` properties. ```ini logging { debug: off to_syslog: yes } nodelist { node { name: due nodeid: 2 quorum_votes: 1 ring0_addr: due } node { name: tre nodeid: 3 quorum_votes: 1 ring0_addr: tre } node { name: uno nodeid: 1 quorum_votes: 1 ring0_addr: uno } } quorum { provider: corosync_votequorum } totem { cluster_name: testcluster config_version: 3 ip_version: ipv4-6 secauth: on version: 2 interface { linknumber: 0 } } ``` -------------------------------- ### Start VM via HA Manager Source: https://pve.proxmox.com/pve-docs/chapter-ha-manager.html Initiate starting a VM managed by HA. This command is a shortcut that forwards the request to the HA stack, setting the resource's state to 'started'. ```bash # qm start 100 ``` -------------------------------- ### Enable Automatic Container Start on Host Boot Source: https://pve.proxmox.com/pve-docs/pct.1.html To ensure a container starts automatically when the Proxmox VE host boots, enable the 'Start at boot' option in the web interface or use the command-line tool. ```shell pct set --startup start=1 ``` -------------------------------- ### HA Resource Configuration Example Source: https://pve.proxmox.com/pve-docs/chapter-ha-manager.html An example of a resources.cfg file defining a virtual machine and a container resource with specific configurations. ```plaintext vm: 501 state started max_relocate 2 ct: 102 # Note: use default settings for everything ``` -------------------------------- ### Start SPICE Proxy Service Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Starts the SPICE proxy service. Use --debug to keep the service running in the foreground. ```bash spiceproxy start --debug ``` -------------------------------- ### Install FRR and FRR Python Tools Source: https://pve.proxmox.com/pve-docs/chapter-pvesdn.html Install the necessary FRR packages for fabric configuration. Ensure these are installed before proceeding with fabric setup. ```bash apt update apt install frr frr-pythontools ``` -------------------------------- ### Set VM to Start on Boot Source: https://pve.proxmox.com/pve-docs/chapter-qm.html Configure a virtual machine to automatically start when the host system boots. This is done via the web interface or using the 'qm set' command. ```bash qm set -onboot 1 ``` -------------------------------- ### Install QDevice Package on Cluster Nodes Source: https://pve.proxmox.com/pve-docs/chapter-pvecm.html Install the corosync-qdevice package on all Proxmox VE cluster nodes. Ensure all nodes are online before proceeding with the QDevice setup. ```bash pve# apt install corosync-qdevice ``` -------------------------------- ### Setup QDevice Source: https://pve.proxmox.com/pve-docs/pvecm.1.html Sets up the use of a QDevice for the cluster. ```APIDOC ## pvecm qdevice setup
[OPTIONS] ### Description Setup the use of a QDevice. ### Method `pvecm qdevice setup` ### Parameters #### Path Parameters - **address** (string) - Required - Specifies the network address of an external corosync QDevice. #### Options - **--force** (boolean) - Do not throw error on possible dangerous operations. - **--network** (string) - The network which should be used to connect to the external qdevice. ``` -------------------------------- ### Start Recovered Guests Source: https://pve.proxmox.com/pve-docs/chapter-pvesr.html After moving guest configuration files to a working node, start the guests using their respective commands (qm for QEMU/KVM, pct for LXC). ```bash # qm start 100 # pct start 200 ``` -------------------------------- ### Install FRRouting Package Source: https://pve.proxmox.com/pve-docs/chapter-pvesdn.html Install the frr-pythontools package on all nodes to use the FRRouting project for advanced SDN routing setups. This is an opt-in feature for SDN routing integration. ```bash apt update apt install frr-pythontools ``` -------------------------------- ### qm showcmd Source: https://pve.proxmox.com/pve-docs/qm.1.html Displays the command line used to start a virtual machine, useful for debugging. ```APIDOC ## qm showcmd ### Description Show command line which is used to start the VM (debug info). ### Parameters #### Path Parameters - **vmid** (integer) - Required - The (unique) ID of the VM. (100 - 999999999) #### Query Parameters - **--pretty** (boolean) - Optional - Puts each option on a new line to enhance human readability (default: 0) ``` -------------------------------- ### List BTRFS subvolumes Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Command to list all additional subvolumes on a BTRFS file system. This example shows how to list subvolumes starting from the root directory '/'. ```bash # btrfs subvolume list / ``` -------------------------------- ### Configure InfluxDB UDP Input Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Example configuration for an InfluxDB server to receive data over UDP from Proxmox VE. This setup listens on all interfaces and writes to the 'proxmox' database. ```toml [[udp]] enabled = true bind-address = "0.0.0.0:8089" database = "proxmox" batch-size = 1000 batch-timeout = "1s" ``` -------------------------------- ### pvenode startall Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Starts all VMs and containers on the current node. Optionally, it can force start even if 'onboot' is not set, and specify the maximum number of concurrent tasks. ```APIDOC ## pvenode startall [OPTIONS] ### Description Start all VMs and containers located on this node (by default only those with onboot=1). ### Method `pvenode startall` ### Parameters #### Options - `--force `: Issue start command even if virtual guest have _onboot_ not set or set to off. (_default =_ off) - `--max-workers `: Defines the maximum number of tasks running concurrently. If not set, uses _max_workers_ from datacenter.cfg, and if that’s not set, the available CPU threads, clamped to a maximum of 8, are used. (1 - 64) - `--vms `: Only consider guests from this comma separated list of VMIDs. ``` -------------------------------- ### Manage pve-ha-lrm Daemon Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Use these commands to manage the Proxmox VE Local Resource Manager daemon. Options include getting help, starting, checking status, and stopping the daemon. ```bash pve-ha-lrm help [OPTIONS] ``` ```bash pve-ha-lrm start [OPTIONS] ``` ```bash pve-ha-lrm status ``` ```bash pve-ha-lrm stop ``` -------------------------------- ### Configure Sendmail Notification Target Source: https://pve.proxmox.com/pve-docs/chapter-notifications.html Example configuration for a Sendmail notification target in Proxmox VE. This setup routes notifications to multiple email addresses and specifies a custom sender address. ```text sendmail: example mailto-user root@pam mailto-user admin@pve mailto max@example.com from-address pve1@example.com comment Send to multiple users/addresses ``` -------------------------------- ### Create VM with IDE disk and CD-ROM Source: https://pve.proxmox.com/pve-docs/chapter-qm.html Use this command to create a new virtual machine with specified disk and network configurations, booting from an ISO file. ```bash # qm create 300 -ide0 local-lvm:4 -net0 e1000 -cdrom local:iso/proxmox-mailgateway_2.1.iso ``` -------------------------------- ### pveceph start Source: https://pve.proxmox.com/pve-docs/pveceph.1.html Starts Ceph services. Allows specifying a particular service to start. ```APIDOC ## pveceph start [OPTIONS] ### Description Start ceph services. ### Options - **--service** (string) - Ceph service name. (default: ceph.target; allowed: ceph, mon, mds, osd, mgr, and their. variants) ``` -------------------------------- ### Setup QDevice in Proxmox VE Cluster Source: https://pve.proxmox.com/pve-docs/chapter-pvecm.html Initiate the QDevice setup by running this command on one of the Proxmox VE nodes. The command automatically copies SSH keys to the QDevice. Ensure key-based SSH access for the root user is set up on the external server. ```bash pve# pvecm qdevice setup ``` -------------------------------- ### pveceph start Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Starts Ceph services. Allows specifying a particular service or starting all services. ```APIDOC ## pveceph start [OPTIONS] ### Description Start ceph services. ### Parameters #### Query Parameters - **service** (string) - Optional - Ceph service name. (default: ceph.target) (allowed values: ceph, mon, mds, osd, mgr, and their variants like ceph.N, mon.N, etc.) ``` -------------------------------- ### VM Startup Behavior Source: https://pve.proxmox.com/pve-docs/qm.1.html Configure whether to start the VM after creation and define startup/shutdown behavior. ```APIDOC ## --start Start VM after it was created successfully. (_default_ = 0) ### Parameters - **start** (boolean) - Optional - Whether to start the VM after creation. ``` ```APIDOC ## --startup 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. ### Parameters - **order** (integer) - Optional - Startup order (non-negative number). - **up** (integer) - Optional - Delay in seconds before starting the next VM. - **down** (integer) - Optional - Delay in seconds before stopping the next VM. ``` -------------------------------- ### Create a new Virtual Machine Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Create a new VM using an ISO file from local storage, with a 4GB IDE disk on 'local-lvm' storage and an e1000 network device. ```bash # qm create 300 -ide0 local-lvm:4 -net0 e1000 -cdrom local:iso/proxmox-mailgateway_2.1.iso ``` -------------------------------- ### pvecm qdevice setup Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Sets up the use of a QDevice. ```APIDOC ## pvecm qdevice setup
[OPTIONS] ### Description Setup the use of a QDevice. ### Parameters #### Path Parameters - **address** (string) - Required - Specifies the network address of an external corosync QDevice. #### Options - **--force** (boolean) - Optional - Do not throw error on possible dangerous operations. - **--network** (string) - Optional - The network which should be used to connect to the external qdevice. ``` -------------------------------- ### Install HA Simulator Source: https://pve.proxmox.com/pve-docs/chapter-ha-manager.html Install the HA simulator package using apt. This package can also be installed on other Debian-based systems. ```bash apt install pve-ha-simulator ``` -------------------------------- ### Install ifupdown2 package Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Ensure the ifupdown2 package is installed, which is recommended for applying network changes without a reboot. This is the default for new Proxmox VE 7.0 installations. ```bash apt install ifupdown2 ``` -------------------------------- ### qm create Source: https://pve.proxmox.com/pve-docs/qm.1.html Creates a new virtual machine or restores one from a backup. ```APIDOC ## qm create [OPTIONS] Create or restore a virtual machine. ### Parameters * **vmid** ( 100 - 999999999) - The (unique) ID of the VM. ### Options * **--acpi** () - Enable/disable ACPI. (_default =_ 1) * **--affinity** () - List of host cores used to execute guest processes, for example: 0,5,8-11 * **--agent** ([enabled=]<1|0> [,freeze-fs=<1|0>] [,fstrim_cloned_disks=<1|0>] [,type=]) - Enable/disable communication with the QEMU Guest Agent and its properties. * **--allow-ksm** () - Allow memory pages of this guest to be merged via KSM (Kernel Samepage Merging). (_default =_ 1) * **--amd-sev** ([type=] [,allow-smt=<1|0>] [,kernel-hashes=<1|0>] [,no-debug=<1|0>] [,no-key-sharing=<1|0>]) - Secure Encrypted Virtualization (SEV) features by AMD CPUs * **--arch** () - Virtual processor architecture. Defaults to the host architecture. * **--archive** () - 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. * **--args** () - Arbitrary arguments passed to kvm. * **--audio0** (device= [,driver=]) - Configure a audio device, useful in combination with QXL/Spice. * **--autostart** () - Automatic restart after crash (currently ignored). (_default =_ 0) * **--balloon** ( 0 - N) - Amount of target RAM for the VM in MiB. The balloon driver is enabled by default, unless it is explicitly disabled by setting the value to zero. * **--bios** () - Select BIOS implementation. (_default =_ seabios) * **--boot** ([[legacy=]<[acdn]{1,4}>] [,order=]) - Specify guest boot order. Use the _order=_ sub-property as usage with no key or _legacy=_ is deprecated. * **--bootdisk** ((ide|sata|scsi|virtio)\d+) - Enable booting from specified disk. Deprecated: Use _boot: order=foo;bar_ instead. * **--bwlimit** ( 0 - N) - Override I/O bandwidth limit (in KiB/s). (_default =_ restore limit from datacenter or storage config) * **--cdrom** () - This is an alias for option -ide2 * **--cicustom** ([meta=] [,network=] [,user=] [,vendor=]) - cloud-init: Specify custom files to replace the automatically generated ones at start. * **--cipassword** () - 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. ``` -------------------------------- ### Initialize proxmox-boot-tool for GRUB on ESP Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Sets up a specific EFI system partition (ESP) for booting through GRUB using proxmox-boot-tool. This command must be run for each individual ESP. ```bash # proxmox-boot-tool init /dev/sda2 grub ``` -------------------------------- ### Start Firewall Service Source: https://pve.proxmox.com/pve-docs/pve-firewall.8.html Starts the Proxmox VE firewall service. ```APIDOC ## pve-firewall start Start the Proxmox VE firewall service. ### Usage ```bash pve-firewall start [OPTIONS] ``` ### Options * `--debug (_default =_ 0)`: Debug mode - stay in foreground. ``` -------------------------------- ### Install GRUB on New Bootable Device Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Install GRUB bootloader on the new disk. This is used for systems installed with Proxmox VE 6.3 or earlier, or manually migrated systems. ```bash # grub-install ``` -------------------------------- ### Install proxmox-firewall Package Source: https://pve.proxmox.com/pve-docs/chapter-pve-firewall.html Install the proxmox-firewall package using apt. ```bash apt install proxmox-firewall ``` -------------------------------- ### Create Cloud-Init Disk and Template Source: https://pve.proxmox.com/pve-docs/qm.1.html Add a Cloud-Init disk to an existing VM and convert it into a template. This is done after configuring Cloudbase-Init within the guest OS. ```bash qm set 9000 --ide2 local-lvm:cloudinit qm template 9000 ``` -------------------------------- ### qm cloudinit dump Source: https://pve.proxmox.com/pve-docs/qm.1.html Retrieves automatically generated cloud-init configuration for a virtual machine. ```APIDOC ## qm cloudinit dump Get automatically generated cloudinit config. ### Parameters * **vmid** ( 100 - 999999999) - The (unique) ID of the VM. * **type** () - Config type. ``` -------------------------------- ### Start a Container Source: https://pve.proxmox.com/pve-docs/pct.1.html Starts a specified container. This is a fundamental operation for running a container. ```bash # pct start 100 ``` -------------------------------- ### Configure VM Startup Order and Delays Source: https://pve.proxmox.com/pve-docs/qm.conf.5.html Defines the startup and shutdown order of VMs. 'order' sets the general startup sequence, with shutdown in reverse. 'up' and 'down' specify delays in seconds before starting or stopping the next VM. ```config startup: [[order=]\d+] [,up=\d+] [,down=\d+] ``` -------------------------------- ### Format and Initialize ESP with proxmox-boot-tool Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Format and initialize the EFI System Partition (ESP) on the new disk using proxmox-boot-tool. Use 'grub' as the mode if GRUB is indicated by 'proxmox-boot-tool status', especially with Secure Boot. ```bash # proxmox-boot-tool format # proxmox-boot-tool init [grub] ``` -------------------------------- ### Corosync Configuration File Example (After Change) Source: https://pve.proxmox.com/pve-docs/chapter-pvecm.html An example of the corosync.conf file after updating `ring0_addr` properties to new IP addresses on a separate network. The `config_version` is also incremented. ```ini logging { debug: off to_syslog: yes } nodelist { node { name: due nodeid: 2 quorum_votes: 1 ring0_addr: 10.10.10.2 } node { name: tre nodeid: 3 quorum_votes: 1 ring0_addr: 10.10.10.3 } node { name: uno nodeid: 1 quorum_votes: 1 ring0_addr: 10.10.10.1 } } quorum { provider: corosync_votequorum } totem { cluster_name: testcluster config_version: 4 ip_version: ipv4-6 secauth: on version: 2 interface { linknumber: 0 } } ``` -------------------------------- ### Create LVM Thin Logical Volume (Example) Source: https://pve.proxmox.com/pve-docs/chapter-sysadmin.html Example of creating a thin logical volume named 'vz' with a virtual size of 10GB within the 'pve' volume group's data thin pool. ```bash # lvcreate -n vz -V 10G pve/data ``` -------------------------------- ### pct start Source: https://pve.proxmox.com/pve-docs/pct.1.html Starts a container. This command brings a stopped container back online. ```APIDOC ## pct start [OPTIONS] ### Description Start the container. ### Parameters #### Path Parameters - **vmid** (integer): The (unique) ID of the VM. (100 - 999999999) #### Query Parameters - **debug** (boolean): If set, enables very verbose debug log-level on start. (default: 0) - **skiplock** (boolean): Ignore locks - only root is allowed to use this option. ``` -------------------------------- ### Start Linux Container Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Start a Linux container after its configuration file has been moved to a new node. ```bash # pct start 200 ``` -------------------------------- ### Start a Container with pct Source: https://pve.proxmox.com/pve-docs/chapter-pct.html Initiates the startup process for a specified container. Use the --debug flag for troubleshooting. ```bash # pct start 100 ``` ```bash # pct start CTID --debug ``` -------------------------------- ### Configure VM Auto Start Source: https://pve.proxmox.com/pve-docs/qm.1.html Set a virtual machine to start automatically when the Proxmox VE host boots. This is configured via the web interface or the command line. ```bash # qm set -onboot 1 ``` -------------------------------- ### pveceph install Source: https://pve.proxmox.com/pve-docs/pve-admin-guide.html Installs Ceph packages on Proxmox VE nodes, with options to select repository and version. ```APIDOC ## pveceph install [OPTIONS] ### Description Install ceph related packages. ### Parameters #### Query Parameters - **--allow-experimental** (boolean) - Optional - Allow experimental versions. Use with care! (_default =_ 0) - **--repository** (enterprise | manual | no-subscription | test) - Optional - Ceph repository to use. The _manual_ option will not configure any repositories. Use it if the host cannot access the public repositories, for example if Proxmox Offline Mirror is used. A repository that contains the Ceph packages for the version needs to be manually configured before starting the installation! (_default =_ enterprise) - **--version** (squid | tentacle) - Optional - Ceph version to install. (_default =_ squid) ```