Skip to main content

Proxmox VE CLI Cheat Sheet 2026 — Quick CLI Command Reference

Proxmox VE CLI Cheat Sheet 2026 — Quick Command Reference

Proxmox VE CLI Cheat Sheet is the complete quick-reference of Proxmox VE CLI commands grouped by function. Copy any command with one click and find what you need with Ctrl+F in under 3 seconds.

VMs (QEMU/KVM)

Action Command Useful flags
List all VMs
qm list
Start a VM
qm start <vmid>
Stop a VM
qm stop <vmid>
Shutdown a VM gracefully
qm shutdown <vmid>
Destroy a VM with purge
qm destroy <vmid> --purge
--purge
Create a new VM
qm create <vmid> --name <name> --memory <mb> --net0 <model=...,bridge=...>
--name --memory --net0
Show current VM configuration
qm config <vmid> --current
--current
Migrate a VM online to another node
qm migrate <vmid> <target-node> --online
--online

LXC Containers

Action Command Useful flags
Create a container
pct create <vmid> <template> --storage <storage> --hostname <hostname> --password <password>
--storage --hostname --password
Start a container
pct start <vmid>
Stop a container
pct stop <vmid>
Shutdown a container
pct shutdown <vmid>
Destroy a container
pct destroy <vmid>
List all containers
pct list
Enter a container shell
pct enter <vmid>
Set container resource limits
pct set <vmid> --memory <mb> --swap <mb> --cores <cores>
--memory --swap --cores

Storage & ZFS

Action Command Useful flags
No commands detected for this group.

Clustering & HA

Action Command Useful flags
No commands detected for this group.

Networking & Bridges

Action Command Useful flags
No commands detected for this group.

Backups & Snapshots

Action Command Useful flags
Create a VM snapshot
qm snapshot <vmid> <snapname>
List VM snapshots
qm listsnapshot <vmid>
Delete a VM snapshot
qm delsnapshot <vmid> <snapname>
Create a container snapshot
pct snapshot <vmid> <snapname>
List container snapshots
pct listsnapshot <vmid>
Delete a container snapshot
pct delsnapshot <vmid> <snapname>

pvesh & API

Action Command Useful flags
List all API endpoints
pvesh get / --output-format json
--output-format json
List VMs on a specific node
pvesh get /nodes/<node>/qemu
Get VM status
pvesh get /nodes/<node>/qemu/<vmid>/status/current
Create a new VM with minimal parameters
pvesh create /nodes/<node>/qemu --vmid <vmid> --name <name>
--vmid --name
Update VM memory configuration
pvesh set /nodes/<node>/qemu/<vmid>/config --memory <mb>
--memory
Delete a VM
pvesh delete /nodes/<node>/qemu/<vmid>
Get node status
pvesh get /nodes/<node>/status

Diagnostics & Logs

Action Command Useful flags
Get recent tasks on a node
pvesh get /nodes/<node>/tasks
Follow pvedaemon logs
journalctl -u pvedaemon -f
-u pvedaemon -f
Follow pveproxy logs
journalctl -u pveproxy -f
-u pveproxy -f

⚠️ Dangerous / Destructive Commands

These commands are irreversible. Verify your environment (dev/staging vs prod) before running them.

Action Command Warning
⚠️ Destroy ⚠️
qm destroy <vmid> --purge
Irreversible — verify the target before running
⚠️ Destroy ⚠️
pct destroy <vmid>
Irreversible — verify the target before running
⚠️ Get
pvesh get / --output-format json
Irreversible — verify the target before running
⚠️ Delete
pvesh delete /nodes/<node>/qemu/<vmid>
Irreversible — verify the target before running

FAQ — Frequently Asked Questions

What is the difference between VMs (QEMU/KVM) and LXC Containers?

Each group in this Proxmox VE CLI cheat sheet covers a distinct area. VMs (QEMU/KVM) focuses on its specific scope, while LXC Containers and the remaining groups cover networking, storage, security and diagnostics respectively.

How do I check the installed Proxmox VE CLI version?

Run the version command (usually qm version or qm --version). The output shows the client and, when applicable, the server version.

Why does Proxmox VE CLI return ‘permission denied’?

A ‘permission denied’ error in Proxmox VE CLI usually means the current user lacks sufficient privileges or credentials are not configured. Check: (1) assigned IAM/RBAC roles, (2) an active authentication context via the corresponding login command.

How do I filter Proxmox VE CLI output by status or name?

Use flags such as --filter, --selector or --query depending on the tool. You can also pipe into grep or jq to process JSON:

qm list | grep RUNNING

What is the fastest way to debug a Proxmox VE CLI error?

Add the verbose flag (--verbose, -v or --debug) to the failing command. This reveals the underlying HTTP/API calls and the full error response body.

Official sources & references

Commands cross-checked against vendor documentation and high-authority repositories: