Proxmox VE Overview and Install
Proxmox VE is an open source virtualisation platform (KVM virtual machines and LXC containers) based on Debian, with a web UI, clustering, ZFS and Ceph. PVE 9.x is based on Debian 13 (trixie), PVE 8.x on Debian 12 (bookworm).
Documentation: Proxmox VE Docs · Package Repositories
Verification: repository, upgrade and certificate details were read against the official docs (PVE 9.2 era). No command on this sheet was executed. Not verified:
pvenode acmeoption names,pveamdetails. Checkmanpages on your node before relying on them.
Other sheets in this section: Proxmox qm and pct · Proxmox Storage · Proxmox Disk Image Formats · Proxmox Networking · Proxmox Backup and Restore · Proxmox Clustering and HA · Proxmox Cloud-Init Templates · Proxmox GPU and PCIe Passthrough · Proxmox Users, Permissions, API Tokens and pvesh · Proxmox Firewall · Proxmox Troubleshooting and One-Liners
First Run #
- Install from the ISO, then open
https://<NODE-IP>:8006(log in asroot, realm Linux PAM). - Fix repositories (below), then update.
- Check the hostname resolves to the node IP:
hostname --ip-address(see Proxmox Troubleshooting and One-Liners). - Optional: ACME certificate, backup job, firewall (Proxmox Firewall).
| COMMAND | DESCRIPTION |
|---|---|
pveversion | Short PVE version |
pveversion -v | All package versions |
hostname --ip-address | Must return the node’s real IP, not 127.0.0.1 |
pvesm status | Storages (see Proxmox Storage) |
pveam update && pveam available --section system | Refresh and list LXC templates |
pveam download <STORAGE> <TEMPLATE> | Download a template (for example local) |
Repositories Without a Subscription #
PVE 9 (trixie, deb822 .sources format) #
Disable the enterprise repositories (they return 401 without a subscription):
/etc/apt/sources.list.d/pve-enterprise.sources
/etc/apt/sources.list.d/ceph.sourcesSet Enabled: false in each file, or delete them. Then create /etc/apt/sources.list.d/proxmox.sources:
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpgThe Ceph repository has its own no-subscription component, see the wiki page above for the current release name.
PVE 8 (bookworm, one-line format) #
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscriptionPut it in /etc/apt/sources.list (or a file in /etc/apt/sources.list.d/) and comment out the line in pve-enterprise.list.
The no-subscription repository is not recommended for production. It is fine for a home lab.
| COMMAND | DESCRIPTION |
|---|---|
apt modernize-sources | Convert old .list files to .sources (Debian 13) |
Updates #
| COMMAND | DESCRIPTION |
|---|---|
apt update | Refresh package lists |
apt dist-upgrade | Upgrade PVE (use this or apt full-upgrade, not plain apt upgrade) |
pve8to9 --full | Pre-upgrade checker for 8 to 9 (run until it is clean) |
reboot | Needed after a kernel update |
Major upgrade guide: Upgrade from 8 to 9. In a cluster, upgrade one node at a time and migrate guests off it first (Proxmox Clustering and HA). Take backups first (Proxmox Backup and Restore).
ACME Certificates #
GUI:
- Datacenter -> ACME -> add account
- Datacenter -> ACME -> add challenge plugin (for DNS challenges)
- Node -> Certificates -> ACME -> select account and add domain
- Node -> Certificates -> ACME -> order certificates now
CLI form:
pvenode acme account register default <EMAIL>
pvenode config set --acme domains=<FQDN>
pvenode acme cert orderFor a comparable flow on another platform, see TrueNAS Community Edition. Compare hypervisors in Hypervisors Compared.
Useful Host Basics #
| COMMAND | DESCRIPTION |
|---|---|
pvesh get /version | API version |
pvesh get /nodes | Nodes and status |
pvenode config get | Node options |
systemctl status pveproxy pvedaemon pvestatd | Core service state |
ssh root@<NODE> | Shell access, general Linux tips in Linux |
Further information #
- Ansible playbook that automates Linux VM updates running on Proxmox (including snapshots): TheDatabaseMe - update_proxmox_vm. See also Ansible Cheat-Sheet.
- Manage Proxmox VM templates with Packer: Use Packer to build Proxmox images
- Provision with Terraform using a Proxmox provider (not covered here).
- Running Docker: prefer a VM, or an LXC with nesting enabled, see Docker.