FreeNAS
FreeNAS is a free and open-source network-attached storage (NAS) operating system based on FreeBSD and the OpenZFS file system. It is licensed under the terms of the BSD License and runs on commodity x86-64 hardware. FreeNAS supports Windows, macOS and Unix clients and various virtualization hosts such as XenServer and VMware using the SMB, AFP, NFS, iSCSI, SSH, rsync and FTP/TFTP protocols. Advanced FreeNAS features include full-disk encryption and a plug-in architecture for third-party software.[5][6][7][8][9][10]
Screenshot of the FreeNAS web interface | |
Developer(s) | iXsystems |
---|---|
Stable release | FreeNAS-11.3 U4
/ 26 July 2020[1] |
Preview release | |
Repository | |
Operating system | FreeBSD |
Platform | x86-64, v9.2.1.9 was the last release that supported 32-bit.[4] |
Type | Computer storage |
License | BSD license |
Website | freenas |
The OpenZFS file system
FreeNAS supports the OpenZFS filesystem which provides data integrity checking to prevent data corruption, enable point in time snapshotting, replication and several levels of redundancy including striping, mirroring, striped mirrors (RAID 1+0), and three levels of RaidZ.
User experience
FreeNAS is managed through a comprehensive web interface that is supplemented by a minimal shell console that handles essential administrative functions. The web interface supports storage pool configuration, user management, sharing configuration and system maintenance. As an embedded system appliance, FreeNAS boots from a USB Flash device or SATA DOM. This image is configured using a USB Flash/CD-ROM bootable installer. The FreeNAS operating system is fully independent of its storage disks, allowing its configuration database and encryption keys to be backed up and restored to a fresh installation of the OS. This separation also allows for FreeNAS system upgrades to be performed through the web interface.
History
The FreeNAS project was started in October 2005 by Olivier Cochard-Labbé who based it on the m0n0wall embedded firewall and FreeBSD 6.0. Volker Theile joined the project in July 2006 and became the project lead in April 2008. In September 2009, the development team concluded that the project, then at release .7, was due for a complete rewrite in order to accommodate modern features such as a plug-in architecture. Volker Theile decided that the project best be reimplemented using Debian Linux and shifted his development efforts to the interim CoreNAS project and eventually OpenMediaVault where he continues as the project lead. Cochard-Labbé responded to community objections to "The Debian version of FreeNAS" and resumed activity in the project and oversaw its transfer to FreeNAS user iXsystems.[11][12] Developers Daisuke Aoyama and Michael Zoon continued developing FreeNAS 7 as the NAS4Free project. Meanwhile, iXsystems rewrote FreeNAS with a new architecture based on FreeBSD 8.1, releasing FreeNAS 8 Beta in November 2010.[13] The plug-in architecture arrived with FreeNAS 8.2 and FreeNAS versioning was synchronized with FreeBSD for clarity. FreeNAS 8.3 introduced full-disk encryption and FreeBSD 9.1-based FreeNAS 9.1 brought an updated plug-in architecture that is compatible with the TrueOS Warden jail management framework. FreeNAS 9.1 was also the first version of FreeNAS to use the community-supported OpenZFS v5000 with Feature Flags.[14][15] FreeNAS 9.2, based on FreeBSD 9.2 included performance improvements and introduced a REST API for remote system administration.[16] FreeNAS 9.3, based on FreeBSD 9.3 introduced a ZFS-based boot device, an initial Setup Wizard and a high-performance in-kernel iSCSI server.[17] FreeNAS 9.10, based on FreeBSD 10.3-RC3 brought an end to the FreeNAS/FreeBSD synchronized naming and introduced Graphite monitoring support and experimental support for the bhyve hypervisor.[18]
In October 2015, ten years after the original FreeNAS release, FreeNAS 10 ALPHA was released, providing a preview of what would become FreeNAS Corral GA on March 15, 2017.[19] FreeNAS Corral introduced a new graphical user interface, command-line interface, underlying middleware, container management system and virtual machine management system.[20] FreeNAS Corral departs from FreeNAS by providing not only NAS functionality but also hyper-converged functionality thanks to its integrated virtual machine support. However, on April 12, 2017 iXsystems announced that FreeNAS Corral would instead be relegated to being a 'Technology Preview', citing issues such as "general instability, lack of feature parity with 9.10 (Jails, iSCSI, etc), and some users experiencing lower performance than expected"[21] and the departure of the project lead. Instead, the decision was made to revert to the existing 9.10 code and bring Corral features to 9.10.3 and further.
In May 2017, iXsystems announced that FreeNAS 11 would be imminently released, which was based on 9.10 but included features such as an update of the FreeBSD operating system, virtual machine management, updates to jails, and a new beta user interface along the lines of Corral but based on Angular JS.
In March 2020, iXsystems announced that the 12.0 release will merge the FreeNAS code base with that of their commercial TrueNAS offering. FreeNAS will become TrueNAS CORE while TrueNAS will be renamed TrueNAS Enterprise.[22]
Architecture
The 8.0 reimplementation of FreeNAS moved the project from a m0n0BSD/m0n0wall/PHP-based architecture to one based on FreeBSD's NanoBSD embedded build system, the Python programming language, the Django web application framework and the dōjō toolkit (JavaScript library).[23] It also used the lighttpd web server, but this was replaced with nginx in FreeNAS 8.2. The terminated successor to 9.10.2, known as FreeNAS Corral, retained the nginx web server and ZFS-based boot device of FreeNAS but replaces the Django/dōjō web application framework with an original one. FreeNAS 11 implemented a new interface using Angular JS.
Version history
Branch | Initial release | Latest Build | Released | FreeBSD version | Status | Notes / Changes |
---|---|---|---|---|---|---|
9.10 | 2016-03-23 | 9.10.2-U4 | 2017-05-25 | 10.3 STABLE | Previous Release | [24] |
10.0 ("Corral") | 2017-03-15 | N/A | Withdrawn: relegated to preview only | The "Corral" branch was cancelled on or around 23 April 2017, the developers citing as reasons that although it had been a major "ground up" rewrite of FreeNAS, too many issues had emerged within 2 weeks of release. Development reverted to the proven 9.10 branch of FreeNAS and the Corral branch was relegated to a "technology preview".[25][26] | ||
11.0[27] | 2017-06-14 | RELEASE | 2017-06-14 | 11 STABLE | Previous release | (Compared to 9.10 branch):[28][29]
|
11.1 | 2017-12-13 | RELEASE | 2017-12-13 | 11 STABLE | Previous Release | Changes include the addition of cloud synchronization and preliminary Docker container support, as well as updates to the Angular-based administrative GUI and noticeable OpenZFS improvements for handling large files and multiple snapshots.[30][31] |
11.2 | 2018-07-09[32] | RELEASE | 2018-12-05 | 11.2 STABLE[33] | Previous Release | Highlights from release announcement:[34]
|
11.3 | 2019-11-15[35] | RELEASE | 2020-01-28 | 11.3 STABLE[36] | Current release | Highlights from release announcement:[36]
|
Current release features and plugins
Features and plugins shown are for the 11.0 branch.
Features[37]
- Administrative features
- Web-based graphical user interface with optional SSL encryption
- Localized into over 20 languages[38]
- Web, console, and SSH access configurable
- Plug-in Architecture (see list below)
- Performance graphing
- Wide range of configurable alerts and alerting mechanisms, including log emails and reporting notification
- Downloadable configuration file and encryption keys
- S.M.A.R.T. disk diagnostics
- Local certificate management, including Certificate Authority role.
- 2 factor authentication, LDAP, Active Directory, RADIUS, IPSec, Kerberos and other authentication/user management systems supported in FreeBSD and therefore available for FreeNAS (Note: some but not all supported in GUI).
- File system features
- Highly resilient ZFS file system with Feature Flags (OpenZFS v5000) and theoretical storage limit of 16 Exabytes. ZFS file system features are fully configurable and include:
- Compression (including lz4 and gzip),
- Full-volume encryption (Disk encryption with GELI and AESNI hardware acceleration),
- Snapshots (which can be near-continual; snapshotting every 15-30 minutes is not uncommon),
- Data deduplication
- User quotas
- Physical disks are fully portable and can be moved without data loss to other FreeNAS servers, or to any other Operating System that supports a compatible version of OpenZFS.
- Data reliability features - mirroring / RAID (including ZFS RaidZ), multiple copies of selected data and metadata for reliability, and entire-system checksumming and background data repair as needed ("scrubbing") (see also: ZFS generally, which was designed expressly with the aim of ensuring data preservation)
- Server reliability features -
- Replication, fallover and failover,
- Multi-version boot environment - the boot menu provides access to previous versions of FreeNAS which have been upgraded. In the event of a boot issue or system problem, FreeNAS can also load any of these at boot, as "known good" versions, without "rolling back" the server.
- Disk read and data import for UFS2, NTFS, FAT32 and EXT2/3
- User/Group permissions - Classic Unix/Linux permissions and/or ACL based (including ACLs for Microsoft file systems)
- Built-in network services and features
- Protocols as standard - Samba/SMB/CIFS (for Microsoft and other networks), AFP (Apple), NFS, iSCSI, FTP/TFTP
- LDAP and Active Directory client support with Windows ACLs
- Apple Time Machine and Microsoft File History/Previous Versions support
- rsync data sync and replication (server/client)
- Link aggregation and failover
- VLAN networking
- Dynamic DNS client
- Remote syslogd forwarding
- SNMP monitoring
- Wide range of networking hardware and environments supported by FreeBSD, including copper cable, fiberoptic cable, WiFi
- Supports jumbo frames, hardware offloading (exact features offloaded vary by adapter), high bandwidth servicing (10G+)
- Other
- UPS (Uninterruptible power supply) support
- Virtual Machine host and management with GUI based management
- Jail management and templates - As of 11.0 release, FreeNAS is part-way switched from warden to iocage as jail manager; full iocage support is planned for 11.1
- iozone, netperf, OpenVPN, tmux and other utilities
- Over 20,000 packages and ports available and able to be installed from FreeBSD repositories.
Uses
- SoHo, SMB and Enterprise file serving
- Virtualization server storage backing
- Media center audio/video serving and streaming to DLNA devices
Awards
- VMware — "Ultimate Virtual Appliance Challenge, Consumer"[39]
- sourceforge.net — Project of the Month, January 2007[40]
- InfoWorld — Best of open source in storage[41]
See also
References
- "FreeNAS 11.3 U4".
- "TrueNAS Core 12.0 Nightly Snapshots Available".
- "Nightly ISO".
- "Hardware Requirements".
- iXSystems FreeNAS Mini NAS Review - Tom's Hardware
- The Arc NAS distribution shootout: FreeNAS vs NAS4Free | Ars Technica
- FreeNAS: Flexible, fast storage, and price is right | Network World
- FreeNAS — network-attached storage with ZFS [LWN.net]
- FreeNAS releases version 11, so let us put the unpleasantness of failed V.10 behind us · The Register
- There's inexpensive NAS and then there's FreeNAS | Computerworld
- "Project of the Month, January 2007". SourceForge. January 2007. Archived from the original on 2008-03-13. Retrieved 2013-08-23.
- "Interview with Olivier Cochard-Labbé, Founder of FreeNAS". BSD Magazine. Retrieved 2013-08-23.
- "FreeNAS 8 Beta released". Warner Losh. Retrieved 2013-08-23.
- "What's New with FreeNAS". FreeNAS Team. Retrieved 2013-08-23.
- "FreeNAS 9.1 Release Notes". FreeNAS Team. Archived from the original on 2014-06-29. Retrieved 2017-03-27.
- "FreeNAS 9.2 Release Notes". FreeNAS Team. Archived from the original on 2014-08-29. Retrieved 2017-03-27.
- "FreeNAS 9.3 Release Notes". FreeNAS Team. Archived from the original on 2014-12-25. Retrieved 2017-03-27.
- "FreeNAS 9.10 Release Notes". FreeNAS Team. Archived from the original on 2016-03-26. Retrieved 2017-03-27.
- "FreeNAS 10-ALPHA is now released!". FreeNAS Team. Retrieved 2017-03-27.
- "FreeNAS Corral Release Notes". FreeNAS Team. Archived from the original on 2017-03-24. Retrieved 2017-03-28.
- "Important announcement regarding FreeNAS Corral". FreeNAS Community. Retrieved 2017-04-19.
- "FreeNAS and TrueNAS are Unifying". iXsystems, Inc. - Enterprise Storage & Servers. 2020-03-05. Retrieved 2020-07-16.
- iXsystems' FreeNAS snapshot - FreeNAS - Open Source Storage Operating System
- FreeNAS 9.10 Released
- FreeNAS Corral Status: From “RELEASE” to “TECHNOLOGY PREVIEW” Status
- Embarrassing! FreeNAS downgrades latest release to 'tech preview' • The Register
- FreeNAS 11.0 Released - Phoronix
- FreeNAS 11.0 is Now Here
- FreeNAS 11.0 release notes: Initial testing indicates that the FreeNAS 11 kernel is 20% faster than FreeNAS 9.10
- FreeNAS 11.1 is Now Available for Download!
- FreeNAS 11.1-RELEASE - iXsystems, Inc. - Enterprise Storage & Servers
- "FreeNAS 11.2-BETA1". iXsystems, Inc. - Enterprise Storage & Servers. Retrieved 2019-01-26.
- "FreeNAS 11.2-RELEASE User Guide". www.ixsystems.com. Retrieved 2019-01-26.
- FreeNAS 11.2 has Arrived
- "FreeNAS 11.3-BETA1". iXsystems, Inc. - Enterprise Storage & Servers. Retrieved 2020-01-30.
- "FreeNAS 11.3-RELEASE". iXsystems, Inc. - Enterprise Storage & Servers. Retrieved 2020-01-30.
- "Features".
- "FreeNAS translation website". FreeNAS Team. Retrieved 2013-08-23.
- "FreeNAS is a Network-Attached Storage (NAS) server". VMware, Inc. Archived from the original on 2008-05-05. Retrieved 2008-02-28.
- "Project of the Month January 2007". SourceForge, Inc. January 2007. Archived from the original on 2008-03-13. Retrieved 2008-02-28.
- "Best of open source in storage - 2007". InfoWorld. Retrieved 2008-02-28.