How to Set Up Network Storage with FreeNAS
NAS (Network Attached Storage) is a network data storage device. It provides shared file access from any connected computer or gadget. With this setup, all data is stored in one place, offering convenient access to NAS over a local network (LAN) or the Internet, and supports RAID and other technologies for data protection.
NAS can be used as home storage for media files, an office server for shared documents, or a corporate solution for backups and file resources.
In this tutorial, we’ll look at configuring FreeNAS — a free operating system for creating NAS based on FreeBSD. It is now developed under the name TrueNAS, but the core principles remain the same.
This OS is free, uses the crash-resistant ZFS file system, and is flexible in configuration.
Installing FreeNAS
We’ll go through the installation of FreeNAS OS using a cloud server from Hostman.
Choosing the Configuration
Important system requirements for FreeNAS:
RAM: 8 GB minimum (16 GB+ recommended, especially with large disks)
Free disk for the system: at least 8 GB (16–32 GB recommended)
Data storage disk: size depending on your needs
This configuration ensures stable operation with up to 4 TB of data when using iSCSI, virtual machines, and databases and 8 TB for lighter tasks.
In this tutorial, we’ll use Hostman, where only NVMe SSDs are available. However, in general, consider the following:
For large media libraries, archives, and backups, HDDs are sufficient.
For high-speed access, processing small files, or running VMs or databases, SSDs are better, either as primary storage or as a cache for performance.
Step 1: Uploading the OS Image to Hostman Panel
Go to the download page and choose an appropriate installer version in .iso format.
To find the image:
Click the directory of the version you want (recommended: STABLE)
Open the x64 folder and copy the link to the .iso file.
In this tutorial, we use version 13.3 STABLE. Image download link:
https://download.freenas.org/13.3/STABLE/RELEASE/x64/TrueNAS-13.3-RELEASE.iso
In the Hostman panel, go to the Cloud servers - Images section, click Upload image and paste the copied URL.
Choose the server location and click Upload. Wait for the image to finish uploading.
Step 2: Creating a Cloud Server
Once the image is uploaded, click Create server from image.
Choose the server configuration.
Click Order to create the server.
Step 3: Adding a Disk
The default configuration includes 80 GB of NVMe storage — we’ll use this for the OS. Now we need to add an additional disk for storing data:
Wait for the image to mount and for the server to become available.
Go to the Plan tab and click Add disk.
Choose the required size and click Add.
Step 4: Installing the System
Go to the Console tab. You can open the console in a new tab for convenience.
The installer should appear in the console. Press Enter to start the installation.
Choose the destination disk (in this case, the 80 GB NVMe). Press Space to select, then Enter to confirm.
The installer will warn you that the disk will be erased. Confirm to proceed.
Enter and confirm a password — you will use it later to access the web interface as the root user.
Choose the boot mode. Hostman servers use Legacy BIOS.
The installer offers to create a 16 GB swap partition. It helps extend RAM by using disk space, which is useful if you have less than 16 GB RAM or expect unstable loads. Not recommended on USB drives due to wear.
The installation will begin.
After it completes, confirm that it finished successfully.
Press Space, and in the menu, select Shutdown System to turn off the server.
You can now delete the installation image so it doesn't incur charges.
After rebooting, the system will show that the web interface is available via the server’s IP address.
Installation is complete!
Initial Setup of FreeNAS
First Login to the Web Interface
Go to the UI using the server’s IP address. Log in with:
Username: root
Password: the one set during installation
You’ll see the TrueNAS dashboard.
Setting Basic System Parameters
Set the correct time zone: Open System, then General settings. Set your timezone in the Timezone field.
Enable alerts: Go to Alert Services and Alert Settings. You can configure email notifications or messenger integrations.
Creating and Configuring Storage (ZFS)
FreeNAS uses the ZFS file system for reliable and flexible storage. Its benefits include data protection and useful tools for backups and replication.
Go to Storage (1), then Pools (2)
Click Add to create a new pool.
Choose Create new pool.
Enter a name for your pool, e.g., mypool.
Select your disk (1) and move it to the Data VDevs field (2).
You’ll see options for Mirror and Stripe modes:
— Mirror
Data is written to all disks in the group.
If one disk fails, data remains on the others.
Total storage equals the size of the smallest disk.
Use when:
Reliability is more important than capacity.
You have two or more disks of similar size.
You want redundancy without complex RAID setups.
— Stripe
Data is split and written across all disks.
Better performance and full use of all disk space.
If one disk fails, all data is lost.
Use when:
Speed and space are more important than reliability.
Data isn’t critical (can be restored from elsewhere).
You want to maximize storage with minimal setup.
Click Create. Note that all data on the disk will be erased. The new pool should now appear in the panel.
User Management and Access Rights
In the left-hand menu, select the Account tab, then Users, and click the Add button.
Fill in the required fields — full name, username (alias), and password.
If needed, configure a home directory inside one of the created datasets.
You can manage permissions within datasets, which are logical partitions or storage spaces created inside a ZFS pool. To do this, go to the Pools tab (1) and use the Edit Permissions option (2) on the desired dataset.
You can configure access rights for individual users or entire groups.
Try not to grant administrator (root) privileges to too many users, even if it seems more convenient. The fewer people with elevated access, the more secure your data will be.
Setting Up Services and Sharing Protocols
Enable the necessary services under the Services tab to take advantage of NAS features.
The following protocols are available:
SMB for Windows networks
NFS for UNIX-based environments
AFP for Apple users
WebDAV for HTTP-based access
iSCSI, FTP, and others
You can configure each protocol after activation. For example, with SMB, you can set a workgroup and guest access parameters and enable auto-start on system reboot.
After enabling a service, create a share in the Shares section by selecting the appropriate protocol.
Advanced Features and Plugins
FreeNAS (TrueNAS) features a robust plugin system (Jails, Plugins) that includes many popular applications. Some of the most in-demand plugins include:
Nextcloud: A private cloud solution with office tools, calendar, audio/video conferencing. Ideal for collaborative work and personal file syncing (like Dropbox or Google Drive).
Plex Media Server: A powerful tool for managing your media library — TV shows, movies, music, photos. It can auto-fetch metadata, download covers, and track viewed/unviewed status.
Transmission: A lightweight torrent client with a web interface. Perfect for downloading large files directly to your NAS.
Syncthing: Focused on peer-to-peer folder synchronization. Great for distributed teamwork or backup syncing across devices.
Zoneminder: Enables you to set up a video surveillance system. Supports IP cameras, recording, and alert configurations.
Tarsnap: A secure backup service for UNIX-like systems.
To install a plugin, go to Plugins (1), choose an application, and click Install (2). Configuration (like ports or storage paths) is usually done after the quick setup.
If you want more isolation, use Jails — FreeBSD-based environments that let you install packages and libraries independently of the main system.
Backups and Data Protection
ZFS Snapshots allow for quick recovery of data in case of accidental deletion or corruption. You can automate this by scheduling snapshots via the Tasks → Periodic Snapshot Tasks tab. Choose the dataset, snapshot lifetime, and frequency.
Data deduplication saves storage space but is RAM-intensive (about 5 GB RAM per 1 TB of data). If you plan to use it heavily, consider increasing your memory. Otherwise, ZFS may slow down or run into resource issues.
For advanced backup features, consider plugins like Asigra or Tarsnap. Choose a backup strategy based on your risk tolerance and data volume. Some users are fine with local snapshots; others may prefer offsite copies.
Common Issues and Troubleshooting
Symptom
Problem Description
Solution
Cannot access the web interface (browser won’t open URL)
Network or IP configuration issues, firewall port blocking
1. Check IP settings in TrueNAS console (options 1, 4, 6 in network menu).
2. Verify gateway and DNS settings.
3. If behind NAT, open/forward required ports (usually 80/443).
4. Ensure local firewall allows access.
[EINVAL] vm_create: This system does not support virtualization
CPU/motherboard doesn’t support VT-x/AMD-V, or it's disabled in BIOS/UEFI, or virtualization is off in the hypervisor
1. Enable Intel VT-x / AMD-V (SVM) in BIOS.
2. Confirm CPU supports virtualization.
3. If running inside a hypervisor, enable Nested Virtualization.
"Pool is DEGRADED" or "FAULTED"
ZFS pool has a failing or disconnected disk
1. Run zpool status in the console to identify the faulty disk.
2. Replace the failed disk if using RAIDZ or Mirror.
3. Start the resilvering process.
4. Review logs and run SMART tests.
Slow performance or errors with deduplication
Deduplication consumes too much RAM
1. Add more RAM.
2. Disable deduplication where not needed (e.g., media files).
3. Use only compression (LZ4) if resources are limited.
Cannot access SMB share or it doesn't show up on the network
Incorrect ACL or SMB configuration, workgroup mismatch, bad user profile
1. Enable SMB in Services and set it to auto-start.
2. Create a new share under Sharing → SMB and check permissions.
3. Configure ACLs on the dataset (e.g., Full Control for user/group).
4. Verify the correct workgroup setting.
Snapshot creation/deletion fails
Not enough free space or quota exceeded, or permission issues
1. Check available space in pools.
2. Increase/remove dataset quotas if too strict.
3. Make sure the user has snapshot permissions.
SSH doesn’t work or key authentication fails
SSH service off, keys not in the right place, wrong file permissions
1. Enable SSH under Services.
2. Upload public key under System → SSH Keypairs, or place it in ~/.ssh/authorized_keys.
3. Set correct permissions (700 for .ssh, 600 for key files).
WebDAV access via password doesn’t work
WebDAV user/password not set or port blocked by firewall
1. Go to Services → WebDAV and set the webdav user password.
2. Make sure the port (e.g., 8080) is open in the firewall.
3. Verify the correct access path (e.g., http://IP:8080/resource_name).
Conclusion
FreeNAS (TrueNAS) version 11.3 is well-suited for setting up a file server and running additional services. The system offers tools for managing ZFS pools, user permissions, and protocols like SMB, WebDAV, and iSCSI.
If you need extended functionality, check out plugins and built-in virtualization (like VirtualBox or bhyve in newer versions).
ZFS features such as deduplication, snapshots, and replication provide robust data protection. Plugins like Nextcloud or Plex make collaboration and media management much easier.
The FreeNAS project evolved into TrueNAS, but the key principles remain: using ZFS instead of hardware RAID, flexible shared folder configuration, and a user-friendly web interface.
14 April 2025 · 10 min to read