BSD vs Linux

I think Linux is great. It’s done a lot for open-source and the hacker community. It’s become very popular for ISPs to use as well. However, for all practical uses, especially business uses, I choose BSD over Linux.

I wish I could say I’m not trying to push my preference in server OSes, but I am. I think you’re better off with BSD than Linux, in most cases. If you’re not into trying new things or looking into alternatives, you’re probably fine with Linux. If you’re into less maintenance, better security, better stability, and having things just work, which are common values in the business world, you may want to look into BSD.

Last year, I came across an excellent essay called BSD for Linux Users by Matt Fuller. Reading this essay explains in detail the differences between BSD and Linux architecturally and philosophically. It even goes into dispelling several myths about BSD that Linux users may have heard.

I’ve been summarizing this essay to several people, and once I even read the entire thing out loud to someone. So far, all of them have realized that they just might be BSD people after all.

The general idea is this: they both stemmed from the concept of Unix, a system developed by Bell Labs. While Linux arrived many years later, in the form of a kernel written by Linus Torvalds as a student, BSD was a natural progression of Unix, sharing much of the original code and written by very similar people.

Because Linux is just a kernel, everything else came from other people. Linux operating systems are very decentralized and consist of many different pieces written independently. By contrast, BSD systems have a solid "base system" with everything you need in an operating system, which is much more than just a kernel.

The development of BSD systems are very centralized, which assures stability and compatibility. Linux development is decentralized, which allows for greater chances of conflicts. To put it bluntly, as the essay will, BSD stands for order while Linux stands for chaos.

This is the result of the communities that they originated from. BSD was built by engineers. Linux was built by hackers. There’s a difference in values and methodology in those two types of people. Those values have been ingrained in the communities and their respective operating systems, and it’s those values that you want to compare with yours in deciding what operating system suits you best.

Like I said before, BSD shares more values with businesses than Linux. Unless your business shares the same values as a hacker at its core, you’re probably better off with BSD. If you’re not a business, and you like to tinker and live on the cutting edge, sure then, Linux might be better for you. On the other hand, if you’re not a business and you just want to use an open-source Unix-like system, but you don’t care about being cutting edge or fitting in with the hacker crowd, you may want to consider BSD.

In any case, you should probably read the full essay and get all the details for yourself.

4 Responses to “BSD vs Linux”

  1. adam Says:

    Though I’m not sure why, Jeff read this entire essay out loud to me. I have to say, I’m converted. Maybe its just maturity, maybe its just a good idea, but the engineering side is seeming a lot more attractive than the hacker side nowadays.

  2. Brian Says:

    As you know, I’ve recently converted to Gentoo after seeing you, Andy and many others mention it. I converted from Debian, which, like most others, is primarily a binary package based distribution. In Gentoo, everything, for the most part, is compiled. Installing binary packages on Debian, RedHat (Fedora) or any of the other distributions (especially 3rd party packages) is tough because not everyone has the same “base system,” and in many cases not everyone has the same version of the libraries that the programs require. With Gentoo, there is no worrying because when you compile something, unless it is explicitly required in the program source code itself, the dependency on a certain version of a library is meaningless, because it is compiled for exactly what is on your system. I guess this is where BSD’s ports system comes into play.

    I know the BSD community shuns Gentoo, by calling the idea of “Portage” a complete rip-off of the BSD ports system. This may be the case, but isn’t the idea of putting the ports system into a Linux distribution the best of both worlds? I think it is. The author even goes as far to say that most Linux users install from binary packages and most BSD users install from source. I use Gentoo and I install from source and only source. Is this not the same thing?

    I immediately drew similarities between Gentoo and the BSD that he is referring to and I’ve always considered Gentoo Linux separate from the other Linuxes. His mention of the “base system” made me think of Gentoo and three possibilities of a “base system” — stage 1, stage 2 and stage 3. His mention of ports made me think of Gentoo’s portage, which is obvious.

    Other than having a website hosted on BSD for a short period of time, I don’t have much experience with it. Call me ignorant, but with Gentoo and its ports rip-off, I don’t really see a reason to switch to BSD — at least for what I do.

    You claim that I will get “better” security, “better” stability, and “less” maintenance by using BSD, well, these are the very reasons I’ve switched to Gentoo. But for someone who wants all that (me) and Linux’s “cutting edge” attribute (also me), I say use Gentoo!

  3. Jeff Lindsay Says:

    Brian,

    Anybody that calls Gentoo’s portage system a rip-off is either not serious or a serious elitist. Gentoo does a good job at applying BSD concepts in Linux.

    This is the result of the eventual overlap in communities. The essay points this out, as well as that, like most arguments, certain points don’t apply to everybody and everything.

    We’re talking about what you could call the “essense” of the the two operating system types, which includes their values and original intentions. As it explained, you can define “Linux” in several ways. Linux is more of a concept than anything, just as BSD is. The same goes for Unix.

    Some will argue that Gentoo is the best of both worlds, but it’s still a Linux OS. It uses the Linux kernel and mostly the same Linux development methodologies, and then applies concepts and values from the BSDs.

    I don’t know enough about the gritty details of Gentoo to go much further, but by advocating Gentoo you are also advocating BSD ideals. For that reason, Gentoo should be left out of the argument for now.

    You notice I didn’t mention any specific Linux or BSD because the argument here is about the differences in original ideals and values, which will probably continue to bleed and result in more Gentoo-like operating systems.

    You might as well be saying something like “Use Linux and BSD!”

  4. Brian Says:

    Well said. When I get some free time, I’ll put out an effort to (seriously) try BSD.

    Something else you might want to consider: most people, even in the business world, associate BSD with UNIX. People are scared of it, because they’ve heard about Solaris and the problems with that. And while BSD and Solaris are very unrelated, because they are both “UNIX,” or at least somewhat, I think people are simply afraid to touch it… in fear of prosecution, not understanding the concept of open/closed-source software, etc.

Leave a Reply