← All articles
STORAGE TrueNAS SCALE Setup: From Install to First Share 2026-02-09 · truenas · nas · zfs

TrueNAS SCALE Setup: From Install to First Share

Storage 2026-02-09 truenas nas zfs storage smb nfs

TrueNAS SCALE is one of the best free NAS operating systems available, and it's the version you should be installing in 2026. Unlike TrueNAS CORE (which runs on FreeBSD), SCALE is Linux-based, which means native Docker support, better hardware compatibility, and a more familiar ecosystem if you're coming from the Linux world.

This guide walks you through the entire process: installing SCALE on bare metal, creating a ZFS pool, sharing files over your network, and deploying your first app. No prior TrueNAS experience required.

What You Need

Before you start, gather your hardware:

Download the latest TrueNAS SCALE ISO from truenas.com/download. Write it to your USB drive with dd, Balena Etcher, or Rufus.

Installing TrueNAS SCALE

Boot from the USB drive. You'll get a text-based installer — it's simple but functional.

  1. Select Install/Upgrade.
  2. Choose your boot drive. The installer will warn you that this drive will be erased. Make sure you're selecting the right one — not your data drives.
  3. Set a root password. You'll use this for the web UI.
  4. Choose UEFI or BIOS boot depending on your hardware. UEFI is the right choice for anything made in the last decade.
  5. Wait for the install to finish, then remove the USB drive and reboot.

On first boot, TrueNAS will display its IP address in the console. Navigate to that address in your browser to access the web UI.

Initial Web UI Configuration

Log in with root and the password you set during installation. The first time you log in, SCALE will prompt you to set up a few things.

Set Your Timezone and Hostname

Go to System > General Settings. Set your timezone and give the machine a hostname like truenas or nas01. This is what will show up on your network.

Configure Static IP

By default, TrueNAS uses DHCP. For a server, you want a static IP. Go to Network > Interfaces, edit your primary interface, and assign a static IP within your LAN range. For example:

Alternatively, set a DHCP reservation on your router so the IP doesn't change even with DHCP enabled.

Create an Admin User

Running everything as root is bad practice. Go to Credentials > Local Users and create a regular admin user. Add this user to the builtin_administrators group. You can then disable root login for the web UI.

Creating a Storage Pool

This is the core of your NAS. A storage pool is a ZFS pool — a collection of drives managed together with built-in redundancy and data integrity.

Go to Storage > Create Pool.

Choosing a Layout

TrueNAS will show you your available drives. You need to decide on a VDEV layout:

For a typical homelab with 2-4 drives, a mirror or RAIDZ1 is the right call.

Example: Creating a 2-Drive Mirror Pool

  1. Name the pool (e.g., tank — the traditional ZFS pool name).
  2. Select your two data drives.
  3. Choose Mirror as the layout.
  4. Click Create.

TrueNAS will format the drives and create the pool. This takes a few seconds for empty drives.

Adding a Cache Drive (Optional)

If you have a spare SSD, you can add it as an L2ARC (read cache) or SLOG (write log). For most homelabs, skip this — ZFS's built-in ARC cache in RAM is usually sufficient. L2ARC can actually hurt performance if you don't have enough RAM (it uses RAM to index the cache).

Setting Up SMB Shares (Windows/Mac)

SMB is the standard file sharing protocol for Windows and macOS. Go to Shares > SMB.

Create a Dataset First

Before creating a share, create a dataset for it. Datasets are like folders within your pool, but with their own ZFS properties (compression, quotas, snapshots).

Go to Datasets and create a new dataset under your pool:

Create the Share

Go to Shares > SMB > Add:

  1. Path: select your dataset (/mnt/tank/shared)
  2. Name: shared (this is what shows up on the network)
  3. Enable the share

TrueNAS will ask if you want to enable the SMB service. Say yes.

Set Permissions

This trips up a lot of people. Go to your dataset, click Edit Permissions, and either:

Now test from another machine:

# Linux
smbclient //192.168.1.50/shared -U yourusername

# Or mount it
sudo mount -t cifs //192.168.1.50/shared /mnt/nas -o username=yourusername

On Windows, open File Explorer and type \\192.168.1.50\shared in the address bar.

Setting Up NFS Shares (Linux)

If your clients are Linux machines, NFS is faster and simpler. Go to Shares > NFS.

Create a dataset with share type Generic (not SMB). Then add an NFS share:

  1. Path: /mnt/tank/linux-data
  2. Authorized networks: 192.168.1.0/24 (your LAN)
  3. Maproot User: root or nobody depending on your security preference

On your Linux client:

# Install NFS client
sudo apt install nfs-common  # Debian/Ubuntu
sudo dnf install nfs-utils   # Fedora

# Mount the share
sudo mount -t nfs 192.168.1.50:/mnt/tank/linux-data /mnt/nas

# Add to /etc/fstab for automatic mounting
echo "192.168.1.50:/mnt/tank/linux-data /mnt/nas nfs defaults 0 0" | sudo tee -a /etc/fstab

Deploying Apps

TrueNAS SCALE has a built-in app catalog powered by Docker and Kubernetes (though in recent versions, iXsystems has been moving toward plain Docker Compose, which is much simpler).

Go to Apps in the sidebar.

Setting Up the Apps Pool

The first time, SCALE will ask you to designate a pool for app storage. Pick your main pool and let it create a dedicated dataset.

Installing an App

Browse the catalog or search for what you want. Some solid first apps:

Click the app, configure the settings (port numbers, storage paths), and deploy. Most apps are running within a minute.

Pointing Apps at Your Data

The key thing: when configuring app storage, map your datasets into the container. For example, point Jellyfin's media folder at /mnt/tank/media so it can access your files.

Essential Post-Setup Tasks

Enable Snapshots

ZFS snapshots are instant, space-efficient point-in-time copies of your data. Go to Data Protection > Periodic Snapshot Tasks and create a schedule:

Snapshots saved me when I accidentally deleted a project folder. Restoring was instant.

Set Up SMART Monitoring

Go to Data Protection > S.M.A.R.T. Tests and schedule both short tests (weekly) and long tests (monthly). This monitors your drive health. Also set up email alerts under System > Alert Settings so TrueNAS can warn you when a drive starts failing.

Configure Scrubs

ZFS scrubs verify data integrity by reading every block and checking it against its checksum. TrueNAS schedules these automatically (every 35 days by default). Don't disable them — scrubs are how ZFS catches silent data corruption before it becomes a problem.

Set Up Replication (Optional)

If you have a second TrueNAS machine (even a small one at a friend's house), set up replication tasks to send snapshots offsite. Go to Data Protection > Replication Tasks. This gives you a proper offsite backup with ZFS-level efficiency.

Troubleshooting Common Issues

Can't access shares from other machines: Check your firewall settings and make sure the SMB/NFS service is running. On the client side, verify you can ping the TrueNAS IP.

Pool shows as degraded: A drive has failed or been removed. Replace it ASAP. Go to Storage, find the degraded VDEV, and replace the faulted drive.

Slow performance: Check your RAM usage. ZFS wants RAM for its ARC cache. If you're running apps and shares on 8 GB, you're going to have a bad time. Upgrade to 16-32 GB.

Apps won't start: Check that your apps pool is set correctly and that the datasets have the right permissions. Container permission issues are the most common app problem.

Where to Go From Here

Once your basic setup is running, consider these next steps:

TrueNAS SCALE is an excellent NAS platform, especially for homelabbers who want Linux compatibility and Docker support. The initial setup takes about an hour, and once it's running, it mostly takes care of itself. Just keep an eye on drive health alerts and make sure your scrubs are running.