• Skip to main content
  • Skip to primary sidebar
  • Skip to footer
  • Home
  • About
    • Stephen Foskett
      • My Publications
        • Urban Forms in Suburbia: The Rise of the Edge City
      • Storage Magazine Columns
      • Whitepapers
      • Multimedia
      • Speaking Engagements
    • Services
    • Disclosures
  • Categories
    • Apple
    • Ask a Pack Rat
    • Computer History
    • Deals
    • Enterprise storage
    • Events
    • Personal
    • Photography
    • Terabyte home
    • Virtual Storage
  • Guides
    • The iPhone Exchange ActiveSync Guide
      • The iPhone Exchange ActiveSync Troubleshooting Guide
    • The iPad Exchange ActiveSync Guide
      • iPad Exchange ActiveSync Troubleshooting Guide
    • Toolbox
      • Power Over Ethernet Calculator
      • EMC Symmetrix WWN Calculator
      • EMC Symmetrix TimeFinder DOS Batch File
    • Linux Logical Volume Manager Walkthrough
  • Calendar

Stephen Foskett, Pack Rat

Understanding the accumulation of data

You are here: Home / Everything / Terabyte home / FreeNAS First Impressions

FreeNAS First Impressions

August 25, 2016 By Stephen 8 Comments

I’ve dabbled with FreeNAS in the past and had such a great experience with pfSense (a similar FreeBSD-based project) that I jumped in with both feet on my home office server build. But my initial impressions were, frankly, terrible. I’ve got the system running and stable now, but I’m finding it difficult to recommend FreeNAS at this point.

My FreeNAS system is now working ok, but do not click "Upgrade"!
My FreeNAS system is now working ok, but do not click “Update” to go from 9.10 to 9.10.1! Your system might not boot and your console might blank out. And if you have a popular LSI SAS/SATA controller, it will alert you that your firmware is out of date (it isn’t).

2017 Update: I’m still running FreeNAS but I still kind of hate it. It’s the best open source SOHO NAS OS, but there are lots of things to dislike, especially for “outsiders.” 2017 saw a total debacle, with the release of an entirely new version, “Corral” which was quickly pulled and retired with extremely poor communication and support from iXsystems and the FreeNAS community as a whole. Although updates to the old FreeNAS since then have been substantial, it retains much of what I disliked in my initial install. My advice: Run it, but don’t expect to love it.

What Is FreeNAS?

It’s important to use the right tool for the job. So what’s the job FreeNAS was designed to solve?

From my perspective, FreeNAS is a free “prosumer” storage platform. It’s not intended for simple home storage since it requires real UNIX/storage/networking administrative skills as well as some pricey hardware.1 And although FreeNAS proprietor iXsystems sells storage for businesses, FreeNAS is simply too limited to compete with even basic enterprise storage arrays.2

This is not a condemnation of FreeNAS, however. FreeNAS is like a Ford F-150 pickup trick: It’s designed for light-duty work, can also be used in the home, but won’t take the place of a serious purpose-built business device. And like the pickup trucks of old, although the veneer of user-friendliness is only skin-deep, that’s just fine with the people it was designed to serve.

The general vibe of the community is that folks shouldn’t bother with FreeNAS unless they’re willing to meet the following criteria:

  1. Get decent hardware, including at least 8 GB of ECC memory and four or more quality hard disks – this will cost about $1,000
  2. Be willing to invest a month or so learning about ZFS, FreeBSD, and FreeNAS3
  3. Be ready to manually configure things according to various guides and forums, especially when it comes to interactions between “plugins”4

Again, this is not criticism of FreeNAS per se. Rather, I am attempting to clarify what it takes to make FreeNAS work. This stands in stark contrast to another FreeBSD-based project I use, pfSense, which works pretty well out of the box and can be entirely configured and managed from the GUI, including “packages”.

Note that FreeNAS 10 promises a complete revamp, with container-based applications rather than jailed plugins and complete configurability using a brand-new user interface (UI) or command-line interface (CLI). It’s really a complete re-write of the whole project!

What Best Practices?

I began my install using the latest “stable” release of FreeNAS, 9.10. The initial install went pretty well, but I began experiencing instability almost immediately. After 9 crashes, two serious bugs (still not fixed but worked around), and many hours of effort, I have a running system. But this was not at all a pleasant experience!

Let’s start with the install, though. Like many similar projects, FreeNAS installs from a USB drive. But FreeNAS should be installed onto another flash drive or Disk on Module (DOM) device rather than the disks to be used for data. This is well-documented but the install  process doesn’t make it easy: You have to pick the right target from a list of arcane device identifiers that could presumably be quite long. Happily, if you pick more than one from the list, it will mirror your boot volume across them.

The wizard makes poor choices for disk configuration and this screen can't be skipped unless every disk is configured
The wizard makes poor choices for disk configuration (here, it’s building a single-disk pool) and this screen can’t be skipped unless every disk in the system is configured!

I was going to go into more detail about the janky FreeNAS wizard, but the next version (FreNAS 10) has a totally new UI, so hopefully they’re addressing a lot of this! What I will say is that, although the wizard can configure shares if you use it right, it’s awful at configuring pools, which is a critical early configuration step.5 And it’s bizarre that you have to re-run the complete install wizard whenever adding a share in the future! This point is definitely addressed in FreeNAS 10…

Make sure you click that "Ownership button...
Make sure you click that “Ownership button!

I will also point out another “best practices” lapse apparent in FreeNAS. After some very-basic setup (timezone, keyboard type) it asks you to create your first “pool”. But it is very easy to get this critical step wrong: Most simple FreeNAS setups should have a single RAID 1+0 or RAID-Z pool of all disks, but the wizard is perfectly happy building a single-disk pool with no redundancy! Since this can’t be changed afterwards, this is a critical failure right off the bat. The wizard simply shouldn’t allow this!6

Do these seem like reasonable defaults to you?
Do these seem like reasonable defaults to you?

Then there’s the infernal “Volume Manager”, where RAID configurations go to die.7 The bizarre drag-right-and-down interface probably seemed like a good idea but it’s not at all intuitive or easy to use. Again, I prefer clicking “Manual setup” and doing it myself. Yet even that didn’t always work! I was forced to use the command line to manually create my vdevs (RAID sets) after the UI refused to let me add the correct disks in the correct configuration.

I'm not entirely sure what the "Volume Manager" is doing here, but it's definitely not what I want!
I’m not entirely sure what the “Volume Manager” is doing, but it’s definitely not what I want!

Storage stuff should be good at storage. Frankly, FreeNAS needs solid “best practices” logic that recommends what to do with your disk drives. The wizard has something like this but it doesn’t work with different-sized disks and thus defaults to creating too-small vdevs and pools instead of just using all the disks and being done with it. And the Volume Manager is just bizarrely non-functional. There’s lots of straightforward wisdom in the forums – how about bringing some of that to the UI?

Note: What you see in these illustrations is not my production FreeNAS environment of course. It’s just an Intel NUC with some USB drives I had laying around so I could take screen shots. My actual build is documented in excruciating detail in other posts on my blog. Start here: My FreeNAS Build: Supermicro X10SL7, Intel Haswell Xeon, ECC RAM

Bugs and Crashes

This brings me to the most uncomfortable part of my discussion of FreeNAS: It was totally unstable for the first week or so and the latest update made the system un-bootable. And these bugs haven’t yet been fixed. This is totally unacceptable for a “mature” project like FreeNAS!

Let’s start with the instability. It appears that I got bit by two bugs:

  1. Sometimes, when adding a plugin creates or modifies a “jail”, the entire system crashes. It doesn’t happen all the time, but I noticed this happen at least twice. And there are scattered comments in the forum of similar issues.
  2. Other times, the system encounters an error and dies, with a repeating loop of error messages. Again, this is documented in the forum but it’s not at all clear what’s causing it.

Initial response to both these issues was what you’d expect: “Sounds like bad hardware.” But my hardware is solid, and others have reported the same issues. Alas, it’s not clear how to debug failures like this, so I’m just hoping they don’t happen again.

Then there are the 9.10.1 upgrade issues. I’m shy of using beta software so I like to stick to the recommended “stable” builds of software. I initially installed “9.10-STABLE” (their caps) and encountered the above issues. So when a “stable” update to 9.10.1 appeared, I applied it. I should have waited.

  1. The automatic 9.10.1 update corrupts the Grub boot configuration, resulting in an un-bootable system. The fix is simply to create a new install USB drive from the 9.10 or 9.10.1 iso and “upgrading” that way. Happily, the configuration is preserved. This issue is affecting many people with all sorts of different hardware and hasn’t been fixed yet.
  2. When running 9.10.1, the console blanks out just after booting and remains black. This makes it awfully difficult to debug crashes and remotely manage the system. Again, this issue affects people with many different hardware configurations and hasn’t even been acknowledged that I can see.

Problems happen, but the offending update should have been pulled back, there should be some communication from the developers, and a fix for such simple bugs should be here by now. I imagine someone simply tweaked the Grub parameters, causing both issues. But it’s not clear that anyone even cares to fix these serious bugs, since version 10 is being aggressively updated and behind schedule.

Stephen’s Stance

At this point, I simply cannot recommend using FreeNAS. Although ZFS is simply the best filesystem available today, my experience getting FreeNAS up and running has been frustrating in the extreme. Once it’s working, it seems to be a solid product. But unless you have serious time to devote learning, configuring, and debugging a system, I recommend looking to a commercial product (Synology, QNAP, Drobo) instead of FreeNAS. Hopefully this recommendation will change with the release of FreeNAS 10.

Here’s my entire FreeNAS series so far:

  1. Hello FreeNAS! Goodbye Drobo and Iomega…
  2. My FreeNAS Build: Supermicro X10SL7, Intel Haswell Xeon, ECC RAM
  3. 14 Drives For 14 Ports: A Case For FreeNAS
  4. It’s Fine To Mount Hard Drives On Their Side Or Even Upside-Down
  5. Migrating Data With ZFS Send and Receive
  6. FreeNAS First Impressions
  1.  It’s hard to imagine putting together a proper FreeNAS system for under $500, especially since so many user questions are answered with “you need at least 8 GB of ECC RAM”. ↩
  2. I know I’m going to catch flack for saying FreeNAS isn’t as good as enterprise arrays, but anyone who spends a few minutes working with anything from EMC, Nimble, NetApp, and the like would surely agree. ↩
  3. I’ve been a professional UNIX and storage admin for over 20 years and it took me dozens of hours to get comfortable with how FreeNAS works! I imagine the ramp would be faster for someone with FreeBSD and ZFS experience. ↩
  4. Some FreeNAS configuration is possible in the GUI, but getting plugins like Transmission and Couchpotato to work requires the UNIX shell, which many will find confusing or off-putting. ↩
  5. The wizard doesn’t let you skip an unformatted drive (say, a spare) and get to share creation; you have to add it to a pool. It will happily configure a totally messed-up pool. And when it comes to shares, the critical step of creating accounts and assigning disk ownership is relegated to skippable submenu, defaulting to “root:wheel” which is just horrible! ↩
  6. Fixing the “single disk pool” issue requires migrating data and building another pool, which is not at all easy. Most users would have to back up all the data (especially System Pool data like home directories and jail configurations), blow away and rebuild the entire pool, and restore everything. ↩
  7. The FreeNAS Volume Manager is a UI, and like ZFS itself, it is definitely not a volume manager! ↩

You might also want to read these other posts...

  • How To Install ZeroTier on TrueNAS 12
  • Tortoise or Hare? Nvidia Jetson TK1
  • How To Connect Everything From Everywhere with ZeroTier
  • Electric Car Over the Internet: My Experience Buying From…
  • Liberate Wi-Fi Smart Bulbs and Switches with Tasmota!

Filed Under: Terabyte home Tagged With: Disk on module, FreeBSD, FreeNAS, Grub, iXsystems, logical volume manager, RAID, RAID-Z, storage management, ZFS

Primary Sidebar

Imagine if every Thursday your shoes exploded if you tied them the usual way. This happens to us all the time with computers, and nobody thinks of complaining.

Jef Raskin

Subscribe via Email

Subscribe via email and you will receive my latest blog posts in your inbox. No ads or spam, just the same great content you find on my site!
 New posts (daily)
 Where's Stephen? (weekly)

Download My Book


Download my free e-book:
Essential Enterprise Storage Concepts!

Recent Posts

How To Install ZeroTier on TrueNAS 12

February 3, 2022

Scam Alert: Fake DMCA Takedown for Link Insertion

January 24, 2022

How To Connect Everything From Everywhere with ZeroTier

January 14, 2022

Electric Car Over the Internet: My Experience Buying From Vroom

November 28, 2020

Powering Rabbits: The Mean Well LRS-350-12 Power Supply

October 18, 2020

Tortoise or Hare? Nvidia Jetson TK1

September 22, 2020

Running Rabbits: More About My Cloud NUCs

September 21, 2020

Introducing Rabbit: I Bought a Cloud!

September 10, 2020

Remove ROM To Use LSI SAS Cards in HPE Servers

August 23, 2020

Test Your Wi-Fi with iPerf for iOS

July 9, 2020

Symbolic Links

    Featured Posts

    Replacing Google Reader With Feedbin and Reeder

    May 5, 2013

    The End of Unlimited Data – Part 1: The Buffet

    June 2, 2010

    Sony NEX-7 Hands-On Review Part 1: The New Super-Camera

    March 26, 2012

    GPS Time Rollover Failures Keep Happening (But They’re Almost Done)

    April 6, 2019

    How To Keep Your Family Activities In Sync With A Shared Google Calendar

    April 18, 2010

    Co-Processors, GPGPU, and Heterogeneous Computing

    June 26, 2017

    Sony QX100 Lens Camera: Ruined by a Flaky iOS App

    October 7, 2013

    The Fat Middle: Today’s Enterprise Storage Array

    August 31, 2014

    Edward Snowden Is Right: We Must Protect The Internet

    March 19, 2014

    The Myths of Standardization

    December 15, 2011

    Footer

    Legalese

    Copyright © 2022 · Log in