This is the first part in our seven-part series on the BSD series of operating systems.
In this series, we’re going to try out each of the four major BSD systems.
From Wikipedia:
The term “BSD” commonly refers to its open-source descendants, including FreeBSD, OpenBSD, NetBSD, and DragonFlyBSD.
I started working with Unix in a pre-Linux environment, and learned Unix on SunOS, HP-UX, AIX, and SGI systems. Linux came along and my feeling was “cool, another Unix to play with” because learning the quirks of each OS just went with Unix.
Today, we are evolving towards a Linux monoculture. Commercially, Solaris will be dead soon and IBM’s AIX is almost a closed ecosystem. That leaves Linux…and BSD.
The BSD operating systems (FreeBSD, OpenBSD, NetBSD, and DragonFlyBSD, listed in order of popularity) are cousins to Linux. When I was a kid we’d visit my cousins in Canada and everything was very familiar but some things were a little different and you had to learn them. That’s the experience Linux people have when they play with BSD.
The Backstory
The University of California, Berkeley was embroiled in a lawsuit over Unix with AT&T, which wasn’t settled until 1994. Shortly after that, the famous Net/2 final distribution was released. From this comes FreeBSD and NetBSD, and from those, DragonFlyBSD and OpenBSD, respectively.
Note that Linux came along in 1991 and really picked up steam fast in 1992-1993, so that by the time Net/2 was free and open source software, Linux was already well established. If that lawsuit had never happened or it had been settled earlier, perhaps we’d all be using BSD-based systems today.
Today, each BSD family member has an individual identity. Make no mistake, this is high quality software and some of these BSD operating systems power very impressive solutions, sites, and services.
Part of this is due to licensing. Linux and much of the Linux ecosystem (glibc, gcc, and many other etceteras) are licensed under the GPL. BSD operating systems are licensed under the BSD license, which has no copyleft requirements. Apple’s macOS, for example, is derived from BSD for this reason.
But even if licensing wasn’t a differentiator, there are compelling reasons to use these operating systems. OpenBSD is a unique security-focused operating system. FreeBSD is built to be highly performant on x86-64 systems. NetBSD will run on your grandfather’s pocket watch.
One striking difference between BSD and Linux is that all userland is under one shared source. You can type a single make command and rebuild everything in the OS, from kernel to utilities to installed packages. This is very different from Linux, where the Linux kernel is joined with some GNU project userland tools, and then a diverse array of packages from many authors are installed to deploy the OS. On BSD, the entire OS is worked on by one team. This leads, in my experience, to greater consistency version over version.
It’s also good to stretch one’s Unix muscles and see how core ideas in the technology can be implemented in other ways. Some major ways the BSDs are different:
- init systems
- filesystem layout
- accounting
- system utilities (ps, df, etc.)
- firewalls
- package/port installation (just as there is yum vs apt)
Finally, one big flex by the BSD crowd is documentation. Both OpenBSD and FreeBSD documentation is gorgeous, and because it’s all maintained under one developer roof, in my experience it’s very up to date and accurate.
My BSD History
I’ve used OpenBSD a lot because it is simple and very well put together, and the documentation is amazing. The others I’ve only dabbled with over the years. NetBSD on a Mac 68K, and FreeBSD out of curiosity – neither in about 10 years.
So What Are We Doing Here?
In this series, we’re going to try each of the four BSDs out, with the goal of installing Nginx + MariaDB + WordPress.
I’m not going to configure a firewall on each because they all use OpenBSD’s pf, so for OpenBSD I’ll configure pf as an example for all.
Next Up: VM Config at Vultr
Related Posts:
Will the Linux Kernel Be the Last GNU Public License Project Standing?
Vultr Welcomes AMD Instinct MI300X Accelerators to Enhance Its Cloud Platform
Vultr Partners with SQream to Enhance Data Analytics through GPU Acceleration and Improved Scalabili...
Do You Get Downtime Notifications? Reason for Outage Explanations? If Not, You May Need a New Provi...
Let's Try BSD, Part 7 of 7: Conclusions About FreeBSD, OpenBSD, NetBSD, and DragonFlyBSD
Let's Try BSD, Part 6 of 7: Jump Into the Unknown With Me As I Install DragonFlyBSD!
- Go Green in 2025: 5 Things You Can Do To Reduce Your Hosting Carbon Footprint - March 24, 2025
- ByteHosting is Celebrating Nordic Day with a Special, Crazy Offer!8GB RAM VPS for Only €3.99/Month! - March 23, 2025
- “The Biggest Supply Chain Hack of 2025”: Oracle Cloud Leaks 140K Tenants’ Details - March 22, 2025
Fantastic. Thanks for the backstory.
What I was most excited to read about was your thoughts on documentation. In today’s era (2024) of LLMs and, good documents 100x the power. Someone with a doc, llm, and no prior knowledge can just ask.. how do I….?
Looking forward to your future articles.
Actually NetBSD uses npf which is different than OpenBSD’s pf.