I've been recommending FreeNAS to people who want to set up their own NAS without having to learn the *nix command line, expecting it would be pretty straightforward to set up and use. And from what I remember of Freenas 7, that was mostly true. However, since I don't actually use it myself, I thought it would be best to give the latest version 8 a try.
It is a completely different beast to version 7, completely re-done and
IMO beckons a re-evaluation from anyone who's been recommending it based on what 7 was like. It's no longer a frugal install that will run on anything, it needs at least a 2GB drive to install on, and the install drive can not be used for any storage. In practice, this role is
IMO going to be mostly fulfilled by USB flash drives, but it doesn't do any favours for boot time. Also, a minimum of 2GB of RAM is recommended, and 8GB!! is recommended for good performance with ZFS. Not looking like the best solution to throw on an old PC any more!
So, I downloaded it and, after installing it to HDD then realising it ate the whole thing, I tried a 256MB flash drive (plenty for v7
IIRC), thinking the 2GB recommendation was just that, a recommendation, in case you wanted to install add-ons or something. Nope, it just completely failed. Despite not actually containing 2GB of the data, the image file contained in the iso is that size (mostly empty space) and must be dd'd straight to the install drive.
After installing, configuring network address, etc, I navigated to the web GUI. On first impressions it looks quite nice, not even a hint of the v7 m0n0wall-derived interface remaining. However, it quickly became quite confusing and intimidating. There's no setup wizard I could find, the tab system takes a bit of getting used to and it does appear quite overwhelming. Anyway, I set about making the sort of NAS I assume most people will want; CIFS with both home directories for every user and a public directory accessible by all authenticated users. I found the process of doing this in v7 lacked some polish but it was
IMO relatively straightforward. Not so with 8.
I suggest you give it a go, blind, and try to stick to using the GUI. Oh and don't read any further if you want to give it a go, *spoilers ahead*.
In essence, what you have to do is create groups + users, create a volume on the drive, then create your CIFS shares. But none of the above was straightforward. When you're creating users, there's an option to choose a group, but setting it doesn't seem to do anything other than prevent a group being created with the user's name. It turns out you have to go in to groups and manually assign users to the group. As for volumes, remember to change permissions as by default, you won't be able to use the drive. CIFS shares, you create custom shares in the CIFS menu, but home directories need to be enabled in the services menu. But *none* of the paths you choose have the directories created automatically (more on this in a sec). Basically, I can see it being rather stressful for your average Joe. I've only touched on the issues I had but I don't want to ramble on for too long. Again, you're best giving in a try on a spare PC if you have some free time.
They do provide a big chunk of documentation but again it's quite intimidating, with no quick start guide and I found quite a lot of the options aren't explained thoroughly or even correctly, as though it's been written by someone who had nothing to do with writing the software, spent a few hours with the finished product and just guessed at what some options are for. One example being, in the CIFS service settings
When it
doesn't do that, it actually enables each user to have their own share i.e. it creates the share, but doesn't create the required folder. I searched for quite a while in the GUI for an option I may have missed, or for something to actually create the directory (how are most people going to know how to do that anyway?) but didn't come up with anything. I eventually resorted to enabling SSH, logging in and creating the folder tree, chmod and chown'ing them so I could progress. If you're designing a GUI in to a system, it should be able to do all common tasks. Forcing the user to log in via SSH to do something as simple as creating folders for new users is unacceptable and completely avoidable.
It really is a shame as I expected a solid, easy-to use but very customisable system (i.e. good defaults, setup wizard, possibly simple/advanced mode selection, etc) I could recommend as a more user-friendly alternative to setting up a *nix server from scratch.
TBH I'm not so sure now.
I'm not really sure where the software is aimed now, it looks too complicated for an 'average' consumer to throw on a PC and have a working NAS, and
IMO it would be very tedious to set up a load of users in a business environment, with better solutions available for both. And it's a terrible shame as it supports the excellent ZFS filesystem natively, with, amongst other things, the file integrity checks other filesystems annoyingly lack (anyone who's had files mysteriously corrupt should undoubtedly feel the same way, and don't think you're safe with RAID either).
I could just be going about things the wrong way, and I do tend to overlook the 'easy' options a lot of the time, in favour of being thorough. But let me know what you think.