Jump to content

Best Home Sever OS FreeNAS or Ubuntu

I am looking to make a multi-purpose home server and am having a hard time deciding on an OS.  Ubuntu I can install whatever software I need to, including a UI, and is well supported but doesn't have as good of remote management and ZFS support is iffy (not sure this matters).  FreeNAS is very RAM intensive and I am not sure what kind of app support it has but has a great management interface and native ZFS and NAS features.

 

Here are the functions I am hoping to use it for:

NAS drive: ~500GB

Plex Server: hosts the NAS files over Plex

Crashplan:  Back up all the computers in the house to it ~1TB

Owncloud: All of my pictures and documents will be in Owncloud, up to 500GB total data

Proxy: Because I will have Owncloud on one computer and a .NET website on another I will need to set up a proxy to forward specific URLs to another computer as I only have a single external IP.

 

I know Plex and Owncloud are pretty resource intensive so the hardware will need to be beefy.

 

So what OS is best for the above?

 

 

Sub Question.  I want to put the NAS and Owncloud data on mirrored drive.  Is ZFS or just normal motherboard RAID 1 better for this?

Fractal Design Define R5 | i7-4790k | Corsair H80 | Asus Z97-Pro WiFi | 2 x EVGA GTX 970 SSC+ | 16GB G.Skill Sniper@1866MHz | Samsung 840 Evo 256 GB | 1TB + 750GB drives | EVGA 750W G2 | 27" BenQ IPS 1440p@60Hz | Windows 10

Link to comment
Share on other sites

Link to post
Share on other sites

Linux is really the best OS to be running servers of.

An AMD cpu has no place in a solely gaming build, end of.

I3 4150, Intel HD graphics, corsair CX750M, 4gb ram, Asus H81M-E, corsair 230T, Intel stock cooler WD Green 2TB Gigabyte 550TI

Why you shouldn't trust Gpu or Cpu boss Click on this I dare you!

Link to comment
Share on other sites

Link to post
Share on other sites

@yippy3000 Good question.

 

Overall, Ubuntu is probably the more flexible solution, in the sense that there's way more documentation and applications/packages available for Ubuntu and Linux in general.

 

however, "out of the box", FreeNAS will be a little easier to setup for a home server, because it has home server focused features integrated right into it (Such as a web UI for management).

 

Other then that, these days the general consensus is that ZFS is pretty much just as stable on Linux vs BSD (FreeNAS is a BSD fork), so I wouldn't worry too much about that.

 

As for your mirrored 500GB drive, most definitely use Ubuntu. Regular RAID0 will mirror the drives, however, if there is a corrupted file, it won't know which copy (On either mirrored drive) is "good" vs which is corrupt.

 

ZFS on the other hand is designed from the ground up to combat this - what is known as bit-rot or data-rot. Corruption of Data. ZFS will create a checksum every time a file is created or modified, and then will perform a checksum calculation every time that file is accessed. Furthermore, it will periodically "scrub" the entire data pool, to proactively seek out corrupted data and restore it from the other copy.

 

I've personally experienced data corruption on my own FlexRAID RAID5-like array, so I know how much of a pain in the ass it can be.

 

@Vitalius and @alpenwasser both seem very knowledgeable about the subject, so maybe they have some additional input?

For Sale: Meraki Bundle

 

iPhone Xr 128 GB Product Red - HP Spectre x360 13" (i5 - 8 GB RAM - 256 GB SSD) - HP ZBook 15v G5 15" (i7-8850H - 16 GB RAM - 512 GB SSD - NVIDIA Quadro P600)

 

Link to comment
Share on other sites

Link to post
Share on other sites

I am looking to make a multi-purpose home server and am having a hard time deciding on an OS.  Ubuntu I can install whatever software I need to, including a UI, and is well supported but doesn't have as good of remote management and ZFS support is iffy (not sure this matters).  FreeNAS is very RAM intensive and I am not sure what kind of app support it has but has a great management interface and native ZFS and NAS features.

 

Here are the functions I am hoping to use it for:

NAS drive: ~500GB

Plex Server: hosts the NAS files over Plex

Crashplan:  Back up all the computers in the house to it ~1TB

Owncloud: All of my pictures and documents will be in Owncloud, up to 500GB total data

Proxy: Because I will have Owncloud on one computer and a .NET website on another I will need to set up a proxy to forward specific URLs to another computer as I only have a single external IP.

 

I know Plex and Owncloud are pretty resource intensive so the hardware will need to be beefy.

 

So what OS is best for the above?

 

Sub Question.  I want to put the NAS and Owncloud data on mirrored drive.  Is ZFS or just normal motherboard RAID 1 better for this?

Your options are the following in terms of "ease of use":

Linux < FreeNAS < Amahi

  • Linux Server obviously starts out as CLI by default, but you've already mentioned you can install a GUI if you want. It requires some knowledge of Linux to actually get anything done to begin with though.
  • You can set up FreeNAS without touching a CLI and just using common sense, mostly, but you have the option if you want it and will need to use the CLI to do more complicated things gracefully.
  • Amahi is plug N play mostly. It has plugins like FreeNAS and I believe it has those specific plugins (Plex + Owncloud + CrashPlan) as does FreeNAS by default (you have to install them on both, but they are listed by default as options). You might have access to a CLI in Amahi, but I don't think so. It is GNU/Linux-based.

I personally would choose based on how much you like messing with a CLI and configuring things to suit yourself. From what alpenwasser has said, Linux ZFS support is fine, so I don't think that's much of an issue. I want to point out that what makes FreeNAS RAM intensive is ZFS. If you have ZFS on Linux, it should be RAM intensive too (not 100% on that, but I think that's correct). 

Amahi is very minimal in terms of the resources it uses (plugins are their own thing, I'm just talking about the OS itself). 

So, what I'm saying is, all are fine and will work for your purpose, so it's up to you to pick one based on your preferences. 

About your Subquestion: That would be ZFS because ZFS is a CoW (Copy on Write file system) which enables it to Read a RAID 1 array as if it's a RAID 0 array. Increases your read speeds but doesn't increase your write speeds which is nice imo. A normal RAID 1 on a motherboard controller won't do that. 

I know FreeNAS can do that, but I'm not sure if ZFS on Linux has that feature or not.

† Christian Member †

For my pertinent links to guides, reviews, and anything similar, go here, and look under the spoiler labeled such. A brief history of Unix and it's relation to OS X by Builder.

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Please don't use Ubuntu for a NAS. It adds unnecessary overhead to the system. Just install Debian w/o a desktop environment.

 

You'll have to configure stuff more than freenas (which you could also use)... but using Ubuntu isn't necessary or recommended. I don't understand why in today's age Ubuntu is still people's Go-To for a linux OS. :'(

--Neil Hanlon

Operations Engineer

Link to comment
Share on other sites

Link to post
Share on other sites

- snip -

 

 

- snip -

 

 

- snip -

I've been using ZFS on Linux (Arch, to be specific) for about two years now

and so far I'm very happy with it. I don't know how well ZFS works on Ubuntu,

somebody else will need to answer that question.

As Vitalius has said, in the end there isn't really "the best" solution here,

it will depend on your personal preferences. There are many ways to make a

great NAS. Personally I have set up our home server with Arch Linux which,

despite the "rolling distro bleeding edge" mantra, has actually been extremely

stable so far (*knocks on wood*). Plus, it's far easier to set up than many

make it out to be (there are a few very decent tutorial videos which lead you

through the process step by step on youtube, for example, athough at this

point I've done it so many times I can set it up with just a few short notes).

I have however never played around with Plex, Crashplan or Owncloud or

proxies, so I don't know how easy or difficult they would be to set up on Arch

(or Linux in general). Having those as plugins for FreeNAS or something

similar would probably be easier.

As for RAM: ZFS does eat up tons of RAM to cache data for speedier

performance, however it is clever enough to yield to the OS or other processes

when required. I ran ZFS on a Linux system with 4 GB of RAM for roughly a

year. When the system was low on RAM, I did notice ZFS speeds (read and write)

dropping significantly (down to a few megabytes per second). However, I never

managed to actually crash it or have any serious issues. As soon as RAM was

freed up it continued working as if nothing had happened. Of course, this

might be more troublesome if you run ZFS as your root file system, but if you

run Linux there really is no need for that.

Note that FreeNAS is based on FreeBSD and memory management is something which

is very deeply buried in the kernel, so the constrainst might actually be

different between the two (although I don't know this for a fact as I haven't

really found any reliable info on it).

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
Share on other sites

Link to post
Share on other sites

My Arch server only has about ~150 packages from the core repo to minimize maintenance and breakage. I install everything else in Docker containers with available preconfigured ownCloud, Plex, Torrent, etc images. From my testing, Btrfs RAID 1 and 10 is stable. Arch can be installed in as little as 6 commands.

 

http://linustechtips.com/main/topic/202063-linux-distribution-choosing-guide/?p=2739927

Not bad, not bad. I have ~240 packages on my VM servers (~450 on the host because I installed

a GUI at some point, although I only use it in emergencies).

It is kinda funny, once you get beyond the "CLI is scary" thing of an Arch install, it really

is little more than

  • partition and format,
  • mount,
  • pacstrap,
  • chroot,
  • basic config (I usually do stuff like hostnames, locales, timezone etc. here),
  • install and config bootloader,
Just today I set up an Arch ZFS root install with encryption (ZFS on top of

Luks) on my old laptop as an experiment. I did need to fiddle around a bit

with the kernel parameters for the bootloader, and there are a few things to

pay attention to with regards to ZFS, but it really wasn't all that difficult

either (managed to get it done on my second try :)).

Once I've had it running for a bit I intend to do the same on my Macbook,

although at the moment I can't re-install because I need it up and running for

school.

Anyway, @ OP: No worries, I'm not saying you should jump to Arch, but it has

been the distro with which I've gathered most of my recent Linux experience

(four years now), so inevitably my input will be influenced by that. I can

happily report that I have been extremely happy with it in every role I've

used it (HTPC, laptop, server). But, despite it not being quite as complicated

as many people make it out to be, some careful reading of documentation and

the (rather good) Arch Wiki is highly recommended IMHO.

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
Share on other sites

Link to post
Share on other sites

I would say VMWARE esxi ... well thats what I use... 
 

Then you can easily duplicate any virtual machines you have to new machines with ease by simply copying the files over..

Computer Programming Nerd Guy + Computer Support @ Red Tree IT

Link to comment
Share on other sites

Link to post
Share on other sites

I would say VMWARE esxi ... well thats what I use... 

 

Then you can easily duplicate any virtual machines you have to new machines with ease by simply copying the files over..

 

He should not be putting a Hypervisor OS on a NAS...

--Neil Hanlon

Operations Engineer

Link to comment
Share on other sites

Link to post
Share on other sites

He should not be putting a Hypervisor OS on a NAS...

A footnote regarding virtualizing FreeNAS: Don't. It's not a good idea.

You can do it, but it's even more warned against than having less than 8GB of RAM for ZFS. It's something you do only if you don't care about losing your data.

† Christian Member †

For my pertinent links to guides, reviews, and anything similar, go here, and look under the spoiler labeled such. A brief history of Unix and it's relation to OS X by Builder.

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

I would say VMWARE esxi ... well thats what I use... 

 

Then you can easily duplicate any virtual machines you have to new machines with ease by simply copying the files over..

All functionality on my server goes through VMs (Arch guests via KVM + QEMU on

an Arch host), and it has saved me from quite a few headaches. Snapshot the VM

image before updating, update, if everything goes well, delete the copy, if

not, rolling back the VM is as easy as a copy-paste operation. And on the host

itself I run a minimal amount of crucial packages and custom configs in order

to minimise the risk of something going wrong on that end.

Has worked quite well so far.

 

He should not be putting a Hypervisor OS on a NAS...

 

My experiences with Arch host + Arch guests have been very good, but indeed

not every system is suited for this, as Vitalius mentioned (and I'm pretty

sure such a restriction also goes for other dedicated NAS operating systems,

though I haven't looked into it specifically).

If you go for a more generic system and then specialise it for NAS

purposes you're less likely to be bound by such constraints though, but then

you'll likely need to invest more time into setting up your system; probably

not going to be plug-and-play like with a simple specialised NAS operating

system. I remember spending quite a bit of time figuring out how to set up my

server so that everything was to my liking. To me it was worth it, but that's

a decision everyone will need to make for themselves.

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
Share on other sites

Link to post
Share on other sites

Thanks guys for your input.  I forgot about Amahi, I might go with that for an Ubuntu base with a nice UI on some things but I am still not completely decided.

 

To answer/address a few of the comments:

 

I am comfortable with CLI but I do like a GUI for some things like managing Crashplan.  I was also thinking of using Teamviewer (requires UI) for remote management so that I don't have to open the SSH ports in my router.  As some background, I do have Owncloud running on Ubuntu already but the hardware can barely handle it (photo gallery doesn't load anymore because there are too many photos)

 

I have gone down the ESXi route before and I will not be doing that.  My experience is it is nice if you have a good large RAID array for storage and beefy hardware, if you have my hodgepodge of mismatched disks (except two 2TB ones) it starts sucking real fast.  Performance loss due to overhead, data management becomes a nightmare, retrieving data requires special software instead of just plugging a drive into another computer and multiple OS to manage instead of one.  No thank you, my needs are not big enough for that.

 

Neil, why the hate on Ubuntu? I feel like it got popular by being the most polished and now its popularity is self-fulfilling.  I have used it because it seemed like it had the most support, both in community and in software explicitly calling it out as compatible.  I am considering it this time around because I have familiarity with it now.

 

So my question to you, what does Debian have/not have that makes it better than Ubuntu? Is it just less resource intensive?  Genuinely curious.  If it matters, NAS is actually going to be the secondary use of my server, Owncloud and Plex will be primary and I know both of them are pretty resource intensive.  Also, regardless of the OS I use, I will most likely install a UI for me to fall back on if I want to, I realize that it is wasteful but I am willing to take the performance hit for convenience.

 

Please don't use Ubuntu for a NAS. It adds unnecessary overhead to the system. Just install Debian w/o a desktop environment.

 

You'll have to configure stuff more than freenas (which you could also use)... but using Ubuntu isn't necessary or recommended. I don't understand why in today's age Ubuntu is still people's Go-To for a linux OS. :'(

Fractal Design Define R5 | i7-4790k | Corsair H80 | Asus Z97-Pro WiFi | 2 x EVGA GTX 970 SSC+ | 16GB G.Skill Sniper@1866MHz | Samsung 840 Evo 256 GB | 1TB + 750GB drives | EVGA 750W G2 | 27" BenQ IPS 1440p@60Hz | Windows 10

Link to comment
Share on other sites

Link to post
Share on other sites

Also, regardless of the OS I use, I will most likely install a UI for me to fall back on if I want to, I realize that it is wasteful but I am willing to take the performance hit for convenience.

Don't worry about that too much. I administer my server through SSH 99% of the

time, but in the end even I put a GUI on my server for emergency

purposes. Getting the VMs to boot in a console-only environment in interactive

mode so that I could debug issues locally proved to be way too much of a

hassle, installing a GUI makes it so much easier.. I have used it maybe once

or twice in the past year, but when I do need it, it's really handy. Plus, just

because you install it doesn't mean it always has to be running, I only start

the GUI when I need it.

BUILD LOGS: HELIOS - Latest Update: 2015-SEP-06 ::: ZEUS - BOTW 2013-JUN-28 ::: APOLLO - Complete: 2014-MAY-10
OTHER STUFF: Cable Lacing Tutorial ::: What Is ZFS? ::: mincss Primer ::: LSI RAID Card Flashing Tutorial
FORUM INFO: Community Standards ::: The Moderating Team ::: 10TB+ Storage Showoff Topic

Link to comment
Share on other sites

Link to post
Share on other sites

Well Amahi is out.  I just tried to install it in a virtual machine and.... couldn't get it to run.  It requires some web account and it never detected the install and then I tried to manually connect only to find I have no way of retrieving it's IP address because they removed "unimportant" tools like ifconfig and, because the network wasn't set up properly, I couldn't install it using yum...

 

Now, FreeNAS looks nice, however, is it possible to use Crashplan to backup the FreeNAS server itself (like all of the jails/plugins/datastores)?  If not I am just going to go with a standard Linux distro and roll my own server.

Fractal Design Define R5 | i7-4790k | Corsair H80 | Asus Z97-Pro WiFi | 2 x EVGA GTX 970 SSC+ | 16GB G.Skill Sniper@1866MHz | Samsung 840 Evo 256 GB | 1TB + 750GB drives | EVGA 750W G2 | 27" BenQ IPS 1440p@60Hz | Windows 10

Link to comment
Share on other sites

Link to post
Share on other sites

Thanks guys for your input. I forgot about Amahi, I might go with that for an Ubuntu base with a nice UI on some things but I am still not completely decided.

To answer/address a few of the comments:

I am comfortable with CLI but I do like a GUI for some things like managing Crashplan. I was also thinking of using Teamviewer (requires UI) for remote management so that I don't have to open the SSH ports in my router. As some background, I do have Owncloud running on Ubuntu already but the hardware can barely handle it (photo gallery doesn't load anymore because there are too many photos)

I have gone down the ESXi route before and I will not be doing that. My experience is it is nice if you have a good large RAID array for storage and beefy hardware, if you have my hodgepodge of mismatched disks (except two 2TB ones) it starts sucking real fast. Performance loss due to overhead, data management becomes a nightmare, retrieving data requires special software instead of just plugging a drive into another computer and multiple OS to manage instead of one. No thank you, my needs are not big enough for that.

Neil, why the hate on Ubuntu? I feel like it got popular by being the most polished and now its popularity is self-fulfilling. I have used it because it seemed like it had the most support, both in community and in software explicitly calling it out as compatible. I am considering it this time around because I have familiarity with it now.

So my question to you, what does Debian have/not have that makes it better than Ubuntu? Is it just less resource intensive? Genuinely curious. If it matters, NAS is actually going to be the secondary use of my server, Owncloud and Plex will be primary and I know both of them are pretty resource intensive. Also, regardless of the OS I use, I will most likely install a UI for me to fall back on if I want to, I realize that it is wasteful but I am willing to take the performance hit for convenience.

It's not "what does Debian have that Ubuntu doesn't" but "what does Ubuntu have that debian doesnt".

Ubuntu is built off of debian, but on top of the nightmare that is Unity, it adds unnecessary bloatware that you really don't need in order to make it more "user friendly". You can install a desktop environment on debian (gnome is my personal favorite), and it is still less resource intensive than Ubuntu.

Ubuntu is great if you're new to Linux... But it's not a good operating system. It's like how carriers ruin android by putting shit on it and sending it to the customer. Debian is stock android. Ubuntu is android from Samsung... With touchwiz.

--Neil Hanlon

Operations Engineer

Link to comment
Share on other sites

Link to post
Share on other sites

It's not "what does Debian have that Ubuntu doesn't" but "what does Ubuntu have that debian doesnt".

Ubuntu is built off of debian, but on top of the nightmare that is Unity, it adds unnecessary bloatware that you really don't need in order to make it more "user friendly". You can install a desktop environment on debian (gnome is my personal favorite), and it is still less resource intensive than Ubuntu.

Ubuntu is great if you're new to Linux... But it's not a good operating system. It's like how carriers ruin android by putting shit on it and sending it to the customer. Debian is stock android. Ubuntu is android from Samsung... With touchwiz.

That makes sense, I have always thought of Ubuntu as more of a desktop os, not a server one.  Do you think Ubuntu Server is also bloated?  Either way, did you recommend Debian because it is your favorite or because it is like the Ubuntu I am familiar with but faster/less bloated?

Fractal Design Define R5 | i7-4790k | Corsair H80 | Asus Z97-Pro WiFi | 2 x EVGA GTX 970 SSC+ | 16GB G.Skill Sniper@1866MHz | Samsung 840 Evo 256 GB | 1TB + 750GB drives | EVGA 750W G2 | 27" BenQ IPS 1440p@60Hz | Windows 10

Link to comment
Share on other sites

Link to post
Share on other sites

That makes sense, I have always thought of Ubuntu as more of a desktop os, not a server one. Do you think Ubuntu Server is also bloated? Either way, did you recommend Debian because it is your favorite or because it is like the Ubuntu I am familiar with but faster/less bloated?

So in the Linux world you have two main schools of thought (basically).

Theres Debian-like. And there's RHEL-like. The biggest difference between these two is the package management. Debian like oses use aptitude/dpkg with "deb" files. RHEL-like oses use yum, with rpm files.

Any operating system that uses "apt-get" and .deb for packages is debian-based. So Ubuntu is a direct fork of Debian. So if you're already using a Debian-like os, and you're using it for performance... Why not go straight to the top of the ladder. Debian allows you to do things your own way, and they like the user to have full control over what goes on their system, so there's no hidden surprises or bloatware.

Don't get me wrong. I used Ubuntu for a long time... Up until they released unity and took away my choice to do what I want with my os. I tell people not to use Ubuntu not because I just hate it for no reason, but because I don't think that Ubuntu is as synonymous with open source as it once was. Canonical is an...interesting company.

--Neil Hanlon

Operations Engineer

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×