|
|
Subscribe / Log in / New account

FreeNAS 0.7: powerful and not dead

Benefits for LWN subscribers

The primary benefit from subscribing to LWN is helping to keep us publishing, but, beyond that, subscribers get immediate access to all site content and access to a number of extra site features. Please sign up today!

December 17, 2009

This article was contributed by Koen Vervloesem

Recently, the FreeNAS developers have released version 0.7 of their FreeBSD-based operating system for network-attached storage (NAS). This is a major release, which introduces support for the ZFS file system among other things. Around the same time, fears were expressed about the future of FreeNAS as a BSD-based NAS but, in the end, a solution has been found.

FreeNAS 0.7 is based on FreeBSD 7.2 and includes a lot of file sharing protocols. This way it can talk to all major operating systems: GNU/Linux, the BSDs, Windows, and Mac OS X. FreeNAS also supports several types of media streaming protocols and can act like an iTunes server. In addition, it supports iSCSI and different levels of software RAID. All of this can be managed from the web interface so users don't have to know the FreeBSD commands under the hood.

One of the advantages of FreeNAS is that it has very low system requirements, as it needs only 128 MB of RAM. This makes it attractive to blow the dust off an old Pentium 2 or 3 PC, put a couple of hard drives in it and make it a NAS. Of course, for high performance the machine still needs enough RAM and CPU horsepower. All of this makes FreeNAS a popular operating system for central storage and media streaming at home.

Installation

FreeNAS has downloads for 32-bit and 64-bit hardware, in a live version and an installable version. The installable version is for installation on a USB stick, hard drive, or Compact Flash card, while the live version doesn't touch the hard drive of the system but can save its configuration to a USB stick or floppy disk.

After the installer has booted, it shows the user a simple menu in the console to set up the basics. The user can assign network interfaces, set IP addresses, reset the password for the web interface or reset all settings to the factory defaults, open a shell, reboot or shutdown the system, and install or upgrade FreeNAS to a hard drive or USB stick. Most of that is just for troubleshooting, because the bulk of the settings are available in the web interface.

Configuration

[FreeNAS web interface]

Once FreeNAS has been assigned an IP address, the user can surf to the web interface in a browser and log in with the default user name and password. The first thing FreeNAS displays is some system information, such as the CPU and memory usage, the load averages and the disk space usage. The latter will show "No disk configured" first, but available disks can be added easily in the "Disks -> Management" menu by clicking on the plus icon, choosing the disk, and entering some optional settings. After this, don't forget to click on "Apply changes" on the disk management page. The next steps are formatting and choosing a mount point.

When choosing a file system for a hard drive in the "Disks -> Format" menu, FreeNAS recommends the BSD file system UFS. Other supported file systems are FAT32, NTFS, Ext2, or Ext3, but the web interface expressly warns that they can result in unpredictable results. While the web interface doesn't warn against using ZFS (which has its own menu item, because it is not only a file system but also a logical volume manager), users have to keep in mind that FreeNAS 0.7 is still based on FreeBSD 7.2 which calls ZFS support "experimental".

The goal of a NAS if of course sharing the data with users, and FreeNAS has a lot of services at its disposal to do this: FTP, TFTP, NFS, Samba, AFP (for Mac OS X users), HTTP, rsync (ideal for making backups on the NAS) and Unison (for file synchronization). It can also share a disk as an iSCSI target to another computer in the local network. But FreeNAS can also act as a streaming media server for clients that are compatible with UPnP (Universal Plug and Play) or iTunes, or it can run BitTorrent to download torrents directly on the NAS.

[FreeNAS traffic display]

In general, the web interface is intuitive enough to do a lot of things without having to look up the documentation. At the same time, it is really powerful, with even the possibility to edit arbitrary files, run arbitrary commands, tune some FreeBSD kernel parameters with sysctl or add variables to rc.conf. It also shows a lot of status information. Unfortunately, documentation such as the FreeNAS Setup and User Guide is still lagging behind.

Death of a FreeBSD descendant?

During the last few months, the future of the FreeNAS project seemed in peril. The project's core developer Volker Theile announced in September that he would stop developing FreeNAS and switch his work to a new project, called CoreNAS, which would be based on Debian GNU/Linux. Some reasons he listed for this switch are:

  • The Debian installer is more customizable than the hand-written FreeNAS install scripts.
  • Wake-on-LAN for waking up the NAS automatically works in Linux.
  • Linux has a working sensor framework to check the temperature and fan speeds.
  • The system can be updated with the Debian package manager.
  • Linux has better driver support.

According to Volker, the current architecture of FreeNAS is not flexible enough to add the new features users have been asking him for:

Some months ago I started to upgrade FreeNAS to FBSD8.0. I also thought about how to remove all these limitations of the previous versions to make it more enhanceable. The more I thought about it the more I came to the conclusion that it will be necessary to reimplement everything to get rid of these limitations.

His eye fell quickly on the Debian infrastructure, which seemed to reduce the work to get a new FreeNAS to a minimum. A big plus of Linux is that it supports more new hardware than FreeBSD.

But of course this left FreeNAS users with a problem: what about the ZFS support that has been added in FreeNAS 0.7? A lot of the new users were attracted solely by this feature, which didn't seem to have a future in CoreNAS. Would they have to migrate their freshly installed data to another file system in the next release? Volker wrote that his FreeNAS successor would maybe have ZFS over FUSE, but the performance would of course not be the same. So the only real option users of ZFS on FreeNAS seemed to have was to migrate to an OpenSolaris-based NAS operating system such as EON or Nexenta Core Platform. However, these don't have the intuitive web interface that FreeNAS has (NexentaStor, the commercial and proprietary variant of Nexenta Core Platform, has one, and a 4 TB developer license is free as in beer).

Rumors of FreeNAS' death greatly exaggerated

But then in the beginning of December, FreeNAS founder Olivier Cochard-Labbé appeared deus ex machina. He agreed with Volker that a full rewrite of the FreeNAS base is needed, and he clarified that this will happen along two different paths. On the one hand, Volker will develop his Linux-based CoreNAS idea in a new project, OpenMediaVault (the website is empty at the moment). On the other hand, the company iXsystems will take on FreeNAS development and rewrite it. As part of this, Olivier will work on upgrading it to the FreeBSD 8.0 code base, which will introduce production-ready ZFS support.

Matt Olander, the Chief Technology Officer at iXsystems and also a member of the FreeBSD and PC-BSD projects, officially joined the FreeNAS project with some explanation on the forum:

We have been using FreeNAS at iX for quite some time and we're really happy with it! We just had a developer meeting with our FreeBSD development team and everyone can't wait to get started digging into the next version! We are very interested in improving the embedded platform with continued development of FreeNAS and ZFS. We're considering package management and GUI enhancements so that the product only shows the functionality desired and needed while allowing the user to extend as necessary both through the UI and via the backend.

Matt added that iXsystems will start digging through the forums and search some low hanging fruit to implement in the first future release of FreeNAS, an upgrade to FreeBSD 8.

So, in the end, a crisis has been averted and, with luck, everyone will be happy. The users that have been attracted to FreeNAS because of ZFS can keep using it and will get an update. In addition, they get commercial backing by iXsystems. The users that have been asking for features such as Wake-on-LAN, a sensor framework, and more hardware support get their rewrite to Linux, done by Volker in his spare time. Let's hope that FreeNAS and OpenMediaVault keep working together to share their efforts.


Index entries for this article
GuestArticlesVervloesem, Koen


(Log in to post comments)

FreeNAS 0.7: powerful and not dead

Posted Dec 17, 2009 19:46 UTC (Thu) by boerner (guest, #4247) [Link]

Nice podcast interview with iXsystems on the project status is here:

http://bsdtalk.blogspot.com/
(Dec 15th post, no real way to provide direct link)

FreeNAS 0.7: powerful and not dead

Posted Dec 17, 2009 19:57 UTC (Thu) by pj (subscriber, #4506) [Link]

Maybe Debian-BSD is an option they should look into? I'm not sure if it's far enough along for them, but maybe... it seems to me it would give them a BSD kernel (with ZFS) but also debian's tools and packaging infrastructure...

FreeNAS 0.7: powerful and not dead

Posted Dec 17, 2009 20:51 UTC (Thu) by MattPerry (guest, #46341) [Link]

How would that affect driver support?

FreeNAS 0.7: powerful and not dead

Posted Dec 18, 2009 18:02 UTC (Fri) by madssj (guest, #59850) [Link]

Using something like http://www.debian.org/ports/kfreebsd-gnu/ you'd be stuck with the same
driver support as the original FreeBSD kernel, as that is basically what it is. A FreeBSD kernel, with a
GNU userland and libc. It's going to be the first non Linux based Debian release, being fully
supported from Debian 6.0 (Squeeze).

As for the NetBSD port of Debian it's not maintained, so it'd be a very bad choice.

FreeNAS 0.7: powerful and not dead

Posted Dec 25, 2009 0:24 UTC (Fri) by aquasync (guest, #26654) [Link]

If nothing else, rebasing FreeNAS on Debian BSD could lead to more sharing between FreeNAS & CoreNAS - more similar package management, user land etc.

FreeNAS 0.7: powerful and not dead

Posted Dec 17, 2009 22:55 UTC (Thu) by drag (guest, #31333) [Link]

The way I look at it by the time CoreNAS gets off the ground and is ready to
be used, then so will BTRFS. Which will effectively render the whole 'ZFS'
thing mute.

Also, I wonder how well ZFS works with just 128MB of RAM. I know that Sun
says not to use ZFS on systems with less then 1GB of RAM and recommends
64bit architecture for best results. Does anybody here have experience
trying to get a couple TB worth of ZFS storage on a low-end machine?

FreeNAS 0.7: powerful and not dead

Posted Dec 18, 2009 2:00 UTC (Fri) by linuxbox (guest, #6928) [Link]

No, and would be interested in seeing it. However a baseline node configuration of >1G memory seems reasonable for such a product, today.

FreeNAS 0.7: powerful and not dead

Posted Dec 18, 2009 8:07 UTC (Fri) by rsidd (subscriber, #2582) [Link]

I'd imagine that you can't use ZFS on such a machine; hopefully FreeNAS's menus warn you or forbid you from trying.

FreeNAS 0.7: powerful and not dead

Posted Dec 18, 2009 8:50 UTC (Fri) by Tuxie (guest, #47191) [Link]

BtrFS is still far behind ZFS in terms of both features and stability, but I really hope that it will catch up one day. When it supports Raid-Z/Z2, file/block deduplication and having a fast SSD LFU-cache that always holds the most used blocks, I will switch in an instant.

FreeNAS 0.7: powerful and not dead

Posted Dec 18, 2009 16:49 UTC (Fri) by drag (guest, #31333) [Link]

Well most those things are the point behind Btrfs.

It's raid features:
http://btrfs.wiki.kernel.org/index.php/Using_Btrfs_with_M...

Dedupe is being talked about as far as I know and is a goal of the project,
and it has optimized mode for working with SSD. So on and so forth.

Btrfs is still about a year away, I figure. And when you make a major change
to a project, like going from FreeBSD to Debian for CoreNAS stuff, it's
going to take at a minimum several months to create a working product and
that is why I figure that it's likely that by the time CoreNAS is out the
door Btrfs will be in a usable state.

FreeNAS 0.7: powerful and not dead

Posted Dec 19, 2009 2:08 UTC (Sat) by mheily (subscriber, #27123) [Link]

> Also, I wonder how well ZFS works with just 128MB of RAM.
> Does anybody here have experience trying to get a couple TB worth of ZFS storage on a low-end machine?

128MB of RAM is an absurdly low amount for a NAS server. You might as well run a webserver on an Apple IIgs while you're at it. Performance will be terrible regardless of filesystem type, since you can't take advantage of prefetching and caching.

My Netgear ReadyNAS (Linux/SPARC) has 1GB of RAM and it's over a year old. Surely the hardware available now has more than 128MB of RAM.

FreeNAS 0.7: powerful and not dead

Posted Dec 20, 2009 3:22 UTC (Sun) by dougsk (guest, #25954) [Link]

>might as well run a webserver on an Apple IIgs

Although, I do agree with your sentiment, I'll see you're ][gs and raise you a ][e.

http://ld8.org:6502/index.html

FreeNAS 0.7: powerful and not dead

Posted Dec 22, 2009 23:10 UTC (Tue) by JackPowell (guest, #62639) [Link]

The CoreNAS website seems to be available now and filling up with info:

www.corenas.org

Regards

Jack

FreeNAS 0.7: powerful and not dead

Posted Dec 25, 2009 17:17 UTC (Fri) by Tet (subscriber, #5433) [Link]

render the whole 'ZFS' thing mute.

s/mute/moot


Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds