How to Install Proxmox VE
Proxmox VE installs directly on bare metal, replacing whatever operating system was previously on the server. It is based on Debian Linux with the Proxmox kernel and management tools layered on top. Do not install Proxmox inside an existing Linux distribution or as a virtual machine for production use, as it is designed to be the host operating system that manages all virtualization on the hardware.
Step 1: Verify Hardware Requirements and BIOS Settings
Proxmox VE requires a 64-bit processor (x86_64/AMD64) with hardware virtualization support: Intel VT-x or AMD-V. These extensions allow the hypervisor to run guest operating systems at near-native speed. Without them, KVM virtualization will not function.
Minimum hardware is 2 GB of RAM and 8 GB of storage, but production deployments should target at least 16 GB of RAM (more if running multiple VMs) and fast SSD or NVMe storage. ECC memory is recommended for servers running critical workloads, particularly if you plan to use ZFS, which benefits from ECC for data integrity guarantees.
Before installing, enter the server's BIOS or UEFI firmware settings and verify the following. Enable Intel VT-x (often listed as "Intel Virtualization Technology") or AMD-V (often called "SVM Mode"). Enable Intel VT-d or AMD IOMMU if you plan to pass physical hardware (GPUs, network cards, storage controllers) directly to VMs. Set the boot mode to UEFI if your hardware supports it, as UEFI provides faster boot times and supports GPT partitioning for disks larger than 2 TB. Disable Secure Boot, as Proxmox does not ship signed bootloaders by default (though community-supported workarounds exist).
Step 2: Create the Installation USB Drive
Download the latest Proxmox VE ISO image from the official Proxmox downloads page. The ISO is typically around 1.2 GB. Verify the SHA256 checksum against the value published on the download page to ensure the file was not corrupted or tampered with during download.
On Windows, use Rufus or balenaEtcher to write the ISO to a USB flash drive of at least 2 GB. Select "DD mode" in Rufus if prompted, as the ISO image mode may not boot correctly on all hardware. On macOS or Linux, use balenaEtcher for a graphical interface, or use the dd command. Identify your USB drive device (use lsblk on Linux or diskutil list on macOS to find it), then run: dd bs=4M if=proxmox-ve.iso of=/dev/sdX status=progress. Replace /dev/sdX with your actual USB device path. This command will overwrite the target device without confirmation, so double-check the device path before running it.
Step 3: Boot and Run the Installer
Insert the USB drive into the server and boot from it. You may need to press a key (F11, F12, or Esc depending on the manufacturer) to access the boot menu, or change the boot order in BIOS to prioritize USB devices.
The Proxmox boot menu appears with several options. Select "Install Proxmox VE (Graphical)" for the standard installation with a visual interface. The text-mode installer is available for servers without graphics output or when the graphical installer encounters display driver issues.
The installer walks through several configuration screens. First, accept the End User License Agreement. Next, select the target disk where Proxmox will be installed. The installer offers several filesystem options: ext4 (the default, reliable and well-tested), XFS (good for large file workloads), ZFS in various RAID configurations (RAID0, RAID1, RAID10, RAIDZ, RAIDZ2, RAIDZ3), and Btrfs (experimental). For a single-disk server, ext4 is the simplest choice. For servers with multiple disks, ZFS RAID1 (mirror) or RAID10 provides both redundancy and performance. The "Options" button on the disk selection screen lets you adjust partition sizes for the root filesystem and swap.
Configure your country, timezone, and keyboard layout. Set a strong root password and provide an email address for system notifications (critical alerts like disk failures or cluster events will be sent here). On the network configuration screen, select the management network interface, assign a static IP address on your management network, set the subnet mask and gateway, and provide a DNS server address. The hostname should be a fully qualified domain name (FQDN) like pve1.internal.example.com, even if it only resolves internally.
Review the summary screen and click "Install" to begin. The installation writes the base system to disk, configures GRUB, sets up the network, and installs the Proxmox packages. When complete, remove the USB drive and reboot.
Step 4: Configure Storage
After the server reboots, access the Proxmox web interface by opening a browser and navigating to https://your-server-ip:8006. Log in as root with the password you set during installation. The browser will show a certificate warning because Proxmox uses a self-signed SSL certificate by default, which is expected and safe to accept for the management interface.
The default installation creates a local-lvm storage for VM disk images and a local storage for ISO images, container templates, and backup files. For many single-server deployments, this default configuration is sufficient to start creating VMs immediately.
To add ZFS storage, navigate to Disks > ZFS in the web interface and create a new ZFS pool from available disks. ZFS provides copy-on-write snapshots, built-in compression (LZ4 is recommended for a good balance of speed and compression ratio), data checksumming for integrity verification, and native replication to remote Proxmox servers.
For shared storage in multi-node environments, go to Datacenter > Storage and add NFS, iSCSI, or CIFS shares. Shared storage is required for live migration and high availability, as VMs need access to their disk images from any node in the cluster. For hyperconverged deployments, Ceph can be configured through the web interface under Ceph in the node menu, though Ceph requires at least three nodes and dedicated network bandwidth for replication traffic.
Step 5: Complete Post-Installation Configuration
Several configuration tasks should be completed before deploying production workloads.
Package repositories: Proxmox defaults to the enterprise repository, which requires a valid support subscription. If you are using the free community edition, disable the enterprise repository and enable the no-subscription repository. In the web interface, go to the node, then Updates > Repositories. Disable the enterprise repository and add the no-subscription repository. Then run an update from the Updates panel to pull the latest packages.
System updates: Apply all available updates before creating any VMs. The web interface provides an Updates panel for each node, or you can use the built-in shell (accessible from the web interface) to run apt update and apt dist-upgrade. Reboot after kernel updates to ensure the latest Proxmox kernel is active.
Networking: If your environment uses VLANs, configure VLAN-aware bridges. Edit the network configuration in the node's Network panel, check "VLAN Aware" on the Linux bridge, and apply the changes. VMs can then be assigned to specific VLANs by setting the VLAN tag on their network interfaces.
Backup configuration: Set up a backup schedule under Datacenter > Backup. Define backup jobs that specify which VMs to back up, the schedule (daily, weekly), the storage target, the backup mode (snapshot for live backups with minimal disruption, suspend for consistent but brief downtime, or stop for guaranteed consistency), and retention policies. Consider deploying a Proxmox Backup Server on a separate machine or VM for incremental, deduplicated backups.
Users and permissions: Create user accounts for other administrators rather than sharing the root password. Proxmox supports Linux PAM authentication, its own built-in PVE authentication, and LDAP/Active Directory integration. Role-based access control lets you grant granular permissions at the datacenter, node, VM, or storage level.
Cluster creation: If you have multiple Proxmox servers, create a cluster from the Datacenter > Cluster panel on the first node, then join additional nodes to the cluster. Clustering enables live migration, HA, shared configuration, and centralized management. A minimum of three nodes is recommended for quorum, though two-node clusters with an external Corosync QDevice are supported.
Proxmox VE installation is straightforward and the platform is functional immediately after the installer completes. The critical post-installation steps are configuring the correct package repository, applying updates, setting up storage and backup schedules, and creating non-root user accounts before deploying production workloads.