back
154 comments
I wonder why this got so many votes to be honest, it's from May 2014 and as far as why one would want to try FreeBSD it is not very detailed. That being said:

I use FreeBSD and (obviously) prefer it, but:

1) ZFSonLinux has made huge steps forward and actually (at least in my opinion) is production ready and rock solid (of course it's not as good as ZFS on FreeBSD though, for example it's lacking some features and of course it's not as proven as of now)

2) Usable containers finally have come to Linux in the form of Docker and everybody is absolutely hyped about it (I would argue though that Jails has more features, is more stable and mature)

The most obvious reason for me to use FreeBSD though is just the difference in philosophy. Don't rapidly make big changes, think everything through, don't surprise users, don't make upgrades that call for massive user intervention, and it's democratically governed and yes, it's a complete OS. Code quality is also better (have you actually looked at what code makes it into the Linux Kernel?), and I would argue therefore security and stability is way better.

Just my 2 cents, nothing wrong with Linux, have used it for years, now I would not want to go back though.

And a small Side Note: No systemd, not to start a flame war, but it is taking over the linux-sphere and I find it's design just horrific

Sorry if I'm too harsh, but saying that ZoL is "rock solid" and "production ready" sounds like a joke to my ears.

ZFS is an extremely complex filesystem, and it took Sun _years_ of internal testing first, and hundreds of angry customers later (sadly, at some point, the only way to improve a product is through real world testing), to reach a milestone where it was really production ready.

I know that on these days of dockers and unicorns, "production ready" has very different meaning than years ago, but still...

Where is ZoL not up to speed compared to FreeBSD / ZFS?
Are there significant differences in usability between BSD jails and LXC?
>I wonder why this got so many votes to be honest Because people love FreeBSD :)
I recently switched my personal box to FreeBSD. I honestly find it significantly easier to manage than Linux, and have greater trust in its reliability merely from its simplicity.

The single biggest thing which stood out for me was PF (from OpenBSD). Anybody who has ever had the grace of managing IPTables on Linux, give PF a go with /etc/pf.conf (docs: https://www.freebsd.org/doc/handbook/firewalls-pf.html, my config: https://github.com/jamescun/infrastructure/blob/master/roles...).

> Anybody who has ever had the grace of managing IPTables on Linux

Nowadays few people manage IPTables directly. Long ago I used to maintain my own convoluted scripts (ipfwadm, ipchains, iptables...) but once I discovered Shorewall I never looked back - multi-interface multi-VLAN rounting setups can now be sanely managed from the comfort of very readable configuration files.

Here's PF from a VPS running FreeBSD (slightly changed): https://gist.github.com/atmosx/1d4bf8ad42d0447cb415
On that note, I'm currently on Debian Stretch which has a Linux 4.2 kernel and consequently great support for nftables (iptables replacement).

I never truly grokked iptables but configuring nftables reminded me of putting up a pf firewall on OSX. In fact, I'd say it was even easier. The docs could be a tad bit better, but the actual format itself is intuitive and easy to understand.

I'd highly recommend it over iptables if one has the chance.

That PF code is from OpenBSD 4.5, released in May 2009. I wonder what fixes and improvements are missing.
afaik Iptables is more complex but also has more features than PF.
> If your understanding of the server OS does only allow you to copy/paste random strings from Stackoverflow, you might not really enjoy FreeBSD (or anything besides Ubuntu) — but then, why are you operating a server in the first place?

To serve stuff.

(To expand on this -- most people don't use software, they use software to GET STUFF DONE. Very few people want to operate a server. They operate a server because it allows them to do something they want to. If your FreeBSD pitch is "you should want to operate a server," you're already not reaching most of your possible audience.)

That type of viewpoint is hurting our industry. Just blindly doing things is not productive at all. You should learn and understand what it is you are doing before you do it. Just getting shit tonnes of stuff done is not productive at all if you don't understand how or why you are doing it.

Truck drivers actually know how to drive, Crane operators know how to run a crane, and people operating production servers costing businesses time and resources should also act in the best interest of the business.

What you said can be applied to anything: "most people don't use programming languages, they use programming languages to GET STUFF DONE".

If everyone strictly followed this we wouldn't be using any programming languages other than Java or Python.

Using FreeBSD does not preclude you from getting stuff done, but you do need to have an inclination to try out new (for you) things in your machines right now. It takes some critical mass of enthusiastic adopters (not sure what this number is, but it's there) for your statement to start applying to a wider audience. And from this articles perspective, this critical mass needs to know servers well enough.

I like FreeBSD a lot but I found OpenBSD to be even nicer. Mostly because the of the practice they have of including real examples of command usage in UNIX man pages. Sounds like a small reason, but it was quite a boon.

Caveat: This was a while ago. I don't know if FreeBSD has adopted the same practice.

(Tedious disclaimer: not speaking for anybody else, my opinion only, etc. I'm an SRE at Google.)

> Many major companies like Google or Netflix use FreeBSD in production.

Erm. Well, the company's so huge that I'm sure there's something with some freebsd in it somewhere, but... not really.

I've worked with freebsd extensively in a past job, where it was used for licensing reasons. I don't agree with this article.

Netflix uses FreeBSD as a major component of its CDN (IIRC, it's the OS on all their CDN nodes).
Yahoo used to run largely on FreeBSD, at least up to the mid 2000s. Wonder whether they still use it.
I used FreeBSD for a couple of years but now use Arch (after a fling with Ubuntu in between). Reasons I switched (some of which may have been addressed since):

* building everything from source got old

* lack of support for hardware (Linux has gotten really good at having drivers for hardware)

* ports of desktop applications were not always available, and the POSIX shim to use Linux applications didnt always work without some hacking

* On the server side, Linux pretty much caught up on performance

* As the Linux community has grown, the resources available to Linux users are amazing. FreeBSD feels like Linux used to - always having to hack around and try to research how to make it work and nothing quite working smoothly (on the desktop - less of an issue for servers, where FreeBSD has always shined). Linux has reached a point where I use Linux as my primary desktop OS, and it works great. FreeBSD for the desktop feels like a step backwards.

I did.

I like it.

It feels very clean and well engineered, I always manage to break it via updates though (freebsd-upgrade vs ports vs pkg)

Apparently pkg-ng and ports are linked via a central database though now, so that should not be the case any longer.

As for why? I disliked systemd and was told to "evolve or gtfo" so I gtfo since I didn't like the way it was being forced on me and the few gripes I had with it fell onto people who seemed to be acting very defensively. But I digress.

I'm a systems administrator, in my next employment I will be attempting to get into a company that is making use of freebsd ( hopefully by then I'll be breaking it much less often of course :) )

I sort of hope people are waking up from the rut the industry has been. OSX for dev, Linux for backend services... Even AWS. If I were to start another company today, I'd almost surely be using none of these options to max my productivity.

Right now, OSX has become increasingly hostile to dev and Linux is great at modularizing other features FreeBSD built years ago.

Lately I've been trying to ship software from the newly open sourced and open-er licensed .NET CoreCLR and Mono (via C# & F# respectively) and FreeBSD. The results are surprisingly good, especially with the new native executable compilation target stuff.

And the docker pass-through to FreeBSD jails is hot like the sun. It's like a Docker container with similar constraints but without such severe security issues. That and the new network stack makes containers on FreeBSD pretty compelling, even compared to the 1.9 security work.

And there is that thing where linux is locked in a death roll with itself regarding its initalization system? Freebsd don't have that. And that thing where Apple makes you boot into safe mode and flip an NVRAM bit to actually have root on your box?

Of course, I'm not personally shipping code on iOS, so this discussion is a lot more flexible for me than it might be for many.

I'm a programmer, not a professional sysadmin, but for my side projects I have to manage my own servers (well, small VMs, but you know what I mean) and for this I definitely prefer BSD.

In fact, I prefer BSD in general over Linux, and while I tried to run it on my main dev laptop, a never ending trickle of minor frustrations with hardware support (suspend/hibernate never worked right, weird issues with docking/undocking (I have a Dell latitude), audio, etc.) eventually forced me back to Ubuntu.

So, for the time being I think I'll stick with Linux for my workstations and BSD for my servers :)

Those interested in FreeBSD for their desktop might want to take a look at PC-BSD http://www.pcbsd.org which is a FreeBSD variant geared towards desktop users.

Also, BSD Now http://www.bsdnow.tv and BSDTalk http://bsdtalk.blogspot.com are excellent podcasts for BSD.

Actually, FreeBSD is a great platform to learn about Linux. The more you learn about FreeBSD, the more will you understand Linux.

The only time I will advice not spending time on FreeBSD, is when you have to deal with Java.

I definitely think people should give FreeBSD a try. I also think they should give different flavors or linux a try (e.g. Arch Linux). What I don't agree with is using FreeBSD or a non-mainstream OS in production unless you really know what you're doing.

There are many reasons for this, but the most important one is what the article alluded to; there is a plethora of resources for troubleshooting an issue. If you can't install a package like `gfortran` on something like ubuntu, then you can head over to askubuntu and will likely get the solution to your problem.

What I think FreeBSD (or any less widely used OS for that matter) should do is create the right kind of easily searchable support structure that people coming from Ubuntu and CentOS take for granted.

If you read the article closely, it does not point to a canonical support structure. This does not mean there isn't one or for that matter, many. But, what I can decipher is that there isn't a de-facto site that you can get help from.

These posts should never be allowed on Fridays. I should be out drinking (or doing what normal people do) on Friday nights, not at home installing another OS.
Small reason to use Linux--Linux has taken over the embedded market. Hardware vendors (e.g., Broadcom, Intel) offer BSP (board support packages) for Linux but not any of the BSDs.

The BSP in embedded does sort-of what the PC BIOS does. The BSP is the code to bring the microcontroller from cold start to booting something. Booting Linux is supported by large vendors.

Embedded hardware vendors also offer Linux drivers. Not so much anything else.

> A really big difference is that FreeBSD is the kernel and userland together.

Can someone explain the significance of this as the author seems to keep glossing over it. What's does he mean by saying they are "together" and what is the advantage of it?

If you're interested in a video tutorial on how to set up FreeBSD, these are good videos to start: https://vimeo.com/channels/freebsdguides
I recently switched my dev machine (laptop) from Ubuntu to FreeBSD because I wanted the experience. I wrote a post about it[0]. Basically, wifi and graphics were a PITA and I brute forced my way into getting them working.

After getting past those two though, everything else just worked. The simplicity of the system compared to Debian/Ubuntu is just astounding.

I haven't yet gotten into jails or bhyve, but those are the next two things I'm very excited to work toward.

[0] http://blog.eatonphil.com/2015-11-18/two-weeks-of-freebsd---...

If you're not comfortable putting FreeBSD on your desktop - check out pfSense. Find that old PC, slap another NIC in it and make it your router. You get ZFS for free along with other cool networking and FreeBSD stuff.
Does anyone have a source that FreeBSD are used at Google and Netflix today?
I've been using FreeBSD since 1999 or so, and I love it, but not really for a desktop. On a server you can spend a lot of time dialing it in, building from source, etc. and have a rock solid performant server, and in most cases it's worth it.

On the desktop you can get a system that's basically the same as Linux but you will spend more time on updates and building stuff, and it will be harder to configure your hardware. If the philosophical differences between FreeBSD and Linux are important to you, it's worth it. Otherwise I'm not sure there are many advantages that make it worth the hassle.

I have tried PC-BSD but haven't spent enough time with it to make a really solid conclusion about it.

Linux has a lot of the pathology that comes with monopoly. Low innovation, features almost entirely copied from other OSes (often poorly and very late). Also my brief experience with a kernel patch for Linux felt very abrasive, defensive, and I didn't make any progress (though part of the issue was fixed in a roundabout way a few months later).

If you use freebsd/openbsd/dragonflybsd you are supporting a more innovative group of people, and will have a much more pleasant experience if you need something fixed in the kernel (I had an issue with the freebsd kernel as well, and they acknowledged and fixed it).

I prefer the "Comparing BSD and Linux" article by Greg Lehey. He clearly prefers BSD and thinks that the BSDs are more elegant OSs than GNU/Linux. Nevertheless, he admits that some users may prefer GNU/Linux for various reasons, and we are left to make our own decisions as to the aesthetics of the various unixes.

https://www.freebsd.org/doc/en/articles/explaining-bsd/compa...

I like FreeBSD a lot more than Linux at the administration level. I ran it as my desktop for a few years.

The big problem: all the software I wanted to run assumed the whole world was GNU/Linux. So I ended up running lots of Linux binaries under emulation.

(yes, I could have compiled everything from ports. But the time I spent 3 days compiling OpenOffice to discover the port was known-broken put me off that a bit ...)

Then I discovered Ubuntu and in particular synaptic and the Debian repos and had a "holy shit, this gets it right" moment. Haven't looked back.

I expect almost any laptop I buy will work (with minimal tinkering) with any flavor of Linux I use, but something tells me that is not the case with BSD. Are they all running it on a virtual machine? Or is there a lot more people writing drivers for BSD than I imagined?

The BSDs seem like they have a lot of what I love about Slackware, only more so. I'd really like to try installing one, and might do so on an old laptop this weekend.

Not sure which operating systems are still pushing the enveloppe but I get the impression that these system designs are congealing.

BSD and Solaris were different enough to create real competition, if only friendly. Now it seems that momentum of linux has turned it into the only real option for doing "serious" things, unless you need the license freedom of BSD for an embedded device.

I tried 10.0, and I had a few really irritating problems. My connection didn't stay up well with freebsd, and freebsd-update was not behaving robustly in the face of that. And pkg was frequently having problems with upgrades to itself where you had to follow the lists to know when to do something carefully by hand rather than letting the tool do its thing.
FreeBSD was my first and longest-standing OS love.
How's FreeBSD doing in the exploit mitigation department? Last I checked, they didn't even have ASLR.

http://networkfilter.blogspot.com/2014/12/security-openbsd-v...

I have freebsd in one of my VMs and like it very much. One reason I am reluctant to move it as my primary OS is the lack of CUDA support (this might be an nvidia thing and not the fault of freebsd devs). But still it's seems to be a blocker.

Is there a way to make CUDA work in freebsd? Would be glad to know.

> Many major companies like Google or Netflix use FreeBSD in production.

Citation needed on that Google part. It seems unlikely to be true on any meaningful scale. (That is, when writing a FreeBSD advocacy article, maybe you should not be using the largest Linux user in the world as the FreeBSD example).

This got me curious, and I installed one of the official Vagrant images[1]. However they don't seem to come with ZFS as default file system...?

[1] https://vagrantcloud.com/freebsd

As far as I know, FreeBSD is more secure than most of the out of the box Linux versions(not considering jails). Does anyone know an article that illustrates this?
Not sure what the author's sources are, but Google does not use FreeBSD in production.
I really wanted to try FreeBSD because of ZFS. Then I've seen benchmarks of ZFS between FreeBSD and ZFS on Linux on Ubuntu. Ubuntu was nearly double the speed in the benchmarks. I was sold to Ubuntu. Simple.
#1 selling point missing from the article( though they hinted at it with a nod to /etc/rc.conf ):

It's not infected with systemd.

Edit: Downvotes? This is a selling point, with all major linux distros leaving very little choice for those who dislike systemd.

I can't even stick with using Linux. No way will I manage a BSD.