Skip to content

Proxmox LVM vs LVM-Thin vs ZFS: Which Storage Should You Use?

Compare Proxmox storage options: LVM, LVM-Thin, and ZFS. How each handles thin provisioning, snapshots, RAM/ARC use, and performance, plus which to pick for your setup.

SDSysadmin Desk June 29, 2026 7 min read
Diagram-style cover comparing LVM, LVM-Thin, and ZFS storage layouts in Proxmox with snapshot and thin-provisioning labels

When you install Proxmox or add a disk, you have to tell it how to store virtual machines. The three local options you’ll meet are LVM, LVM-Thin, and ZFS, and the choice affects whether you can take snapshots, how efficiently you use disk space, and how much RAM the system eats. Pick wrong and you find out later, usually when you try to snapshot a VM and the option isn’t there.

This breaks down what each one is, how they differ on thin provisioning and snapshots, why ZFS wants so much memory, and which to choose for common setups. None of them is “best” outright — they trade simplicity, features, and safety against each other.

The three options at a glance

Before the details, here’s the shape of the decision:

LVM vs LVM-Thin vs ZFS in Proxmox

LVM (thick) Classic volume manager. Allocates full disk size up front. No snapshots in Proxmox. Low overhead.
LVM-Thin LVM with thin provisioning. Allocates space as written. Supports snapshots. Low overhead.
ZFS Filesystem + volume manager + software RAID. Thin by default, snapshots, checksums, compression. Hungry for RAM.
Thin provisioning LVM: no. LVM-Thin: yes. ZFS: yes.
Snapshots LVM: no. LVM-Thin: yes. ZFS: yes.
Software RAID LVM: no (needs mdadm/hardware). LVM-Thin: no. ZFS: yes, built in.
Data checksumming LVM: no. LVM-Thin: no. ZFS: yes.
RAM appetite LVM/LVM-Thin: minimal. ZFS: high (ARC cache).

LVM: simple and predictable, but no snapshots

LVM (Logical Volume Manager) is the traditional Linux way to carve disks into flexible volumes. In Proxmox, a thick LVM storage gives each VM a logical volume of a fixed size, allocated in full the moment you create the disk. Ask for a 100 GB disk and 100 GB is reserved immediately, whether the VM writes to it or not.

That predictability is the upside. There’s almost no overhead, performance is consistent, and there’s no caching layer to tune. The catch is the one that matters most for day-to-day work: thick LVM in Proxmox does not support snapshots. You can’t grab a point-in-time copy before a risky update, which is something you’ll want constantly.

LVM-Thin: thin provisioning plus snapshots

LVM-Thin is LVM with a thin pool. Instead of reserving a VM’s full disk size up front, it allocates blocks only as the guest actually writes them. Create a 100 GB disk on a VM that only uses 12 GB, and just 12 GB is consumed on the pool. This is thin provisioning, and it lets you over-commit storage — define more virtual disk than you physically have, on the bet that not every VM fills up at once.

Crucially, LVM-Thin also supports snapshots. You can snapshot a VM before an upgrade, test the change, and roll back if it breaks. That alone makes it the better default over thick LVM for local disks.

The default Proxmox installer on ext4 actually sets up an LVM-Thin pool called local-lvm for you, so many people are using it without realizing.

There’s a related failure people hit when the install disk fills up. If you ever see the local-lvm pool reported as full, that’s the thin pool exhausting its real space, and it’s worth understanding before it happens in production.

ZFS: the feature-rich, RAM-hungry option

ZFS is a different animal. It’s a filesystem, a volume manager, and a software RAID system rolled together, and it brings features the LVM options don’t have:

  • Built-in software RAID — mirrors (RAID1), RAID10, and RAIDZ (parity, like RAID5/6) with no hardware RAID card.
  • Snapshots and clones — instant, cheap, copy-on-write snapshots.
  • Checksumming — every block is checksummed, so ZFS detects silent data corruption (bit rot) and, with redundancy, repairs it automatically.
  • Compression — transparent compression (lz4) that often saves space and can even improve throughput.
  • Thin provisioning — on by default.

That’s a strong list, and it’s why ZFS is popular for hosts that need data integrity and redundancy. But it comes with a real cost in memory.

The ARC: why ZFS wants your RAM

ZFS uses free RAM as a read cache called the ARC (Adaptive Replacement Cache). The more memory it has, the more it caches, and the faster reads get. The rough sizing guideline is about 1 GB of RAM per terabyte of pool, on top of whatever your VMs need — and more is better for performance.

On a server with plenty of RAM that’s fine. On an 8 GB box, a large ZFS pool and a couple of VMs will fight over memory, and your VMs lose. You can cap the ARC to stop it eating everything:

# limit ZFS ARC to 4 GB (value is in bytes)
options zfs zfs_arc_max=4294967296

After editing, update the initramfs and reboot for it to take effect:

update-initramfs -u
reboot

Single-disk ZFS detects corruption but can’t fix it

You can run ZFS on one disk and still get snapshots, compression, and corruption detection via checksums. What you don’t get is repair — fixing bit rot needs a second copy of the data, which means a mirror or RAIDZ. So single-disk ZFS tells you when something’s wrong but can’t heal it. For real data safety, ZFS wants two or more disks.

How to choose

Match the storage to your hardware and what you actually need.

Pick based on your setup

  • One disk, want simplicity and snapshots: LVM-Thin (the installer's default)
  • One disk, want checksums/compression and have spare RAM: single-disk ZFS
  • Two or more disks, want software RAID + snapshots + integrity: ZFS (mirror or RAIDZ)
  • Hardware RAID card already handling redundancy: LVM-Thin on top of it
  • Tight on RAM (8 GB or less): avoid large ZFS pools, prefer LVM-Thin
  • Need maximum, predictable performance on a single modest SSD: LVM-Thin

A few plain recommendations:

  • For most single-disk installs, LVM-Thin is the sensible default. It’s what the installer gives you on ext4, it does thin provisioning and snapshots, and it stays out of your RAM.
  • Choose ZFS when you have two or more disks and want redundancy plus data-integrity checking, and you can feed it the memory. Pair it with enterprise SSDs (or HDDs) rather than cheap consumer drives.
  • Thick LVM is rarely the best choice today. Its lack of snapshots outweighs its simplicity for most people. Reach for it only when you specifically don’t want any thin-provisioning or caching behavior.

Bottom line

LVM-Thin and ZFS both give you the snapshots you’ll want; plain thick LVM doesn’t. The split between them is about hardware and goals: LVM-Thin for a light, fast, single-disk setup, and ZFS for multi-disk redundancy and data integrity when you can spare the RAM and use decent drives.

The storage choice happens during setup, so it’s worth reading the bare-metal install guide where this decision comes up, and if you’re still comparing platforms, the Proxmox VE vs VMware ESXi guide covers the broader picture. For more, browse the Proxmox guides.

Frequently asked questions

What's the difference between LVM and LVM-Thin in Proxmox?

Plain LVM allocates a disk's full size to a VM up front and can't take snapshots in Proxmox. LVM-Thin allocates space only as the VM actually writes data (thin provisioning) and supports snapshots. For local disk storage on Proxmox, LVM-Thin is almost always the better of the two.

Does LVM support snapshots in Proxmox?

Thick LVM does not support snapshots in Proxmox, which is its biggest limitation. LVM-Thin does support snapshots, and so does ZFS. If you want to snapshot a VM before an update or change, you need LVM-Thin or ZFS, not plain LVM.

How much RAM does ZFS need in Proxmox?

ZFS uses free RAM as a read cache called the ARC. A common guideline is roughly 1 GB of RAM per terabyte of pool storage, on top of what your VMs use, with more being better for performance. On a host with only 8 GB total, a large ZFS pool can starve your VMs, so size memory accordingly.

Is ZFS faster than LVM in Proxmox?

It depends on the workload and hardware. ZFS can be very fast for reads thanks to its ARC cache, but its checksumming and copy-on-write design add overhead, and it suffers badly on consumer SSDs without power-loss protection. Plain LVM and LVM-Thin are lighter and often faster on a single modest disk.

Can I use ZFS with a single disk?

Yes, but you lose its main safety feature. ZFS can detect corruption with checksums on a single disk, but it can't repair it without a second copy (a mirror or RAIDZ). Single-disk ZFS still gives you snapshots and compression, but for redundancy you need two or more disks.

Which storage should I choose for a new Proxmox install?

For one disk and simplicity, LVM-Thin is the sensible default — it gives you thin provisioning and snapshots with low overhead. For two or more disks where you want software RAID, snapshots, and data integrity checks, and you have the RAM to spare, choose ZFS. Plain thick LVM is rarely the best pick today.

Sources & further reading

Official vendor documentation referenced while writing this guide.

SD

Sysadmin Desk

Infrastructure & Cloud

Hands-on guidance for infrastructure, virtualization, and containers — Hyper-V, VMware, Docker, and the day-to-day operations work that keeps environments running.

MCSA Guru provides independent, educational IT guidance. Microsoft, Windows, Windows Server, Microsoft 365, Exchange, and Microsoft Teams are trademarks of Microsoft Corporation; Docker is a trademark of Docker, Inc. MCSA Guru is not affiliated with or endorsed by Microsoft or Docker. Always test changes in a safe environment before applying them in production.

Related guides

Fixing something right now?

Jump straight into the guide library or search for the exact error or task you are dealing with.