Why FreeBSD ?
- Well manicured OS, excellent docs. More performant than OpenBSD in every way and approaches Linux performance in some areas (e.g. Networking)
- FreeBSD tends to have fewer features in almost all areas compared to Linux which makes it more approachable and more difficult to mess up.
- Though it has fewer features, it still has a lot of features -- many big companies (Netflix most famously) still use it today for critical functions.
- FreeBSD Kernel and Userland developed together -- it has got that undefined "cohesive" feel
- Has less layers of abstraction than Linux, gets the job done. Because there are fewer layers it's easier to understand what is going on and potentially easier to fix.
- FreeBSD is great if you want to learn pf, zfs, ...
- Worth your while if you are bored of the Linux monoculture and just want to try something a bit different (but not tooo different)
- Changes slowly, so good for setting up on a server that you want to just leave running without too much maintenance
- Will increase your Linux skills because diversity always helps the human brain
- Very simple daemon configuration via /etc/rc.conf
- FreeBSD `bectl` controlled zfs boot environments are just so life changing and amazing. (this is possible via snapper on Linux + btrfs but needs complex installation and is not so integrated).
- FreeBSD will accept (smallish) PRs via GitHub if you find a minor bug. Otherwise it uses the decent Phabricator interface at https://reviews.freebsd.org . This is much better IMHO than the mailing list workflow of Linux. The barriers to contribution are lesser than Linux !!
- FreeBSD still has that warm fuzzy small "community" feel which I like
Or just run -current in production, like we do. See https://people.freebsd.org/~gallatin/talks/OpenFest2023.pdf
Or https://papers.freebsd.org/2019/fosdem/looney-netflix_and_fr...
If you develop, it's probably best to do that against current [1], but if I'm running a web, mail, file, database, etc, server there is IMHO very little advantage to doing so. Most folks aren't trying to push >400Gbps.
You don't need to wonder about this because FreeBSD has an official, documented position on this topic[1]:
"... include work in progress, experimental changes and transitional mechanisms that may or may not be present in the next official release ..."
"... whether or not FreeBSD-CURRENT sources bring disaster or greatly desired functionality can literally be a matter of which part of any given 24 hour period you grabbed them in!"
"(is not) In any way ``officially supported'' by us."
[1] https://docs-archive.freebsd.org/doc/4.4-RELEASE/usr/share/d...
So -current is good for experimentation but probably not too much more than that (unless you're Netflix with team of FreeBSD experts who famously like to run -current -- see https://news.ycombinator.com/item?id=47322830 ).
There are so many factors in favour of Netflix running 16.0 which don't apply elsewhere.
I started using FreeBSD 26 years ago when I worked for Sendmail, who had a couple of core committers on staff or staff-adjacent. Back then the refrain was "it can't do nearly as much as Linux, but what it does do it's much better than Linux".
And specifically it was known that if you wanted the best possible networking stack, FreeBSD was the choice to make (And also why Netflix uses it, for the networking stack).
All this to say, is it true that Linux now has better network performance, or did you mistype that?
Linux just supports so much more hardware capabilities and fancy ways of doing things (e.g. io_uring, bpf logic in kernel etc.) that an expertly setup and tuned Linux system will probably exceed the networking speed of FreeBSD and provide more features while doing so. I'm not a networking expert by any means but this is what my understanding is.
I use FreeBSD for mostly for taste and the other reasons I outlined in my detailed answer above even though Linux is superior performance wise.
FreeBSD has been the gold standard for networking features and performance for decades; not sure I'd agree.
> FreeBSD tends to have fewer features in almost all areas compared to Linux
I'm not sure FreeBSD has fewer features in total but on a new install, many of them are turned off; it doesn’t mandate what should be running. There's a lot beneath the surface to get into.
> FreeBSD Kernel and Userland developed together -- it has got that undefined "cohesive" feel
Definitely! It feels like a single entity rather than a collection of components.
> Has less layers of abstraction than Linux, gets the job done. Because there are fewer layers it's easier to understand what is going on and potentially easier to fix.
Agreed. You can tell the FreeBSD developers attitude is to compose features using what the operating system already offers instead of creating new things from scratch.
> Very simple daemon configuration via /etc/rc.conf
I'd say in a good way; quoting from "Service Management: init vs systemd" [1]:
The comparison is best understood structurally. [FreeBSD](https://vivianvoss.net/dictionary#freebsd)'s init system is composed of precisely five elements: shell scripts, one library, one configuration file, one ordering utility, and the shell itself. Each is inspectable, replaceable, and debuggable with tools that predate the engineer using them.
[systemd](https://vivianvoss.net/dictionary#systemd) is composed of, well, rather more. The binary count stood at 69 in 2013, which prompted some concern. By 2024, it had doubled. The project absorbed fifteen distinct tools that previously existed as independent, single-purpose programs, each maintained by specialists who understood them intimately.
> FreeBSD has been the gold standard for networking features and performance for decades; not sure I'd agree.
This is the accepted wisdom. But reality on the ground is that Linux has probably surpassed FreeBSD in this domain too. With bpf programs making dynamic packet steering decisions in kernel space, io_uring, support for every hardware networking enhancement under the sun and $$$ being spent by everybody on the Linux networking stack (to speed up AI training or supercomputer clusters for example) I doubt a highly tuned Linux box will be slower than the equivalent FreeBSD one.
(P.S. I'm not a networking expert. This is my assessment though. Someone well versed with networking on both FreeBSD and Linux should confirm on this !)
This is not the recommendation of the FreeBSD project. (I would know, because I'm the person in the project who makes that recommendation where appropriate.)
Once X.1-RELEASE ships, (X-1).* is considered "legacy" and we recommend that it is used primarily for maintaining existing systems and that new systems are deployed with the newer major version. But at when it comes to 14.4 vs 15.0 we're not there yet; .0 releases are always a bit bumpy and it's very much a judgement call at this point about how much risk people want to take.
On 14.x and older versions WINE brings `/usr/local/share/wine/pkg32.sh` to keep 32bit packages for WINE32 ... but 15.x does not build 32bit packages anymore ...
FWIW, openSUSE defaults to btrfs on the root filesystem and uses snapper in a very similar manner to zfs boot environments on FreeBSD. I don't have a lot of experience with the latter, but I have been running openSUSE Tumbleweed on my desktop and primary laptop for about 10 years now, and the btrfs+snapper arrangement has worked pretty well for me.
(I also run FreeBSD on my home server and just did the upgrade to 15.0 this weekend, which left me wondering why I had procrastinated this upgrade for so long. It went perfectly fine.)
CachyOS (Archlinux derivative) with either GRUB (since recently), or Limine Bootloader(since longer), too.
Anything outside of the stuff required to make a graphical desktop work?
That's kinda big, no?
The original question was of interest because, outside of the desktop, Linux does have some other stuff they've cooked up. It really would be interesting if some of that other stuff had jumped the fence. I think FreeBSD is as likely to adopt smf or launchd or something as they are to adopt systemd (not very likely in any case), hence my curiosity about whether something had happened.
No? Wayland is available but Xorg is the default.
FreeBSD doesn't install a display server on default so the choice is yours.
There is no GUI installation of FreeBSD so I am not sure what "linux parts" you are referring to. The installation uses curses which is ancient and has existed since the dawn of C, Unix. Abd what FreeBSD is. Is that what your referring to?
pkg is FreeBSD's package manager.
Xorg is a fork of XFree86 which was originally The XFree86 Project, Inc. for Unix Systems, which targeted 4.4BSD.
> FreeBSD lives outside of Redhat's influence.
One could say the parts you seem to count for being from Linux are Unix parts as they've originated from Unix, not Linux.
OpenBSD - has a fanatical band of security obsessed users. Not going away anytime soon.
FreeBSD - It chugs along. Why is FreeBSD worth trying out ? See my reply above.
The thing I like is that almost everything I've invested in learning about it over the past 15 years still applies. Stuff that does change, or is added, tends to be done in a way that is sensible and consistent with established patterns and practices. Linux, not so much.
FreeBSD is more practical but for example you find the config files scattered about the file system whereas in NetBSD they’re always exactly where I expect. SDF.org has a great NetBSD system if anyone wants to try it out.
With that said, with the decline of commercial Unix and the dominance of Linux, POSIX, in my opinion, has become less important, and in its place Linux seems to be the standard. I prefer the BSDs to Linux due to its design and documentation, but Linux has better hardware support, and the FOSS ecosystem, especially the desktop, is increasingly embracing Linuxisms such as Wayland and systemd. The FOSS BSD ecosystems are too small to counter the Linuxization of the Unix ecosystem, and I feel that Apple does not pay much attention to the BSD side of macOS these days.
I don’t expect the BSDs to die, but I do believe they’ll need to find ways to adapt to an increasingly Linux-dominated FOSS ecosystem.
The reality of it is kinda like "Buffalo Bills will win the Superbowl this year".
Is this still true, given how much runs through systemd now? I thought about trying out FreeBSD last time I got a new computer, but decided on sticking with Debian to help skill building on other Linux systems
> Is this still true, given how much runs through systemd now?
Yes, still true. On FreeBSD you will realize what complexity systemd might be hiding from you and what additional features it provides. BTW I don't actually like rc init on FreeBSD that much ! I feel that rc.d can learn a lot from more modern init systems like systemd, dinit etc. I don't like reading highly complex rc scripts !!
How does Linux have a monoculture? You'd think it is anything but "mono" with all the distros.
The kernel, systemd, most mainstream distros use glibc, a whole bunch of GNU utilities, GCC being the default on many distros. Versus a different kernel, different libc, different utilities (gawk vs One True Awk), clang default.
You always have the option of creating your own init scripts with the other systems, and there are plenty of spinoff distros that add those init systems if you so choose.
I'd say this is what ultimately drives monoculture, which is a shame because diversity from glibc (e.g. musl et al.) and other major components could make critical infrastructure more resilient overall
Solaris ? Gone* WindowsNT ? Niche. HP-UX ? Gone* AIX ? Gone* macOS ? Not in server. FreeBSD ? Niche (smaller than WindowsNT though).
In another world there would be at least two open source server os-es battling it out (like in hardware where we have aarch64 vs x64 and so on).
(*) "Gone" means probably a rounding error by now.
Translation: whatever investments in time, tooling, training and documentation you made for 14.x, they were useful for about 18 months.
x.0 shouldn't be deployed in production because it is brand new ...
... but x.4 is too old to be deployed because the cool kids stopped working on the 'x' branch 6 months ago.
Don't agree. Not too many differences between 15.0 and 14.x -- there are some changes -- mostly improvements and enhancements, many just internal but nothing that voids your pre-existing knowledge of FreeBSD or changes your approach drastically.
> x.0 shouldn't be deployed in production because it is brand new ...
Is that true ? Could depend on how conservative you are. 15.0 came out in ~Dec 2025 and we're now in March 2026... I'd say 15.0+latest security fixes/errata should be OK for _most_ people ? 15.1 should be out in June 2026 for those who absolutely insist on waiting...
Nice!
But excited to try it out ASAP! I haven’t made the leap to 15 on my server yet (in part because I can’t decide whether to go with pkgbase or not…), but sharing data more easily with VMs will surely be nice.
What’s the performance like?
pkgbase is optional in FreeBSD 15 BTW.
One way to upgrade the base system and another to upgrade packages just feels inconsistent to me and pkgbase finally resolves that. I've not had any problems with pkgbase. I love it and would highly recommend it.
MFCed (merged from current):
* https://cgit.freebsd.org/src/commit/?id=e97ad33a89a78f55280b...
However... the lack of Docker on BSD is a deal breaker for some of my uses, jumping through hoops is possible, and moving to Podman might work but looks complicated to set up.
On the other hand, Debian 14 will remove GTK2 which breaks other things.
There's always a compromise.