Lightweight Linux-based NAS application that installs on any supported hardware.
Gorgeous web-based status pages
Runs on anything supported by the 2.4.36 kernel
Good offering of network protocols
Console only administration
No folder-level permission settings
No folder-level service export control
No software RAID options
Why build your own NAS? Simple. Because there are plenty of great NAS applications, like NASLite, that are ready to turn an old (or new) computer into a lightweight NAS device. As NAS distros go, NASLite is extremely light, weighing in at less than 7 MB! It's Linux-based and very easy to deploy and administer.
NASLite sports the usual collection of file transfer services including CIFS (SMB), NFS, AFP, and FTP all topped off with a rsync server. NASLite runs on a pretty extensive list of hardware—pretty much anything supported by the Linux kernel 2.4.36 tree.
NASLite has a set of nice built-in status webpages but, surprisingly, is not administered via the web, but rather via Telnet. NASLite packs a few other handy features such as SMART disk monitoring and disk capacity alarms.
NASLite comes in three flavors: the "HDD" version (hard drive installed) that I'll be reviewing; the "CDD" version that boots directly from CD; and the "USB" version that boots from a USB flash stick. Each version is priced at $29.95.
NASLite uses a text based installer (Sorry folks, no fancy screenshots for this one!). As I've said before, it's not pretty, but it gets the job done.
Figure 1: Text only install
The installation process is actually as easy as advertised; all you have to do is select the right drive and start the install. The whole install process takes under 5 minutes.
Figure 2: Formatting the disks
I had a bit of trouble getting my Belkin F5D5000 Ethernet adapter working again, as I did with FreeNAS, but this isn't NASLite's fault. However, a D-Link DGE530T worked wonderfully. My NASLite system specs are shown in Table 1. To spice things up a bit, I decided to install NASLite on the same machine I had FreeNAS running on for a bit of head-to-head comparison.
NASLite System Specs
Western Digital WD200AB 20Gb
Seagate U5 ST310211A 10Gb
Table 1: Test System Specs
The NASLite HDD version is booted with a flavor of SYSLINUX meaning that the primary OS partition is formatted with the old MS-DOS filesystem, an interesting choice to say the least. All the shares, thankfully, are formatted with Linux standard ext2, with the option of adding a journal filesystem (ext3).
After the install, you reboot into the new NASLite installation. During the initialization sequence, you'll see that two steps fail, i.e "Retrieving configuration settings" and "Verifying license ID". Then log in using the default username and password: admin and nas. The configuration menu, like the installer, uses a "ncurses" style text-based menu system. Although not pretty, it is intuitively laid out and just works.
Figure 2: Console Main Menu
First enter the provided license code, then enter the "Network Configuration" menu to set up NASLite's IP address. Surprisingly, there's no DHCP option; you have to manually set a static IP for NASLite. Next, return the to main menu, save the configuration and reboot.
Figure 3: Rebooting again
Now you can point your browser at the newly-set IP address to view NASLite's web status pages.
Figure 4: Web Status Root
Surprisingly, NASLite's embedded web server defaults to directory listing instead of rendering the "home" status page, leaving the user to navigate the directory structure to find the appropriate page. This might be just a minor annoyance, but it really detracts for the attractive NASLite web interface.
Once I got to the main status page (Figure 5), the subsection icons in the side navigation bar, at first, were a little confusing to navigate with. A short caption under the icon would have been helpful.
Figure 5: Web Status Page
Before we can enjoy the rest of NASLite, we need to "unlock" it by requesting an unlock code. Note that this is in addition to having previously entered the License ID.
Figure 6: Unlock Code Request
Once you request the unlock code (Figure 6), you'll need to switch back to NASLite's console or dust off your Telnet client to enter it. Interestingly enough, this means that installing NASLite HDD actually requires two computers. One to use as the NAS and another to retrieve the unlock code (since there's not a way to request it from within NASLite's configuration menu). Now, this isn't a huge Inconvenience for most of us, but it would have been nice to integrate the unlock code retrieval into the console configuration menu.
Adding and configuring disks in NASLite is pretty straightforward. Using the console configuration menu, either via attached keyboard and monitor or via Telnet, simply select the disk from the "Storage Configuration" menu to configure it and format it. The "Export Disk" setting is pretty much the extent of the permissions. Disks can be exported read-write (RW), read-only (RO) or not at all (--). Not quite the as full-fledged as something like unRAID's permission settings, but it's better than nothing at all.
NASLite also has a capacity alarm, which sounds the system speaker when the specified capacity is reached. NASLite's documentation notes support for most common hardware RAID controllers, but unfortunately lacks software RAID. NASLite packs an interesting "mirror" feature, which allows you to mirror a remote disk via rsync. This is handy for an "on the fly" backup setup.
Services are configured (Figure 7) by simply toggling them between read-write, read-only or off altogether. When a service is switched on, every active drive is exported via that service.
Figure 7: Services Configuration via telnet
I tested NASLite with iozone, as per our usual test procedure to see how NASLite stacks up against its FOSS cousins.
The test was run from a Opteron 165 with 2 GB RAM running Windows XP SP2.
Since my testing machine differs from the one used for SmallNetBuilder's NAS Charts, the Synology DS107 was also tested with the same machine to help establish a frame of reference.
Figure 8: 1000 Mbps LAN Write Performance
In Figure 8, NASLite's write performance fares pretty well against FreeNAS, probably due to Ethernet driver differences between Linux and BSD.
Figure 9: 1000 Mbps LAN Read Performance
In Figure 9, NASLite also performs well on the read side. As with FreeNAS, performance drops off considerably when the NASLite system starts runs out of RAM at a file size above 384 MB.
If you take a look at NASLite's documentation, it doesn't advertise any of the features that I usually look for in a NAS. To me, it really seems it was conceived as a NAS "rescue disk". It works great for that, an easy install with no complicated features to slow you down, allowing you to quickly add a "rescue NAS" to your network. The documentation is excellent and it has an active user base and on top of that, NASLite packs some pretty good performance.
But there is an unwritten agreement between the FOSS community, companies implementing FOSS into proprietary software packages and consumers. Companies offering a commercial product based on open source code really need to bring something new and exciting to the table that's not available in the FOSS community (Mac OS X is a beautiful example of this).
With NASLite, I don't see much value in the "proprietary" elements offered by NASLite. From what I could tell, all you get is a ncurses menu and a few pretty status pages. Status pages are nice, but they are only there for checking up on things.
FreeNAS, on the other hand, offers virtually complete control of the entire application via a browser-based front end. And there are numerous other little things that keep NASLite from being in the same league as FreeNAS (or unRAID for that matter), namely lack of a DHCP client, folder-level service export control, lack of software RAID, etc.
Alone, none of these faults are really deal-breakers, together, they add up. As a "rescue NAS" application, NASLite is great. Aside from the annoyingly-long unlocking procedure for the HDD version, the install is painless and the services just work. But for a long-term, truly full-featured NAS solution, I'd go with FreeNAS.