Get a Quote     (408) 943-4100               TrueNAS Discord      VendOp_Icon_15x15px   Commercial Support Toggle between Light and Dark mode

Creating Storage Pools

  6 minute read.

Last Modified 2022-08-03 11:26 EDT

TrueNAS uses ZFS data storage pools to efficiently store and protect data.

Storage pools attach drives organized into virtual devices called vdevs. ZFS and TrueNAS periodically review and heal when discovering a bad block in a pool. Drives arranged inside vdevs provide varying amounts of redundancy and performance. Combined, ZFS and vdevs combined create high-performance pools, pools that maximize data lifetime, and all situations in between.

Review Storage Needs

It is strongly recommend that you review the available system resources and plan the storage use case before creating a storage pool.

  • Allocating more drives to a pool increases redundancy when storing critical information.
  • Maximizing total available storage at the expense of redundancy or performance entails allocating large-volume disks and configuring a pool for minimal redundancy.
  • Maximizing pool performance entails installing and allocating high-speed SSD drives to a pool.

Determining your specific storage requirements is a critical step before creating a pool.

Creating a Pool

(Video URL:

To create a new pool, go to Storage and click Create Pool.


First, enter a pool name.

TrueNAS offers several encryption algorithms to maximize security. However, encryption also complicates data retrieval and risks permanent data loss! Refer to the Encryption article for more details and decide if encryption is necessary for your use case before setting any Encryption option.

Next, configure the virtual devices (vdevs) that make up the pool.

If the disks used have non-unique serial numbers, they do not populate the Available Disks section until you select the Show disk with non-unique serial numbers checkbox.

Suggested Layout

Clicking Suggest Layout allows TrueNAS to review all available disks and populate the primary Data VDevs with identically sized drives in a configuration balanced between storage capacity and data redundancy. Click Reset Layout to clear the suggestion.

To manually configure the pool, add vdevs according to your use case. Select the Disk checkboxes and click the   to move the disks into a vdev.

Warning: USB-connected disks might report their serial numbers inaccurately, making them indistinguishable from each other.

Vdev Types

Pools offer several vdev types. Vdevs store data or enable unique features for the pool.

These store data or enable unique features for the pool:

Standard vdev for primary storage operations. Each storage pool requires at least one data vdev. Data vdev configuration typically affects how the other kinds of vdevs get configured.

A Data VDev with disks is duplicated by clicking REPEAT. When more disks are available and equal in size, the REPEAT button creates another vdev with an identical configuration called a mirror of vdevs.


When even more same-size disks are available, you can create multiple copies of the original vdev.

Don’t have multiple data vdevs with different numbers of disks in each vdev. This complicates and limits the pool capabilities.
ZFS L2ARC read-cache used with fast devices to accelerate read operations. You can add or remove this after creating the pool.
ZFS LOG device that improves synchronous write speeds. You can add or remove this after creating the pool.

Hot Spare are drives reserved to insert into Data vdevs when an active drive fails. Hot spares are temporarily used as replacements for failed drives to prevent larger pool and data loss scenarios.

When you replace a failed drive with a new drive, the hot spare reverts to an inactive state and is available again as a hot spare.

If you only detach the failed drive from the pool, the temporary hot spare gets promoted to a full data vdev member and is no longer available as a hot spare.

Special Allocation class used to create Fusion Pools for increased metadata and small block I/O performance.
Dedup vdevs store ZFS de-duplication. Requires allocating X GiB for every X TiB of general storage. For example, 1 GiB of Dedup vdev capacity for every 1 TiB of Data vdev availability.

To add a vdev type during pool creation, click Add Vdev and select the type. Select disks from Available Disks and use the   (right arrow) next to the new VDev to add it to that section.

Vdev Layouts

Disks added to a vdev arrange in different layouts, according to the specific pool use case.

We do not recommend mixing disks of different sizes in a vdev. If you do, you must Force the action and override the One or more data vdevs has disks of different sizes error.



TrueNAS SCALE does not support adding multiple vdevs with different layouts to a pool. Create a new pool when a different vdev layout is required. For example, pool1 has a data vdev in a mirror layout, so create pool2 for any raid-z vdevs.

Each disk stores data. Requires at least one disk and has no data redundancy.

Never use a Stripe type vdev to store critical data! A single disk failure results in losing all data in the vdev.
Data is identical in each disk. Requires at least two disks, has the most redundancy, and the least capacity.
Uses one disk for parity while all other disks store data. Requires at least three disks.
Uses two disks for parity while all other disks store data. Requires at least four disks.
Uses three disks for parity while all other disks store data. Requires at least five disks.

The Pool Manager suggests a vdev layout from the number of disks added to the vdev. For example, if you add two disks, TrueNAS automatically configures the vdev as a Mirror. The total available storage is the size of one added disk while the other disk provides redundancy.


To change the vdev layout, open the Data VDevs list and select the desired layout.

Related Content

Related Storage Articles