
TrueNAS Core: Your First Storage Pool Explained
A beginner's guide to ZFS storage pools, VDEVs, and choosing the right redundancy for your homelab.
TrueNAS Core: Your First Storage Pool Explained
If you've just installed TrueNAS Core, you're probably staring at a blank screen in the Storage menu, wondering why you can't just "format a drive" and start copying files.
The reason is ZFS.
TrueNAS isn't like a standard Windows or Linux setup where you create a partition and call it a day. It uses a hierarchical storage architecture: Pools → VDEVs → Datasets. Understanding this hierarchy is the difference between a rock-solid data fortress and a catastrophic loss of files.
The Storage Hierarchy: A Quick Primer
Before we click "Create Pool", we need to understand the three layers of ZFS storage.
1. The Pool (zpool)
The pool is the top-level container. It's the total amount of storage available to your system. You don't "format" a pool; you add VDEVs to it. A pool can span multiple VDEVs, and as you add more, your total capacity and performance increase.
2. The Virtual Device (VDEV)
A VDEV is a group of one or more physical disks. This is where the "magic" of redundancy happens. The VDEV determines how your data is striped and mirrored.
Crucial Rule: If you lose more disks in a VDEV than its redundancy allows, the entire pool is lost. You cannot recover data from one healthy VDEV if another VDEV in the same pool has failed.
3. The Dataset
Datasets are like "folders on steroids". Instead of creating one giant partition, you create datasets for different purposes (e.g., Media, Backups, VM-Storage). Each dataset can have its own properties, such as compression levels, quotas, and snapshot schedules.
Choosing Your VDEV Layout
When creating your first pool, you'll have to choose a layout. This is the most important decision you'll make in TrueNAS.
Mirroring (RAID 1 / 10)
Data is duplicated across two or more disks.
- How it works: Every bit of data is written to two disks.
- Redundancy: Can lose any disk in a mirror.
- Pros: Fastest performance (especially for writes), fastest rebuild times, easiest to expand (just add another mirror).
- Cons: You lose 50% of your raw capacity.
- Best for: VM storage, databases, and small pools (2–4 drives).
RAIDZ1 (Similar to RAID 5)
Data and parity are striped across three or more disks.
- How it works: One disk's worth of capacity is used for parity.
- Redundancy: Can lose exactly one disk.
- Pros: Better capacity utilization than mirroring.
- Cons: Slower write speeds; rebuilds are stressful on the remaining disks.
- Best for: Media storage, large file archives.
RAIDZ2 (Similar to RAID 6)
Data and parity are striped across four or more disks.
- How it works: Two disks' worth of capacity are used for parity.
- Redundancy: Can lose two disks.
- Pros: Extremely safe; the gold standard for high-capacity homelabs.
- Cons: Even less usable space than RAIDZ1.
- Best for: Critical data, very large drive arrays (6+ drives).
RAIDZ3
- Redundancy: Can lose three disks.
- Best for: Enterprise-grade paranoia or massive arrays of cheap, unreliable drives.
Striping (RAID 0)
No redundancy.
- Warning: If one disk fails, everything in the pool is gone.
- Best for: Temporary data, scratch disks, or things you have backed up elsewhere.
Step-by-Step: Creating Your First Pool
Step 1: The Hardware Check
Ensure your drives are connected and visible. In TrueNAS, go to Storage → Disks. If you don't see your drives here, check your cables or HBA settings (ensure you're in IT Mode, not RAID mode).
Step 2: Launch the Pool Creator
- Navigate to Storage → Pools.
- Click Add $\rightarrow$ Create Pool.
- Give your pool a name (e.g.,
tankormain-storage).
Step 3: Configure VDEVs
- Select the disks you want to include.
- Choose your layout (e.g., Mirror for two drives, or RAIDZ2 for four+).
- Click the arrow to add them to the pool.
Step 4: Finalise and Create
Review the estimated capacity and redundancy. Click Create. TrueNAS will now initialise the ZFS pool.
Post-Pool Setup: Datasets and Shares
Now that you have a pool, don't just dump files into the root directory. Create datasets.
Creating a Dataset
- Go to Storage $\rightarrow$ Pools.
- Click the three dots next to your pool and select Add Dataset.
- Name it (e.g.,
Media). - Keep the defaults for now (compression is enabled by default—don't turn it off!).
Sharing Your Data
To actually use your storage, you need to share the datasets:
- SMB (Windows/macOS): Go to Sharing $\rightarrow$ Windows Shares (SMB). Add your dataset here.
- NFS (Linux/Proxmox): Go to Sharing $\rightarrow$ Unix Shares (NFS). Perfect for hypervisor storage.
Common TrueNAS Storage Pitfalls
1. The "Mixed Drive" Trap
ZFS loves consistency. While you can mix drive sizes, ZFS will limit every drive in a VDEV to the size of the smallest drive. If you mix an 8TB and a 12TB drive in a mirror, you only get 8TB of usable space.
2. Ignoring RAM
ZFS uses RAM as a read cache (called the ARC). The general rule is 1GB of RAM per 1TB of storage, though you can get away with less for simple media servers. If you're running ZFS on a budget, prioritise RAM.
3. Forgetting the Boot Drive
TrueNAS installs to a boot drive. Do not use your storage pool as your boot drive. Use a small, separate SSD for the OS. If you use a USB stick, be warned: TrueNAS writes a lot of logs, which can kill cheap USB sticks quickly. Use a SATA DOM or a small SSD.
Summary Table: Which Layout Should I Pick?
| Your Goal | Recommended Layout | Redundancy | Space Efficiency | |---|---|---|---| | Maximum Performance | Mirror | High | Low (50%) | | Balanced / Media | RAIDZ1 | Medium | High | | Maximum Safety | RAIDZ2 | Very High | Medium | | Scratch / Temp | Stripe | None | Maximum (100%) |
Remember: RAID is not a backup. A pool protects you from hardware failure, but it won't save you from accidental deletion, ransomware, or a fire. Always pair your TrueNAS pool with a proper offsite backup strategy (like the 3-2-1 rule).
Was this article helpful?