FreeNAS or some other form of Linux/Unix?

Status
Not open for further replies.

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150
Hey guys, I absolutely, in no way, have any intentions of pissing in anyone's cornflakes but I read an article last night that raised a very interesting question. As a disclaimer, I am pretty excited about FreeNAS and I am going to use it for my upcoming build but I figured you guys my have some interesting/enlightening opinions.

In this article the author hypotheses that FreeNAS may be an unnecessary layer on top of an operating system that can already perform all of the functions highlighted in FreeNAS.

The main reason I found this idea interesting is because I want to use ZoneMinder in FreeNAS and there appears to be annoyingly little support for installing this app (blame for which I assign to Zoneminder, not the FreeNAS developers) but it shows Ubuntu as a supported OS. I did some digging around and found that Ubuntu now has full ZFS support and there is always the FreeBSD OS that has always supported ZFS.

Anyway, I'm sure there are very good reasons for going with FreeNAS over other flavours of Linux/Unix and I would just like to hear what you guys have to say on the subject.
 

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150

mattbbpl

Patron
Joined
May 30, 2015
Messages
237
Haha, I've read those articles before. The guy from SMB is a little over-the-top in his hatred of FreeNAS, but he's essentially correct - as you are. FreeNAS is an "unnecessary" layer on top of an OS (FreeBSD) that utilizes the ZFS filesystem.

I have the word unnecessary in quotes because the SMB guy either doesn't understand or willfully disregards the purpose of that layer - simplicity and abstraction.

Not everyone is a FreeBSD guru who can reliably set up all this stuff from a command prompt, and FreeNAS uses that layer to gather, condense, and simplify all the options and settings into a more easily digestible and centralized "appliance like" gui.

With that simplicity and abstraction, you lose some of the more "general purpose capabilities" of the OS such as the ability to run certain types of software packages. This is by design, and I've encouraged at least one other individual on here to set up a manual FreeBSD install with his pool if he absolutely had to run the software packages he was requesting (Although look into jails first. Most of these types of requests can be resolved with jails - not sure about your specific needs though).

You probably won't find any anger over your statements/questions here - if you need your box to be a more general purpose box, then FreeNAS isn't for you. Most of us are cool with that.
 

Nick2253

Wizard
Joined
Apr 21, 2014
Messages
1,633
To be honest, the author's point comes down to this:

If you use tools to make your life easier, you are inherently abstracting yourself away from the dirty work, and unless you do the dirty work, you cannot fix problems when they come up.

The problem with this sentiment is that it's an odd place to draw the line on tool use. For a ridiculous example of this sentiment: people who use operating systems to run programs are lazy, and don't know how to properly use assembly code. If something goes wrong, there's no way they can fix it, because they have no knowledge of how it's set up.

This is the same kind of sentiment that you sometimes hear articulated as: "kid's these days don't know anything. They've got all these programs that do everything for them. When I was young, I had to do everything by hand, but I learned how to fix it. What happens when something breaks? Who's laughing now?"

This idea is encapsulated most articulately by the author's statement: "By its very nature, only people struggling with the administration of a standard operating system and/or storage basics would look at a NAS OS package..." This idea is the crux of his argument, but it's absolutely a straw man. In no particular order:

The value in a system like FreeNAS is that it saves a ton of time. If I had to find the right commands to run every time I wanted to make a minor change to my setup, I wouldn't even bother. Instead, with FreeNAS, I have a hugely powerful tool which allows me to focus my time working on other things.

Also, something that the author completely ignores, FreeNAS helps me to not make mistakes. I work on headless Linux systems every day, but I'm not perfect. I have, on more than one occasion, had a minor typo in a command absolutely ruin my day. With FreeNAS, many of the commands I would run are taken care of programmatically, which means my dirty fingers are not in there making typos.

One last point that the author ignores is the ease of backup. With a system like FreeNAS, my entire system configuration is captured in a single file. The ease in which I can restore from a boot device failure is incredible. I definitely could not say the same of a standard Linux or BSD system, with configuration and settings scattered among the different program files, config files, system files, etc.
 

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150
Damn, those are some fine responses, gentlemen. I'm glad the torches and pitchforks didn't come out as I would hate to be branded a heretic :D

I will look into jails. I'm still a total linix n00b so it's definitely going to take some time to get this stuff figured out. I just really hope I can get that Zoneminder working so I can avoid having to install a windows VM :/
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
Hey guys, I absolutely, in no way, have any intentions of pissing in anyone's cornflakes but I read an article last night that raised a very interesting question. As a disclaimer, I am pretty excited about FreeNAS and I am going to use it for my upcoming build but I figured you guys my have some interesting/enlightening opinions.

In this article the author hypotheses that FreeNAS may be an unnecessary layer on top of an operating system that can already perform all of the functions highlighted in FreeNAS.

Wow. That article... ridiculous.

The main reason I found this idea interesting is because I want to use ZoneMinder in FreeNAS and there appears to be annoyingly little support for installing this app (blame for which I assign to Zoneminder, not the FreeNAS developers) but it shows Ubuntu as a supported OS. I did some digging around and found that Ubuntu now has full ZFS support and there is always the FreeBSD OS that has always supported ZFS.

Anyway, I'm sure there are very good reasons for going with FreeNAS over other flavours of Linux/Unix and I would just like to hear what you guys have to say on the subject.

I will note that you cannot install ZoneMinder "on" FreeNAS, but you can make a jail and install it inside the jail, which is just dandy.

So back to the original point here. FreeNAS is a layer that's designed to make life easier. Even those of us who've been using FreeBSD literally since before they came up with the name sometimes get tired of doing all the design and validation work of creating a high quality, problem free file server with all the bells and whistles. There was always some idiotic problem with Samba or you'd forget to update some other package and then something would break. Maintaining something as mundane as a custom made fileserver appliance could be a poor use of time for highly paid UNIX sysadmin staff.

There is ABSOLUTELY NOTHING I WANT IN FREENAS THAT I COULDN'T DO IN FREEBSD. Nobody ever said FreeNAS is some sort of magic sauce that causes FreeBSD to do things that you couldn't make it do on its own. But here's some developers who are focused on producing a coherent, high quality product, and the entire extent of my effort to deploy a server involves loading the ISO and spending about fifteen minutes on configuration. They're testing the Samba. They're tweaking the OS. They're problem-solving the device drivers. I don't need to play the driver guessing game. I know that the 9211-8i with P20 driver is the way to go, and there's about a BILLION hours of problem-free operation in aggregate by all the installed FreeNAS boxes. I chose to get out of the business of trying to build office fileserver platforms because I had better things to do. No need to reinvent the wheel.

So the thing is, yes, you can actually go and build your own automobile from available parts, and that's expected to work. But the FreeNAS developers, they've already done all the hard work of selecting the best bits and figuring out how to put it together well, so the car you get when you go with FreeNAS is something like a Tesla whereas the car you get when you build it yourself is the janky P.o.S. you assembled yourself and didn't bother knocking all the rough edges off of, because to do so would require years of work. Did you remember to set up SMART monitoring? Did you set up zfsd to do automatic drive replacement? Did you get graphing of network, disk, and system statistics working? Did you fully debug your replication tool? These are all very, very sharp edges. And what happens when you need to do an upgrade? Are you prepared to go and do all the revalidation and chase down all the dependencies?

FreeNAS aspires to be an appliance to make all that ugly under-the-sheets UNIX and ZFS CLI stuff go away. It's trying to do for NAS usability what Mac OS X did for UNIX workstation usability. FreeNAS isn't 100% of the way there, and the fact that you can have dedicated developers working on a product for five years and still have lots to do says something about how hard it is to make a good fileserver appliance.

I don't think anyone here would be angry with you for doing that FreeBSD or Ubuntu based build. It's great learning. But at the end of the day, I'm going to suggest that you're better off with something like FreeNAS... or Nexenta... or some other carefully assembled storage appliance software.

And the beauty of it is, unlike what the author of your article seems to think, you don't actually need to fully understand the innards. Which is @Nick2253 's excellent point, or mine with respect to Mac OS X. You just need to understand the interface that's presented to you, because someone else has done all the hard work of making the icky stuff accessible and reliable.
 

Spearfoot

He of the long foot
Moderator
Joined
May 13, 2015
Messages
2,478
Heh. I doubt the blog author is a sysadmin. Or perhaps he got his feelings hurt here on the forum? :smile:
 

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150
Wow. That article... ridiculous.



I will note that you cannot install ZoneMinder "on" FreeNAS, but you can make a jail and install it inside the jail, which is just dandy.

So back to the original point here. FreeNAS is a layer that's designed to make life easier. Even those of us who've been using FreeBSD literally since before they came up with the name sometimes get tired of doing all the design and validation work of creating a high quality, problem free file server with all the bells and whistles. There was always some idiotic problem with Samba or you'd forget to update some other package and then something would break. Maintaining something as mundane as a custom made fileserver appliance could be a poor use of time for highly paid UNIX sysadmin staff.

There is ABSOLUTELY NOTHING I WANT IN FREENAS THAT I COULDN'T DO IN FREEBSD. Nobody ever said FreeNAS is some sort of magic sauce that causes FreeBSD to do things that you couldn't make it do on its own. But here's some developers who are focused on producing a coherent, high quality product, and the entire extent of my effort to deploy a server involves loading the ISO and spending about fifteen minutes on configuration. They're testing the Samba. They're tweaking the OS. They're problem-solving the device drivers. I don't need to play the driver guessing game. I know that the 9211-8i with P20 driver is the way to go, and there's about a BILLION hours of problem-free operation in aggregate by all the installed FreeNAS boxes. I chose to get out of the business of trying to build office fileserver platforms because I had better things to do. No need to reinvent the wheel.

So the thing is, yes, you can actually go and build your own automobile from available parts, and that's expected to work. But the FreeNAS developers, they've already done all the hard work of selecting the best bits and figuring out how to put it together well, so the car you get when you go with FreeNAS is something like a Tesla whereas the car you get when you build it yourself is the janky P.o.S. you assembled yourself and didn't bother knocking all the rough edges off of, because to do so would require years of work. Did you remember to set up SMART monitoring? Did you set up zfsd to do automatic drive replacement? Did you get graphing of network, disk, and system statistics working? Did you fully debug your replication tool? These are all very, very sharp edges. And what happens when you need to do an upgrade? Are you prepared to go and do all the revalidation and chase down all the dependencies?

FreeNAS aspires to be an appliance to make all that ugly under-the-sheets UNIX and ZFS CLI stuff go away. It's trying to do for NAS usability what Mac OS X did for UNIX workstation usability. FreeNAS isn't 100% of the way there, and the fact that you can have dedicated developers working on a product for five years and still have lots to do says something about how hard it is to make a good fileserver appliance.

I don't think anyone here would be angry with you for doing that FreeBSD or Ubuntu based build. It's great learning. But at the end of the day, I'm going to suggest that you're better off with something like FreeNAS... or Nexenta... or some other carefully assembled storage appliance software.

And the beauty of it is, unlike what the author of your article seems to think, you don't actually need to fully understand the innards. Which is @Nick2253 's excellent point, or mine with respect to Mac OS X. You just need to understand the interface that's presented to you, because someone else has done all the hard work of making the icky stuff accessible and reliable.
Well I am sold, sir :)

Just to clarify, I can still run that Zoneminder app in a jail even though it doesn't specify FreeNAS or FreeBSD as a supported OS? Do you think it will be a nightmare to get working or is this a pretty common scenario (random Linux/Unix apps running in jails on FreeNAS)?
 

mattbbpl

Patron
Joined
May 30, 2015
Messages
237
Wow. That article... ridiculous.
I'm actually surprised you haven't seen it before. That thing gets circled around a lot on sites like Reddit, Anandtech, and ServeThehome (and the guy himself chimes in with comments on those forums in some cases).
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
15,504
I can still run that Zoneminder app in a jail even though it doesn't specify FreeNAS or FreeBSD as a supported OS? Do you think it will be a nightmare to get working or is this a pretty common scenario (random Linux/Unix apps running in jails on FreeNAS)?
It's a pretty common scenario, but when I tried running Zoneminder under FreeNAS about a year ago, I ran into some trouble. The available FreeBSD package at the time was a few versions out of date, and the Zoneminder source itself didn't want to compile. I set up an Ubuntu VM, put Zoneminder on that, and that worked fine. I didn't spend a whole lot of time trying to get it running on FreeNAS; it may well have been a simple fix, but I already have the VirtualBox jail running, so setting up the VM seemed like the easier way to go.
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
Well I am sold, sir :)

Just to clarify, I can still run that Zoneminder app in a jail even though it doesn't specify FreeNAS or FreeBSD as a supported OS? Do you think it will be a nightmare to get working or is this a pretty common scenario (random Linux/Unix apps running in jails on FreeNAS)?

I can't say for certain. I can tell you that Zoneminder is available as a FreeBSD port, so if you create a FreeBSD jail, and then proceed to build it, it ought to build and wind up in a possibly-unconfigured-but-probably-usable state. As with anything on UNIX, what ought to happen and what actually happens are sometimes divergent, as @danb35 notes above.
 

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150
I can't say for certain. I can tell you that Zoneminder is available as a FreeBSD port, so if you create a FreeBSD jail, and then proceed to build it, it ought to build and wind up in a possibly-unconfigured-but-probably-usable state. As with anything on UNIX, what ought to happen and what actually happens are sometimes divergent, as @danb35 notes above.
So when you say "FreeBSD jail" does that mean a FreeBSD virtual machine or do jails have different flavours that allow apps to run for different OS configurations?
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
A jail is a chroot-like construct that provides some level of isolation for a guest FreeBSD system. It shares the host kernel and resources, but makes the host opaque to the guest. So you can install a complete FreeBSD system inside a jail. It won't have its own running kernel, but in the most important ways it will behave like its own little FreeBSD system. Because it's actually just a way of compartmentalizing resources using the existing kernel, it works out to be an extremely efficient way to provide a private environment to run other stuff that can run on FreeBSD. This is the way to go if you can.

You can run a virtualization engine like VirtualBox inside a jail, which allows you the option to run some *other* operating system besides FreeBSD. This is less efficient. However, sometimes things just don't work the way you want and it can be annoying to have to hack at something extremely complicated like Zoneminder in order to figure out how to get it to work. That's mostly a solution for those of us who write code and/or hack on systems for a living. For the average guy, it's probably easier to stick a VirtualBox with a Zoneminder-friendly OS (or perhaps even a prebuilt Zoneminder appliance) if you run into trouble trying to get it to work on FreeBSD.

So there's pretty much guaranteed to be some sort of path forward.
 

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150
A jail is a chroot-like construct that provides some level of isolation for a guest FreeBSD system. It shares the host kernel and resources, but makes the host opaque to the guest. So you can install a complete FreeBSD system inside a jail. It won't have its own running kernel, but in the most important ways it will behave like its own little FreeBSD system. Because it's actually just a way of compartmentalizing resources using the existing kernel, it works out to be an extremely efficient way to provide a private environment to run other stuff that can run on FreeBSD. This is the way to go if you can.

You can run a virtualization engine like VirtualBox inside a jail, which allows you the option to run some *other* operating system besides FreeBSD. This is less efficient. However, sometimes things just don't work the way you want and it can be annoying to have to hack at something extremely complicated like Zoneminder in order to figure out how to get it to work. That's mostly a solution for those of us who write code and/or hack on systems for a living. For the average guy, it's probably easier to stick a VirtualBox with a Zoneminder-friendly OS (or perhaps even a prebuilt Zoneminder appliance) if you run into trouble trying to get it to work on FreeBSD.

So there's pretty much guaranteed to be some sort of path forward.
Ahhhh ok, that makes perfect sense. Well maybe a guy will get lucky and everything will just work :P

Thanks @jgreco
 

Wallybanger

Contributor
Joined
Apr 17, 2016
Messages
150
Let us know how it goes, eh?
Will do. That may be a ways off. Have to order gear, build a box and burn everything in first ;)
 

melloa

Wizard
Joined
May 22, 2016
Messages
1,749
Here's the thing

I've been around since z-80 was THE processor, and before that with IBM/Burroughs/Unisys and other dinosaurs that walked the face of earth; Coded in Fortan, Cobol, Pascal, C++, etc, etc.

When someone says that something like FreeNAS is an unnecessary layer on top of an operating system, he's better be able to configure FreeBSD from a shell and have the system up and running in 10 minutes like we can do with FreeNAS, so Wallybanger I can honestly say that I recommend you seriously try FreeNAS if you are interested in a flexible and robust NAS with tons of extras. I'm using it for over an year and am thrusting my personal data to it (with a 2nd box as back-up as all things fails as per Murphy's law).

Regarding Zoneminder I do run it on a linux box. Had it on a VM and was not performing well due to the number of cameras I have. Tried setup in FreeNAS but was not successful. The ports are now upgraded to a new version that I'm testing, but even if successful, not sure I want that running on FN to won't take resources from my other appliances (i.e. Plex that I want to have streaming at max quality flawlessly).

Here's the github for ZM: https://raw.githubusercontent.com/f...er/multimedia/zoneminder/files/README.FreeBSD

Good luck!
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
Nicely put @melloa ... at a certain point you get to that level where you just want to get your stuff done and you don't really feel a need to reinvent the file server. :smile:
 
Status
Not open for further replies.
Top