File, Block, and Object Sharing
FreeNAS provides file, block, and object sharing to every major client operating system and virtualization platform. Supported file-based protocols include Windows SMB, Apple AFP, Time Machine, and Unix NFS, as well as FTP and WebDAV. FreeNAS iSCSI block sharing supports VMware VAAI, Microsoft ODX, and Microsoft Windows Server Clustering. S3-compatible object sharing allows FreeNAS to deliver object storage and communicate with every major cloud backup provider.
If FreeNAS has one goal, it’s simplifying complex administrative tasks for users at every experience level. Every aspect of a FreeNAS system can be managed from the Web User Interface. Administrative tasks ranging from storage configuration to share and user management to software updating can all be performed with confidence without missing a critical step or experiencing a silent failure.
This ease-of-use does not mean, however, that FreeNAS is a black box that ties the hands of experienced system administrators. The full power of the FreeBSD shell environment is a click away in the GUI or accessible through SSH for many diagnostic and administrative tasks. Ultimately, FreeNAS makes NAS deployment easier than ever but doesn’t get between you and the storage solution you need.
The ZFS file system at the heart of FreeNAS is designed for data integrity from top to bottom. RAID-Z, the software RAID that is part of ZFS, offers single parity redundancy equivalent to RAID 5, but without the traditional “write hole” vulnerability thanks to the copy-on-write architecture of ZFS. The additional levels RAID-Z2 and RAID-Z3 offer double and triple parity protection respectively. A software mirror RAID 10 equivalent option is also available for maximum performance. FreeNAS suggests a parity arrangement based on the number of available disks, and allows you to override that suggestion with a custom one. Intelligent read and write caches plus hot spares can be configured to maximize the performance and reliability of your storage solution.
Every ZFS file system is also continuously verified with checksums to ensure the integrity of your data. If inconsistencies are found, parity blocks are used to repair corrupt data. A monthly “scrub” is enabled by default to verify the checksum of every block on the system.
Thanks to the copy-on-write design of ZFS, efficient, point-in-time snapshots of an entire pool or individual file system can be created at any time or on a regular schedule. Creating snapshots initially do not consume any data and are instantly created, allowing very granular policies to be created. Snapshots are also seamlessly exposed to protocols such as SMB, allowing Windows clients to browse “Previous Versions” of a file natively.
As long as a snapshot is retained, administrators can access files as they were when the snapshot was made, or revert the entire dataset to that point in time. “Golden master” snapshots can also be cloned to create writable derivatives such as deploying virtual machines that are all based on a master image.
ZFS Snapshots are more than just local restore points – they provide the foundation for remote backups as well. Replicating snapshots of a file system to a remote ZFS file system creates a perfect duplicate on the destination. Replication is a highly-efficient form of backup because only the changes that were made between snapshots are sent. In case of catastrophic damage to a local ZFS file system, any replicated snapshot can be sent to a new ZFS file system, recovering all data up to that backup.
FreeNAS was the first open source network-attached storage project to offer encryption on ZFS volumes and offers both full-disk software encryption and support for Self-Encrypting Drives (SED). The next version of FreeNAS, TrueNAS 12.0 CORE, will support native ZFS dataset encryption to meet the widest range of privacy and compliance requirements. This allows systems to replicate data to non-secure backup targets, and never provide the encryption key.
FreeNAS supports the core features of a NAS appliance out of the box. However, many users like to enhance their NAS appliance with third party software for media streaming, online collaboration, specialized backup, and even software development.
Based on iocage, FreeNAS Plugins isolate third-party software from the core operating system but allow limited access to user-specified directories through the Web User Interface.