Live data from Hacker News

Technical reasons to choose FreeBSD over GNU/Linux (2020)

unixsheikh.com

11–20 of 376 posts

Re: Technical reasons to choose FreeBSD over GNU/Linux (2020)

#12

How well does FreeBSD support a “modern” web backend? Does Java run here? Mono (C#)? Node.js? PostgreSQL? Any noSQL databases?

I guess calling POSIX modern is a point of view, unless a language runtime is bound to Linux specific syscalls, any UNIX like OS will run "modern" web backends.

From that point of view, you can even do "modern" web backends on IBM and Unisys mainframes, using their POSIX environments.

And yes, they do actually support everything on that list, by the way, mainframes invented noSQL databases before SQL was a thing, have a look on ISAM.

Re: Technical reasons to choose FreeBSD over GNU/Linux (2020)

#13
Let me pick and choose a few points since replying to everything will necessitate a similar 40-page post.

  FreeBSD has great engineering and release management practices
  When someone gets an idea and develops something new, it first gets peer technical reviews
The recent WireGuard debacle left a bad taste about this. As it actually turns out, sometimes there is zero technical review for very important patches and a few blessed developers can (and sometimes do) just throw their stuff directly into trunk.

  Unlike on Linux, the ZFS filesystem is a first class citizen on FreeBSD
ZFS has first-class support on Ubuntu and is compiled into the kernel.

  FreeBSD also supports boot environments
Including this one IIRC.

  Jails
Well... linux has containers, and if all you need is isolation there's this: https://news.ycombinator.com/item?id=29976096

systemd is not required (all the heavy lifting is done by the kernel using the same features employed by containers), but it's available almost everywhere and makes this easy.

  security
I actually think it's worse in this regard because of the link above. Most services on my machines are heavily locked down and isolated from each other since systemd makes this very easy (add a few key-value pairs to an .ini file and it's done). On FreeBSD the developer must add capsicum support (which is not easy to say the least), or you have to setup jails for each and every application manually.

  Capsicum
Excluding the usual boring stuff like seccomp-bpf, we now also have this: https://lwn.net/Articles/859908

It's pretty much unveil for Linux. I think it kind of flew under the radar.

I don't believe there's anything like capcisum, though.

  DTrace
https://www.brendangregg.com/dtrace.html#Linux

There's also real DTrace on Oracle Linux if you're ready to sell your soul:

https://docs.oracle.com/en/operating-systems/oracle-linux/dt...

  bhyve
Not sure if this counts as a particular advantage.

  Firewall
I find nftables to be pretty enjoyable to work with. It has a similar syntax, removes duplication of rules (supporting both ipv4 and ipv6 at the same time), etc. I actually removed firewalld from many RHEL servers and went with nft directly.

  Security Event Auditing
Uhm… so like auditd?

Re: Technical reasons to choose FreeBSD over GNU/Linux (2020)

#15

How well does FreeBSD support a “modern” web backend? Does Java run here? Mono (C#)? Node.js? PostgreSQL? Any noSQL databases?

Haven't tried Mono, Node, or anything NoSQL, but Java, Ruby, and Postgres all run pretty well. It is runtime-compatibile with Linux executables and you can even install a linux distro in a jail

https://forums.freebsd.org/threads/setting-up-a-debian-linux...

Re: Technical reasons to choose FreeBSD over GNU/Linux (2020)

#17
post #7

I'm a huge fan of FreeBSD, though I have to admit - when I was looking at the Vulnerability Statistics chart I wondered to myself "are there fewer identified FreeBSD vulnerabilities because there are way fewer FreeBSD users (than Linux)".

As a long time Linux and BSD user I agree with you. You still have to enable basic things that are not turned on by default - i.e. stack protection. A lot of this is enabled by default on OpenBSD.

https://vez.mrsk.me/freebsd-defaults.html

Re: Technical reasons to choose FreeBSD over GNU/Linux (2020)

#19
I really like this article about FreeBSD. One really nice feature that is not cover though is to set the immutable flags on some binaries with the command chflags. It's possible to boot your very secure system into securemode level 1 or higher. In this mode, it's impossible to delete those files.

rm -rf /* has very limited damage. chmod -R 0000 /* won't touch chmod and all kind of ooops become much less destructive.

It's probably not useful in all scenarios, but definitely some systems deserve to never be touch live. Automation, scada, super important core backbone systems.

FreeBSD is the power to serve. It deserves more credits.

Re: Technical reasons to choose FreeBSD over GNU/Linux (2020)

#20
I have tried learning FreeBSD occasionally, mostly for nostalgia because I learned Unix on BSD 4.3 (or 4.4?) on MicroVaxes many years ago. But I get stuck on some very basic things:

- My wifi card doesn't work. The installer recognizes it, but the driver doesn't work.

- The console terminal defaults to 80x25, I don't know how to resize it.

- I can't figure out how to start X Windows.

- If I run it in a VM (e.g. VirtualBox), the network bridging doesn't work so my FreeBSD instance has no internet access.

It's probably my fault, I'm sure it's in the docs somewhere. But it probably means that I'm not the target audience for FreeBSD, since I don't have the time and patience to figure out the most basic things.

Post reply on HN