What are the benifits of FreeBSD over Linux?

Status
Not open for further replies.
I'm currently using Gentoo. I feel like trying something new and have always wanted to try one of the BSDs out. The only problem is that I'm having a difficult time trying to find a good reason to switch. The only bennifit I know of really is that it's considered more stable than Linux, but this is mainly due to it supporting less hardware. I personnally find that Linux is perfectly stable enough for me (in particuler distros like Gentoo or Debian) but the hardware compatibility could be a problem as I tend to be a bit upgrade happy with my PC and often have fairly new hardware in it, and it's already enough of a pain to deal with drivers on Linux (I despise my Nvidia drivers in particular), I can only imagine it's worse here on FreeBSD. The other main problem is the fact that since Linux isn't very well supported by most software I can only imagine that there is effectively zero software available for FreeBSD outside of the FOSS community.

Feel free to correct me on any assumtions I have made and to try and convince me as to why I should install FreeBSD (or if any other BSDs sound good for me tell me about them!).
 
The only bennifit I know of really is that it's considered more stable than Linux, but this is mainly due to it supporting less hardware.
The stability of FreeBSD actually has nothing to do with being able to run continuously without problems. If treated correctly Linux and even Windows are quite capable of that too. The famous stability of FreeBSD has more to do with API/ABI stability and the way the system operates. How I configure my 12.0-BETA1 is essentially the same as I first did on FreeBSD 3.0. This is a stark contrast with Linux for example that seems to have a different system with each release and/or distribution, SysV, upstart, systemd, etc.
 
There's a big difference between FreeBSD and Linux. One is a complete operating system. The other is simply a kernel around which are wrapped numerous apps which are bundled together to form a 'distribution'. There are possibly hundreds of different distributions so it's virtually impossible to compare FreeBSD with Linux. You can only really compare FreeBSD with a specific Linux 'distribtion' because (I suspect) each distribution is different.

The great thing about FreeBSD is that you can tailor it to your own needs, but it probably needs more effort (initially) on behalf of the user to make it do what you want it to, but you have a choice of around 25,000 apps to choose from. And you only have one pkg management system with a single repository unlike Linux where pkg management varies from distro to distro and getting some pkgs installed can involve jumping through several hoops.
 
The benefits of FreeBSD over Linux



I built my current, bleeding edge workstation using all new components, off-the-shelf and had no issues whatsoever. Gigabyte motherboard, Intel drives, nVidia graphics, etc.

Already searched this up (maybe I should have mentioned it), but to me it seems like the main other argument for FreeBSD is "that it just feels better", due to being led by a single group vs having everybody pulling every which way in terms of development on linux, this isn't really tangible evidence (but I will take it into account). I did also see some claims of higher performance but I'm skeptical of that, esspecially claiming that it is higher performance than Gentoo, that would be a pretty high bar trying to compare FreeBSD (which seems more like an entire OS) against a distro that is bassically a kernel and some tools to compile some software. At most I'd imagine the difference to be negligible.
 
The only problem is that I'm having a difficult time trying to find a good reason to switch.
Then why bother?

This is just my personal opinion obviously but a good reason to start using FreeBSD, or any other OS for that matter, is because you want to use FreeBSD (or that other OS). If you don't want to, why bother? In my opinion this holds especially true for hobby projects.

I'm not trying to scare you away, but just being realistic here. We're obviously talking about a hobby project so why bother using something if you don't feel like it? The reason I say this is because I can't help but be convinced that in situations like those you'll be much more tempted to start using the product in the way you were accustomed to. You already mentioned Linux, both FreeBSD and Linux have many similarities, which makes this a very likely scenario to me.

The problem though is that treating FreeBSD as if it were Linux can easily come to haunt you in a bad way, most likely ending up with you blaming the OS for what would basically be your own doing.

In the end using specific software on FreeBSD such as X, KDE or Gnome, Postfix, GPG, or even Nethack (and others) won't be much different from using it on Linux. The installation probably will be and you'd also immediately notice that FreeBSD provides the software as-is. Meaning that in most cases you don't get an easy pre-configured setup as you do with some Linux environments but you merely get what the original developer(s) intended. Which means that most likely you will have to manually configure your stuff before you can start using it.

You mentioned NVidia drivers, I'm convinced that the ones used by FreeBSD are fully the same (from x11/nvidia-driver):
Code:
These are the official NVidia binary drivers for hardware OpenGL rendering
in X11, using the GLX extensions.

WWW: http://www.nvidia.com/object/unix.html
The set up was pretty easy for me though.

Anyway, benefits... These obviously differ per person and of course you risk bias to get involved. Still... for me personally it boils down to:

Full control

I don't enjoy seeing wireless support (or any other unused stuff) getting pulled onto my system, especially if my system is a server. On FreeBSD I don't have to worry about this because it's pretty easy to remove components which I don't want to use. Keep well in mind that I'm talking about FreeBSD, so the base system, and not any other 3rd party software which you can install on top of this. Which brings me to...

Separation between OS & software

Simply put: when I decide to run # pkg delete -af (forcefully remove all installed software) then I won't end up with an unbootable system. So whatever the 3rd party software does on my server will never have a direct effect on how my server functions. I won't risk disrupting server processes by removing the wrong library because they're separated, so upgrading the installed software is a different task than upgrading the actual operating system.

Sane developers

You don't see monstrosities such as systemd appearing on FreeBSD in a way where it gets shoved down your throat.


But as with all things: what works for me doesn't have to work for you.
 
There's a big difference between FreeBSD and Linux. One is a complete operating system. The other is simply a kernel around which are wrapped numerous apps which are bundled together to form a 'distribution'. There are possibly hundreds of different distributions so it's virtually impossible to compare FreeBSD with Linux. You can only really compare FreeBSD with a specific Linux 'distribtion' because (I suspect) each distribution is different.

The great thing about FreeBSD is that you can tailor it to your own needs, but it probably needs more effort (initially) on behalf of the user to make it do what you want it to, but you have a choice of around 25,000 apps to choose from. And you only have one pkg management system with a single repository unlike Linux where pkg management varies from distro to distro and getting some pkgs installed can involve jumping through several hoops.

I'm fine with a bit of a challenge when setting up my system (as I said, I'm currently running Gentoo), however, your argument about tailering to your own needs I would say is also applicable to Linux (I'd say thats bassically the reason why Distros like Arch and Gentoo exist). Also your comment about how Linux distros are all different I think is true to a degree, but they all are effectivelly the same base (Linux with GNU userspace), the only REAL difference between them I would argue is probably the package manager, everything else can be completely stripped out of a distro and with enough work you could make it almost identical to any other.
 
The only problem is that I'm having a difficult time trying to find a good reason to switch
Then don't. Try it out as virtual machine (VM) first. That's (one of) the best way to try something for the first time without messing up the old setup. You have plenty of virtualization options on Linux (VMware, VirtualBox, XEN, qemu..).
This way you can either forget about it, or if you like it you can try it out on the actual HW.
 
to me it seems like the main other argument for FreeBSD is "that it just feels better", due to being led by a single group vs having everybody pulling every which way in terms of development on linux
It is significant and much talked about all over the web. Not to mention far better documentation and better man pages.
I did also see some claims of higher performance but I'm skeptical of that
Application software seems to be neck-and-neck but a slight performance advantage to Linux. When it comes to network performance, FreeBSD has the edge and is one of the reasons Netflix uses it to serve all their videos around the world and why FreeBSD is used in so many data centers, network switches, and internet hubs. FreeBSD is pretty good out of the box with little need for tuning, though, if one wants max performance, tuning can be done to get more.

The reason I did not use Linux when I started my company, long ago, was because Linux seemed to be undefined in their direction. It felt like a cousin who was somewhat misguided but I was close to them anyway. Nowadays I feel Linux is a mess of childish nonsense infatuated with game playing and pretty fireworks. I feel I made the wise choice.
 
The reason I did not use Linux when I started my company, long ago, was because Linux seemed to be undefined in their direction.
This was the thesis for Eric Raymond's "The Cathedral and the Bazaar".

Top Down, Cathedral directed development vs A Bazaar of development directions. Each has a place.
 
I just installed FreeBSD as my desktop because
1) It seems cool and
2) It’s an interesting challenge
As a hobbyist who needs more reasons? I suspect you think the same.
 
One really big benefit from using FreeBSD for servers is that it's perfectly acceptable to have a 12.0-BETA1 system running PHP 5.6 and a 10.4 system with PHP 7.1. The versions of third party software (Apache, MySQL, MariaDB, PHP, etc) is not tied to any specific FreeBSD version as is common on most Linux distributions. All supported FreeBSD versions and architectures use the exact same ports tree and thus have the exact same software and versions available to them[*].

[*] There are some exceptions to this rule but on 35000+ packages/ports it's only a handful that actually require specific architectures (i386 only for example).
 
I'll do a quickie:

- Filesystem hierarchy, clear separation of the base OS and the user-installed software and configs
- You have the same FreeBSD on all your machines, no need to remember myriads of distributions
- Things aren't moving around much with versions, if compared to Linux
- Documentation (FreeBSD Handbook, manpages, etc)
- BSD License: develop and sell your commercial appliances without GPL in the way
- Community
- pf syntax
- Base install is clean and tidy: mold it into anything (desktop/laptop, server, embedded machine)
- Although I am happy with UFS, lots of people enjoy ZFS
- BSD preserves the Unix philosophy more than Linux, which is important in the long-term run
- It gets you into the mindset of exploring how the OS itself works, which is useful for computer literacy
- It's just cool. You are running a descendant of BSD Unix. The more Unices there are, the merrier!

Why not to run it:

- Hardware support: you have to pick hardware that is supported by FreeBSD
- Some software is not available, the free world is getting too Linux-centric.

The scales have tipped heavily towards BSD for me.
 
or if any other BSDs sound good for me tell me about them!
Initially after trying FreeBSD (from Linux), I found OpenBSD to be a easier step onto the learning curve as it came pretty much pre-configured out of the box with sensible defaults. Good for just base + chromium as a start point setup/desktop, excepting setting/using cwm as the window manager (the default fvwm is a older version). And then progress as you see fit thereafter. A great start point for FreeBSD is Trihexagonal's https://forums.freebsd.org/threads/...-set-up-a-freebsd-desktop-from-scratch.61659/

Being more advanced/familiar however you might opine you could skip or skip through the above.
 
I'm currently using Gentoo. …

No experience with Gentoo (sorry).

I was a Mac user for twenty-something years, in a predominantly Windows environment. IT support as part of my role. When I chose to switch away from Apple:
  • Windows was out of the question (too many annoyances)
  • I liked Linux for its breadth of support (including Bluetooth, and so on).
For what I wanted: FreeBSD-based systems were in many ways significantly inferior to Linux. For a while (a few weeks?) my preferred FreeBSD-based system was unusable and I enjoyed the smoothness of Kubuntu but it wasn't quite smooth enough for me. I abandoned Kubuntu and preferred the more difficult system, with its limitations … eventually I switched to FreeBSD itself (-CURRENT, which is not discussed in The FreeBSD Forums). A few days ago I switched to STABLE.

Why prefer a system that's limited and more difficult? For me, with decades of Mac background, I felt much more comfortable at the command line with FreeBSD than with Linux. That's not the only reason :) but when I'm in a difficult situation it's important to not add discomfort to the difficulty. If that makes sense.

I do occasionally turn to Kubuntu – when, for example, I need to compare behaviours of Firefox in Tier-1 and Tier-3 environments. And I happily support colleagues' uses of Linux, and so on, but for myself I have no plan to switch again.

Postscript: the Firefox thing is a bit of a lie, because I rarely touch it. I prefer Waterfox, but preferring a deleted port can't be classed as a benefit of FreeBSD ;-)

… Simply put: when I decide to run # pkg delete -af (forcefully remove all installed software) then I won't end up with an unbootable system. …

Will that feeling of simplicity, for that command, be true for PkgBase? I see "… The kernel pkg will be marked as vital …" so I am confident that a system will never become un-bootable, but I don't yet have a sense of how deep I might dig myself into a hole if I'm careless/ruthless.
 
I'm currently using Gentoo. I feel like trying something new and have always wanted to try one of the BSDs out. The only problem is that I'm having a difficult time trying to find a good reason to switch. .

First of all anyone who took the time to get to knows Gentoo should keep it by his side forever. Linux and windows will always be faster because they use the processor registers while FreeBSD use the stack. I accept the performance decrease because FreeBSD gives me the option to configure every aspect of the system including the kernel. I think Gentoo would be the ONLY runner up Linux wise to near match that. Another great thing is FreeBSD has jails, which is faster then any virtualization system. It’s a form of FreeBSD virtualization to protect itself. Anytime you hear of a person switching from the All Mighty MAC to FreeBSD you know something more educational/hands on is going on. As far as software FreeBSD got what you need unless you running a game machine or building a sound-system. In that case use Linux for that. Every now and then, you will find something difficult to install, nonetheless as a Gentoo person you’ll beat that easily.

Just like programming, you don’t learn just one and think it’s going to do everything under the sun. Same thing goes for operating systems. Just choose FreeBSD as hosts for Virtualbox or whatever and throw another FreeBSD in the mix as guest with your other VM’s that you like to keep an eye on. Worries over! I'm sure you'll find yourself using FreeBSD more often then Gentoo when all is said and done. Good luck!
 
The stability of FreeBSD actually has nothing to do with being able to run continuously without problems. If treated correctly Linux and even Windows are quite capable of that too. The famous stability of FreeBSD has more to do with API/ABI stability and the way the system operates. How I configure my 12.0-BETA1 is essentially the same as I first did on FreeBSD 3.0. This is a stark contrast with Linux for example that seems to have a different system with each release and/or distribution, SysV, upstart, systemd, etc.

I still am in contact with my old employer, a small ISP and security service provider that spun up its ISP business on FreeBSD-based servers in the mid to late 90s - FreeBSD is still the main operating system today. While I agree that Windows and especially Linux can be made to run quite stable (as in continuous operation without crashes / malfunction), the FreeBSD machines have always outperformed the other operating systems.

Back when security patches were not as much of a concern as they are today, the rule was:

1.) Windows Servers are stable for many weeks without reboot
2.) Linux servers are stable for many months without reboot
3.) FreeBSD servers are stable without reboot until the hardware fails

While this can no longer be verified due to patch cycles, the FreeBSD machines are still the most stable servers in the shop ;-)

Minimal maintenance effort when upgrading to a new major version of the OS:

1.) Windows: install from scratch, often with new hardware required, major project
2.) Linux: rolling distros are not stable enough for production, point release distros may or may not upgrade successfully. So mostly a reinstall, but somewhat easier than Windows.
3.) FreeBSD: just follow the regular upgrade process and whatever special instructions (UPDATING in /usr/src) may apply. Continue to use older versions of important applications, unless they reach end of life - or use half a dozen different versions if required (through jails)

Bottom line: in my experience both API / architecture stability and continuous operational stability are best with FreeBSD.
 
Linux and windows will always be faster because they use the processor registers while FreeBSD use the stack
This isn't what you think it is. By responding I now have to remember or find my notes but this is a naive statement that isn't true in practice (that it's slower). The reality is different from the headline.
 
FreeBSD Status Reports – worth reading two or three, if you haven't already done so.

Normally quarterly but it seems that the next will be annual. For the quarter ending September 2017, the report appeared on Christmas day so I guess that there'll be a two-month wait (from now) for the report for the year ending September 2018.
 
Status
Not open for further replies.
Back
Top