Proxmox VE 9.1 Homelab Setup Checklist: Verify Storage

Run this Proxmox VE 9.1 homelab checklist to verify updates, storage, networking, and backups before adding VMs for a stable, repeatable baseline you can trust.

8 min read
A compact homelab server rack with open drive bays, amber status lights, and neat cables in a dim home office.

A fresh Proxmox VE 9.1 install is not production-ready until you have verified updates, storage, networking, and backup paths with actual commands. This checklist turns a clean node into a stable homelab foundation by catching the common gaps before you add VMs and containers. It takes about 45 minutes on a single-node rackmount or mini-PC, and it gives you a repeatable baseline you can re-run after upgrades.

Key Takeaways

  • Base system: Confirm Proxmox VE 9.1, packages, kernel, and time are current before any workload.
  • Storage: Separate VM disks, ISOs, backups, and root filesystem so one full disk does not take down management.
  • Networking: Pin down bridge, VLAN, firewall, and management access before containers and VMs inherit the default.
  • Backup: Test a real backup job and a restore, not just the existence of a PBS storage.
  • Scope: Keep the first workloads small and isolated while you validate snapshots, backups, and firewall rules.

How to verify the base system is actually current

A clean install can still be missing a kernel update, a package security fix, or a time source that will bite you later. Treat the first hour after install as a verification pass, not a workload deployment pass.

Check the Proxmox version and package state

Start by confirming the node reports Proxmox VE 9.1 and that the package database is current.

pveversion -v
apt update
apt full-upgrade -y

If the upgrade touches the kernel, restart the node before you continue.

reboot

After the node returns, run the version command again. You want to see the 9.1 series and a kernel that matches your hardware.

Make time and hostname behave

Backups, logs, and firewall rules all depend on a consistent clock and a predictable hostname.

timedatectl status
systemctl status systemd-timesyncd --no-pager

If the time service is not active, enable it.

systemctl enable --now systemd-timesyncd

Set a short hostname that will not clash if you later add a second node.

hostnamectl set-hostname proxmox-01
hostnamectl status

Decide whether to enable the firewall now

The Proxmox firewall is disabled by default. For a homelab, I usually enable it early because it forces you to think about which services are exposed.

pve-firewall status
pve-firewall enable
pve-firewall start
pve-firewall status

Keep SSH and the management UI reachable while you test. If you lock yourself out, you can still recover through the console, but it is annoying to do that with a fresh node.

What storage checks prevent the most common homelab failures?

Most early homelab pain comes from running out of space in the wrong place. The default install gives you a workable layout, but it is not a final layout.

Inspect the default storage layout

List the storage that Proxmox already knows about.

pvesm status

Then break it down by type so you can see what is usable for VMs, ISOs, and backups.

pvesm status --type dir
pvesm status --type lvmthin
pvesm status --type zfs
pvesm status --type pbs

The default directory storage is convenient, but it lives on the root filesystem. I have seen a single 120 GiB Ubuntu VM image fill the local directory and make the web UI sluggish. That is the gotcha to watch for.

Choose a homelab storage target

Use the table below to decide what each storage should do before you create your first VM.

Check Fresh install state Homelab target
local directory VM images can share root with the OS ISOs and small disposable test VMs only
local-lvm Thin pool on local disk Main VM storage with explicit capacity limits
PBS storage Often absent Off-node or separate disk backup target
ZFS pool Optional Dedicated pool for VMs or NAS

If you are building a ZFS pool for VMs or a NAS, my Proxmox NAS ZFS pool guide covers pool layout, shares, and dataset choices: Proxmox NAS: Build a ZFS Pool with SMB and NFS Shares.

Verify disk capacity and pool health

Check the physical disks and the root filesystem.

lsblk
df -h /

For LVM-thin storage, inspect the volume group and logical volumes.

vgs
lvs

For ZFS, check pool health and dataset names.

zpool status
zfs list

The honest tradeoff here is simplicity versus isolation. Local LVM-thin is fast and simple, but it keeps VM disks on the same node. If that node dies, you still need backups or replication to recover. PBS or a second node solves that, but it adds another system to manage.

How to make networking predictable before adding workloads

Networking is where a homelab starts to drift. If you do not know which bridge carries management traffic, which VLANs exist, and which firewall rules are active, your first VM will inherit a mess.

Confirm the management interface and bridge

Look at the address and link state.

ip -brief addr show
ip link show type bridge

Then review the interface file so you know what will survive a reboot.

cat /etc/network/interfaces

A typical single-node homelab bridge looks like this.

auto lo
iface lo inet loopback

auto eno1
iface eno1 inet manual

auto vmbr0
iface vmbr0 inet static
    address 192.168.1.10/24
    gateway 192.168.1.1
    bridge-ports eno1
    bridge-stp off
    bridge-fd 0

If you are deciding between VLAN and VXLAN, my VLAN vs VXLAN guide covers the tradeoffs for existing bridges and new SDN zones: VLAN vs VXLAN in Proxmox VE.

Make firewall rules explicit

If you enabled the firewall in the base system pass, verify that it is still active after a reboot.

pve-firewall status

Before you add VMs, write down which ports must be reachable from your LAN: SSH, the Proxmox UI, and any management services you actually use. If you plan to add a second node later, keep management access predictable across nodes from the start.

What backup checks prove your restore path works?

A backup target in the storage list is not a backup strategy. You need a scheduled job, a completed backup, and a restore test.

Confirm a backup target exists

Check whether Proxmox has a PBS storage or another backup-capable storage.

pvesm status --type pbs
pvesm status --type dir

If you are using PBS 4.2 with S3, my PBS 4.2 S3 backup pre-flight checklist covers datastore, retention, and bandwidth checks: PBS 4.2 S3 Backup Pre-Flight Checklist for Production.

Create a scheduled job and test it

For the first test, use the local directory storage if it exists. It is not the best long-term target, but it proves the backup path.

vzdump --storage local --all --mode snapshot

If you have a PBS storage named pbs, create a daily job instead.

vzdump --storage pbs --all --mode snapshot --schedule daily --time 02:00

A 200 GiB VM with mostly static data can finish a first full backup in 10 to 20 minutes on a 1 GbE link, but the first run may be longer. Do not assume the job succeeded because the command returned quickly.

Verify a restore before trusting it

List the backups that exist.

vzdump --list local

Then restore one test VM to a new VM ID.

vzrestore --storage local 100:backup:0 --vmid 101

If the restore fails, fix the storage path, permissions, or network issue before you add real workloads. A backup you have not restored is a hope, not a plan.

Which first workloads are safe to deploy after this checklist?

Now you have a node that is current, has a defined storage plan, a known bridge, and a tested backup path. The next step is to keep the first workloads small.

Start with one management or test VM

Create one small VM and confirm it appears in the list.

qm list

After you create it, check its status.

qm status 100

Use local-lvm or ZFS for the disk if you followed the storage table. Keep the disk size modest, and confirm that the backup job picks it up.

Add containers only after backup and firewall rules are proven

Containers are convenient, but they increase the number of ports and services you need to track.

pct list

If you plan to run OCI image containers, my OCI LXC setup guide covers the tradeoffs and the basic configuration: OCI Image Containers in Proxmox VE 9.1: Setup and Tradeoffs.

Do not add a full stack of services on day one. Run one VM and one container, verify backups, verify firewall rules, and only then expand.

Conclusion

This checklist turns a fresh Proxmox VE 9.1 node into a stable homelab foundation by verifying updates, storage, networking, and backup before workloads are added. Your next step is to run the storage and backup commands on your own node, create one small test VM, and restore it before you deploy any real service.

Share
Proxmox Pulse

Written by

Proxmox Pulse

Sysadmin-driven guides for getting the most out of Proxmox VE in production and homelab environments.

Related Articles

View all →