Emergency server help: get in touch

Install Proxmox VE 9: Step-by-Step Setup on Bare Metal

A complete Proxmox VE 9 installation: prepare the hardware and USB stick, choose ZFS or ext4, set the management network, switch to the no-subscription repository, update, and create the first virtual machine.

Published Updated 5 min read

This guide shows how to install Proxmox VE 9 on a physical server, from the USB stick to the first running virtual machine. Proxmox VE is a free, open-source hypervisor built on Debian that runs KVM virtual machines and LXC containers from a web interface. Version 9.2 (released May 2026) is based on Debian 13 “Trixie”; the steps are the same for any 9.x release.

Short answer: Enable VT-x/AMD-V and VT-d in the BIOS, write the Proxmox VE 9 ISO to a USB stick, boot it and choose the graphical installer. Pick ZFS RAID1 on two disks (or ext4 on hardware RAID), set a static management IP, finish, then open https://SERVER-IP:8006. Disable the enterprise repository, enable pve-no-subscription, run apt update && apt full-upgrade, and upload an ISO to create your first VM.

What you need

ItemMinimumRecommended
CPU64-bit Intel or AMD with VT-x / AMD-VServer CPU with VT-d / AMD-Vi for PCI passthrough
RAM2 GB for Proxmox itself plus guest memory32 GB or more; ZFS needs about 1 GB per TB of storage extra
DisksOne diskTwo SSDs for ZFS RAID1 boot, separate disks or NVMe for VM storage
NetworkOne NICTwo or more NICs: management and VM traffic separated

Download the current ISO from the Proxmox downloads page and write it with dd, Rufus (DD mode) or balenaEtcher:

lsblk                      # find the USB stick, e.g. /dev/sdX
dd if=proxmox-ve_9.2-1.iso of=/dev/sdX bs=4M status=progress conv=fsync

Step 1: prepare the BIOS

Enable Intel VT-x or AMD-V (SVM), and VT-d or AMD-Vi (IOMMU) if you plan PCI passthrough. Use UEFI boot and disable Secure Boot only if your board’s firmware causes problems; Proxmox VE 9 supports Secure Boot. Set the USB stick as the first boot device.

Step 2: run the installer

  1. Choose Install Proxmox VE (Graphical). The terminal UI option works the same way on servers without a graphics card.
  2. Accept the licence and select the target disk. Click Options to choose the file system: ZFS (RAID1) across two identical disks gives bootable redundancy and snapshots; ext4 or xfs with LVM-thin suits a single disk or a hardware RAID controller. Do not put ZFS on top of hardware RAID.
  3. Set country, time zone and keyboard layout.
  4. Enter a strong root password and an e-mail address for alerts.
  5. Set the management network: interface, fully qualified hostname (for example pve1.example.com), static IP in CIDR form, gateway and DNS server.
  6. Check the summary and install. The server reboots after a few minutes; remove the USB stick.

Step 3: first login and repositories

Browse to https://SERVER-IP:8006, accept the self-signed certificate and log in as root with realm Linux PAM. Without a subscription, switch to the free repository so updates work. Proxmox VE 9 uses deb822 .sources files:

cd /etc/apt/sources.list.d/
sed -i 's/^Enabled:.*//; $a Enabled: false' pve-enterprise.sources   # disable enterprise repo
cat > proxmox.sources <<'EOF'
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF
apt update && apt full-upgrade -y
pveversion

If you do not use Ceph, also disable ceph.sources the same way. The same change can be made in the web interface under Node » Updates » Repositories.

Step 4: network and storage

The installer creates the Linux bridge vmbr0 on the management NIC; VMs attached to it sit on the same network. Add a second bridge for VM traffic on another NIC under Node » System » Network, or a VLAN-aware bridge to put VMs on tagged VLANs. Add extra disks under Node » Disks as a ZFS pool or LVM-thin and register them in Datacenter » Storage.

Step 5: create the first VM

  1. Upload an installer ISO to local » ISO Images, or use Download from URL.
  2. Click Create VM: choose the ISO, machine type q35, SCSI controller VirtIO SCSI single, disk with Discard and IO thread enabled, CPU type host for a single node, network model VirtIO on vmbr0.
  3. For Windows guests, attach the VirtIO drivers ISO as a second CD so the installer can see the disk.
  4. After the OS is installed, install qemu-guest-agent in the guest and enable the agent option on the VM.

Step 6: secure and back up

Create a non-root admin user with two-factor authentication under Datacenter » Permissions, restrict port 8006 to your admin network with the built-in firewall, and schedule backups under Datacenter » Backup, ideally to a Proxmox Backup Server so restores are incremental and verified.

Install Proxmox VE 9 at a glance

Install Proxmox VE 9 summary card: Enable VT-x/AMD-V and VT-d in the BIOS, write the Proxmox VE 9 ISO to a USB stick, boot it and choose the graphical…
In short: Enable VT-x/AMD-V and VT-d in the BIOS, write the Proxmox VE 9 ISO to a USB stick, boot it and choose the graphical installer.

Official documentation: Proxmox VE documentation, Proxmox VE package repositories.

Related guides: Proxmox vs ESXi 9 for hosting · Migrate VMware to Proxmox VE 9 · Install VMware ESXi 9.

Frequently asked questions

Is Proxmox VE free to use?

Yes. Proxmox VE is open source under the AGPL and free to use in production. A paid subscription gives access to the enterprise repository and support; without it you use the no-subscription repository.

Should I choose ZFS or ext4 during installation?

Choose ZFS RAID1 when you have two identical disks and no hardware RAID; it adds redundancy, snapshots and checksums. Choose ext4 with LVM-thin on a single disk or behind a hardware RAID controller.

How do I remove the “no valid subscription” message?

The message is only a reminder on login. It does not limit features. Buying a subscription removes it; switching repositories as shown above keeps updates working without one.

Free website test

Is your website set up right?

Check SSL, security headers, redirects, robots.txt, sitemap, llms.txt and security.txt in one test. It takes about 30 seconds.