[HN Gopher] Happy 30th FreeBSD: Why FreeBSD open source project ...
___________________________________________________________________
Happy 30th FreeBSD: Why FreeBSD open source project has endured
Author : vermaden
Score : 142 points
Date : 2023-07-31 13:56 UTC (9 hours ago)
(HTM) web link (aster.cloud)
(TXT) w3m dump (aster.cloud)
| alberth wrote:
| What I find interesting about FreeBSD is the lack of a BDFL, so
| this is a testament to the governance model & structure they have
| built.
|
| - OpenBSD (previously NetBSD) has Theo de Raadt
|
| - DragonflyBSD has Matt Dillon
|
| - Linux (kernel) has Linus Torvalds
|
| - GNU has Richard Stallman
|
| - FreeBSD doesn't have a "Founder/CEO" leading it, like the other
| examples above.
| ilyt wrote:
| Similarly Debian with their election system which seems to work
| fine
| pjmlp wrote:
| Debian already had its own share of dramas as well.
| sph wrote:
| In my opinion, the presence of a BDFL is what elevates open
| source to excellence from an aimless bazaar. Otherwise it's
| just a game of politics and bureaucracy to organise a herd of
| volunteers that would rather bike shed than reach a common
| goal.
|
| This is the reason why commercial software tends to be
| perceived of higher quality than most open source projects: you
| need someone to say "no, this is unacceptable."
|
| Thank God we have Linus. Meanwhile the Linux userspace is
| terrible because there is indeed no Linus, so we're still
| squabbling over X.org and systemd.
| tcmart14 wrote:
| NetBSD also lacks a BDFL I believe.
| alberth wrote:
| Yes, I believe that happened when Theo forked NetBSD to
| create OpenBSD.
|
| Similarly, while Matt Dillon wasn't a founder of FreeBSD, he
| certainly was a core/key leader within FreeBSD. When he
| forked FreeBSD to create DragonflyBSD, a sizable void was
| left within FreeBSD leadership team. (at least that's how I
| understand it)
| inferiorhuman wrote:
| FreeBSD doesn't have a "Founder/CEO" leading it, like the other
| examples above.
|
| Now, sure. For a long while I'd say jkh came close to being a
| BDFL.
| fefe23 wrote:
| This would feel much more genuine if there wasn't a thick layer
| of advertising around it. Look at us, we sell services. Here is a
| list of our partners.
| derealized wrote:
| Article seems to be dead now (HN hug of death).
|
| I think one big reason is the BSD license. With fewer
| contributors, the ability for companies to create closed source
| products really helps to justify using it.
| kykeonaut wrote:
| Yeah, it seems to be an ever increasing issue. I wonder what
| would be the minimum server specs to successfully fend off the
| hug of death.
| e145bc455f1 wrote:
| Are there any use cases where i should prefer FreeBSD over Linux?
| haunter wrote:
| If you want to a release a new proprietary hardware and you
| need a full fledged general purpose OS without releasing the
| source code. See Sony > PlayStation 3/4/5
| adrian_b wrote:
| I have been using simultaneously both FreeBSD and Linux for
| more than two decades.
|
| I use Linux on all my laptops and desktops and also on servers
| that are used for computational purposes, i.e. on which I
| compile software projects or I run simulations or FPGA
| syntheses or CUDA programs on GPUs.
|
| I use FreeBSD on servers that implement various networking or
| storage functions, e.g. firewalls, NAT, DHCP servers, routers,
| switches, file servers, backup on magnetic tapes, DNS servers
| and proxies, e-mail servers, Web servers and proxies and so on.
|
| The main reason why I prefer FreeBSD in such servers is that
| for it I need to waste less time for maintenance and
| monitoring, because it provides a more stable and consistent
| environment where I need to make very few custom changes for
| the services that I need.
| e145bc455f1 wrote:
| Why not Debian there? With unattended upgrades setup you can
| install and forget them.
| adrian_b wrote:
| In FreeBSD many services that I need work immediately after
| installation with very few changes in the default
| configuration.
|
| In Linux I always have to work much more for a sane
| configuration.
|
| There are also various specific details, e.g. I like much
| more the firewall programs that are available for FreeBSD
| than those that are available for Linux, so for any
| computer facing the public Internet I use FreeBSD. FreeBSD
| has better support for SCSI/SAS devices, so where I use
| such devices, e.g. tape drives, FreeBSD is also the only
| choice for me.
|
| In FreeBSD I also normally use unattended upgrades and I
| almost never use more than an hour per year for
| maintenance, except for reading my e-mails where I receive
| statistics from the logs of the servers.
| carapace wrote:
| It's the other way 'round: You should use FreeBSD unless and
| until you have a use case that requires Linux. (For production;
| for yourself do what you like.)
| CodeCompost wrote:
| Something something ZFS
| derealized wrote:
| I've met people running ZFS on Linux quite reliably this
| days, bar Oracle.
| hnlmorg wrote:
| ZFS is nicer on FreeBSD. Even on the more ZFS-friendly
| distros it still feels like an after thought. But in
| FreeBSD it's as close to being a core part of the OS as it
| has been since the demise of Solaris and its various
| OpenSolaris forks.
|
| I say this as someone running ZFS on Linux too. So seen
| things from both sides of the fence.
|
| It's hard to explain why it's a nicer experience though.
| Maybe someone else can?
| greggyb wrote:
| ZFS memory stats are integrated into FreeBSD's top. Boot
| environments are trivial to configure; the OS upgrade
| tools integrate with BEs for you. It is considered a
| standard configuration (and has been so for years), so
| guides, docs, and software are written with explicit
| integrated support and expectations that you'll use it.
| Brian_K_White wrote:
| Then again something something inotify, which kqueue does
| not equal.
|
| I'm a bsd lover so don't take that wrong.
| 1MachineElf wrote:
| One example of the nicer experience, maybe as a by-
| product of the 1st class ZFS support, is that updating
| FreeBSD doesn't make me nervous like updating the Linux
| kernel does. On Linux, you're mostly limited to the
| kernel versions that have been explicitly tested against
| ZFS.
| steve1977 wrote:
| I'd say stuff that you just want to work, maybe because you're
| a startup or otherwise small shop - in contrast to stuff where
| you want to generate a lot of artificial work for devops and
| consultants, for example in a corporate environment with K8s ;)
| krylon wrote:
| ZFS, which is natively supported on FreeBSD. Jails, maybe; they
| are nice to have, certainly.
|
| Beyond that - for regular server use cases, at least - it's
| mostly a matter of taste, I think. There are situations where
| you need an enterprise distro, i.e. RHEL or SLES because some
| third-party software requires that or regulatory compliance
| requirements demand it. Most of the time, I think the
| difference is minor for most intents and purposes.
|
| EDIT: If you strongly dislike systemd, FreeBSD is an attractive
| choice, but there are Linux distros that use a different init
| system, too.
| lloydatkinson wrote:
| What are the FreeBSD/OpenBSD init systems? Are there
| competing ones?
| krylon wrote:
| The BSD systems have their own init system, called rc. I've
| never written an rc script, but as a user/admin, I find it
| very nice.
|
| There was an effort to create something akin to macOS's
| launchd for FreeBSD, but I don't know how that worked out.
| Lammy wrote:
| > I've never written an rc script
|
| Not trying to "RTFM" you but
| https://man.freebsd.org/cgi/man.cgi?query=rc contains a
| nice minimal example script for anyone who's curious.
| krylon wrote:
| Thank you! I recently wrote my first systemd unit file,
| and the experience was mostly pain free. I might recreate
| it as an rc script for good measure.
| cempaka wrote:
| I like runit, which is actually from Void Linux but can be
| used on FreeBSD. There's also OpenRC, again not limited to
| BSDs.
| hnlmorg wrote:
| "Prefer" is a subjective term. For the same use case some
| people might prefer FreeBSD, while others will prefer Linux.
|
| Personally I prefer FreeBSD as an operating system but the lack
| of Docker keeps me stuck to Linux (I don't even like Docker but
| at this stage it's now the de facto standard for packaging
| containers).
| soupbowl wrote:
| I run FreeBSD as my host and pass data into linux VMs with
| bhyve 9p protocol support. This way I can have my docker data
| on my FreeBSD host's ZFS. Just pointing out another option,
| but it also depends on what type of stuff you are doing.
| hnlmorg wrote:
| This sounds interesting. Got any more details about it?
| soupbowl wrote:
| I'll give a few pointers, I have done this with Debian
| and NixOS as well as docker and podman, currently I use
| NixOS/podman and that is all I have for examples. If you
| were using debian you would use a mount command with the
| Fstype and options below.
|
| In a bhyve vm config file you add 'bhyve_options' and add
| some virtio-9p mount points. they are 'per slot' so each
| of these mounts will need a new number '-s 15' '-s 16' as
| in my below example.
|
| on FreeBSD host, assuming you are using bhyve-vm (works
| with plain bhyve also):
|
| /usr/local/vm/nixos/nixos.conf
|
| bhyve_options="-s 15,virtio-9p,podman-
| archivebox=/HOSTZFS/Services/VM/NixOS/ArchiveBox -s
| 16,virtio-9p,podman-music=/HOSTZFS/Audio/Music/Flac"
|
| in VM (nixos): fileSystems."/mnt/podman-
| archivebox" = { device = "podman-archivebox";
| fsType = "9p"; options = [ "trans=virtio"
| "version=9p2000.L" "_netdev" "cache=loose" ]; };
| fileSystems."/mnt/podman-music" = { device =
| "podman-music"; fsType = "9p";
| options = [ "trans=virtio" "version=9p2000.L" "_netdev"
| "cache=loose" "ro" ]; };
|
| If you were not using NixOS, add your mount points in the
| VM (/mnt/podman-archivebox, /mnt/podman-music). Then
| mount them with your docker/podman setup.
| virtualisation.oci-containers.containers."ArchiveBox" = {
| image = "archivebox/archivebox"; ... ...
| volumes = [ "archivebox_data:/data"
| "/mnt/podman-archivebox/archive:/data/archive"
| "/mnt/podman-archivebox/sources:/data/sources"
| "/mnt/podman-
| archivebox/ArchiveBox.conf:/data/ArchiveBox.conf"
| ]; virtualisation.oci-
| containers.containers."navidrome" = { image =
| "deluan/navidrome:latest"; ... ...
| volumes = [ "navidrome_data:/data"
| "/mnt/podman-music:/music:ro" ]; };
|
| The 9p mount points won't get passed into the VM until
| you STOP the VM and then START the VM (restart won't
| work). Once that is done and you can confirm the files
| are passed through and working, things 'just work'. This
| does not work for things that require file locks like
| passing database files through 9p. Hope this is helpful
| to someone.
| hnlmorg wrote:
| Thanks for sharing :)
| kykeonaut wrote:
| True, but one of the advantages of the BSDs is that they
| provide an alternative way of doing things. For FreeBSD, you
| have Jails with Pot and Potluck and other alternatives. It
| might not be the de facto way of doing things, but the BSDs
| have never really been keen on following the standard way at
| the cost of everything else.
| hnlmorg wrote:
| I've used jails since FeeeBSD 7 or 8 and love them. For me,
| the power of Docker is less about the OCI format (whatever
| it's called) and more about Dockerfiles. If Jails could
| work against Dockerfiles then that would be a massive step
| forward.
|
| Though to be fair I haven't tried Pot. Used ez_jails a lot
| in the past, as well as rolling my own build scripts. So
| maybe I'm missing a trick?
| sunshine-o wrote:
| This is what has been scaring me about Linux in the last 10
| years as it seems we have been talking mostly about
| containers & ended up in a strange place:
|
| - a lot of project distribute a docker image or we have
| community "distributions" like linuxserver.io. But nothing
| come close to a good distribution package management so
| far,
|
| - the security of containers is still very unclear,
| misunderstood & unequal,
|
| - the ecosystem is now fragmented between docker, podman,
| etc.
|
| - generally it feels like things have become more
| complicated !
|
| We also now do see new generation (?) of distributions
| centered around containers like CoreOS, MicroOS or even
| Silverblue.
|
| My questions would be: is the BSD world trying go move this
| way too with bsdpot & potluck or consider this is not the
| way to go or this just a distraction and Ports will always
| be the way to distribute software?
| deltarholamda wrote:
| In my experience, if you know what you're looking for, and
| FreeBSD meets your needs, and you prefer a more classic unix-y
| setup, then it's great. If you want the cutting edge of
| everything, it _may_ still work for you, but it 's worth
| investigating to be sure. FreeBSD doesn't always do bleeding-
| edge stuff without a bit of hand-holding.
|
| With ZFS and boot environments, it's great for upgrades, if
| you're okay with some downtime. You can certainly do high-
| availability, but again, there's some hand-holding.
|
| I much prefer FreeBSD for everything I can use it for. But I
| don't use Docker, or Kubernetes. I use it as a server OS where
| the only interface is ssh.
| pjmlp wrote:
| If you want something with proper linage from UNIX, that was
| part of the whole UNIX System V vs BSD wars drama, the related
| AT&T lawsuit after they were allowed to charge for UNIX, 386BSD
| being reborn.
|
| Or just a kernel that happens to have been inspired by UNIX and
| took its own path afterwards.
| whydoyoucare wrote:
| It works well as a general purpose desktop OS as well as rock
| solid server. It is arguably simple and less complex, and has a
| cleaner, compact and immensely readable source code as compared
| to Linux.
| drewg123 wrote:
| Serving static web content via kTLS. We (at Netflix) have
| worked for a decade to make this as efficient as possible.
| turnsout wrote:
| I've been running a FreeBSD server (web, email, DNS) for 20 years
| at this point, so consider this a long-term review.
|
| It just works! Specifically, keeping the system running and up-
| to-date is very low-maintenance. On the software side, the pkg
| system has been great--and a welcome change from manually
| installing ports from source. On the OS side, security updates
| and upgrading major and minor versions have all been painless.
|
| I haven't run a Linux server long-term, so I can't compare, but
| my biased perception from the outside is that it seems like Linux
| changes more rapidly and requires a bit more hands-on management.
| ilyt wrote:
| That heavily depends on distro.
|
| Debian upgrades "just work". Even had colleague accidentally
| upgrade 2 releases at once (put too new repo on one of the old
| servers) and it worked without a hitch
|
| Ubuntu? eh, usually ?
|
| CentOS/RHEL/derivatives ? It isn't even supported as a feature.
|
| Both my desktop and NAS are going 10+ years with just dist-
| upgrade. Also few hundred servers at work where we migrated
| from CentOS (which was a chore to manage tbh).
| messe wrote:
| I'm fairly sure RHEL has had in place upgrades for a few
| release now (at least going back to the 6 -> 7 transition,
| nearly a decade ago).
| kykeonaut wrote:
| To be fair, Debian used to work even for FreeBSD back in the
| day with Debian GNU/kFreeBSD.
| toast0 wrote:
| > To be fair, Debian used to work even for FreeBSD back in
| the day with Debian GNU/kFreeBSD.
|
| As both a Debian and FreeBSD person, I think I was uniquely
| in a position to like this, and it was awful circa 2012.
| Some stuff would work, and a lot of stuff didn't, because
| FreeBSD basic utilities weren't packaged and GNU versions
| didn't have full functionality: network configuration was
| difficult, lots of administration was also difficult. You
| ended up needing a FreeBSD chroot, and then you might as
| well use FreeBSD/FreeBSD.
| turnsout wrote:
| That's interesting about Debian and dist-upgrade. I think I
| had assumed everyone had consolidated on Ubuntu, but every
| Ubuntu installation I've run has been a short-lived VPS, so I
| haven't had to think too much about long-term upgrades. But
| maybe that's the new mindset--just periodically wipe
| everything out and reinstall your application from a
| script/container/what-have-you.
| siffland wrote:
| I have been using FreeBSD since 1999, it was version 3.somthing,
| cannot remember. Since then my main server/development box has
| always been FreeBSD (I have a Linux one as well for some software
| that just will not run). Somewhere along that path i became a
| Linux admin (and HPUX but that was long ago), starting with RHEL3
| (I was using gentoo at home). I have a bunch of servers, FreeBSD,
| Linux and yes windows. They each have their place.
|
| FreeBSD for me is simple. I have 2 Raspberry Pi 3's with 512MB of
| ram running FreeBSD 13 and Unbound and a Pi 4 Running FreeBSD and
| Asterisk. I forget they exist. They literally just keep running,
| I update them and if needed reboot and they just keep going. You
| can use mtree to verify the OS, Security is good. But some things
| like DNS, i do not play with, just let it run (and keep it
| patched).
|
| I have a full blown Ubuntu Kubernetes cluster and a few RHEL and
| OEL vm's running various tasks in the lab. Most are the right
| tool for the job i need it to do.
|
| I have never understood the flame wars for my distro (Linux vs
| BSD) is better than yours and my license is better (or allows
| more freedom) than your. They each really do have their places
| with some expected overlap. I am just happy with the variety that
| allows me a ton of choices and usually drives innovation.
| rickstanley wrote:
| I've been trying to move to FreeBSD for quite some time, but I
| play games on Linux heavily, the last time I tried playing on
| FreeBSD I had some driver issues with Nvidia; of course, Nvidia
| not being the best when it comes to open source.
|
| How is the gaming experience in FreeBSD these days? Has anyone
| tried it?
|
| Funny, a long time ago I was in the hurdle of switching between
| Windows and Linux to play games, now with Proton, it is "FreeBSD
| vs Linux".
| asveikau wrote:
| I would not say I've been gaming with it, but proprietary
| nvidia drivers have not given me problems on freebsd.
| jjahdhnmko wrote:
| [dead]
| gigatexal wrote:
| Same here. I'll forever be on Fedora 38 until gaming via proton
| etc is as easy as it is on Linux.
| TheIronMark wrote:
| Years ago, I wanted to learn Unix so I installed FreeBSD and ran
| mail and DNS on it. I thought, this will be a great learning
| experience. Except...it never broke. There was never anything to
| fix, so I didn't really learn that much from it outside of how to
| set things up (but just once). Then I installed linux and so many
| things broke all the time that I was learning everyday.
| krylon wrote:
| That, in a nutshell, is what I - and no doubt many others -
| appreciate deeply about FreeBSD. Getting it to do what you want
| may not be trivial, but once you got it working, it stays that
| way. (The same can be said about OpenBSD and NetBSD, too, with
| the caveat that the OpenBSD developers do not put such a
| premium on backward compatibility.)
|
| Relative to Windows, this is what I like about GNU/Linux, too.
| I used to work as an admin/helpdesk monkey, taking care of ~75
| users and about 10 servers. And things would randomly break
| _all the time_. Having used mostly Linux and BSD in my private
| life for more than a decade at the time, I constantly found
| myself wondering how people can live like this. FWIW, on Debian
| and openSUSE, I had no trouble with things breaking randomly
| except on Tumbleweed. But there, it 's usually just a question
| of rolling back to the latest snapshot, waiting for a week or
| so and running the upgrade again.
| loudmax wrote:
| My experience of learning Unix from the installation process
| back in 2001 or was kind of the reverse. I installed Red Hat on
| an old machine and it the desktop GUI worked out of the box.
| That wasn't really what I was going for, so I installed FreeBSD
| instead and I had to configure X11 and everything else
| manually, and I learned a lot.
|
| Totally agree that once up and running, FreeBSD is extremely
| reliable. Linux can be reliable, but it depends a lot of the
| distribution, and what you're doing with it.
| cempaka wrote:
| Yeah I would say FreeBSD is about on the level of Arch as far
| as where it starts you off after the installation. But it
| makes configuring either one a great learning exercise.
| kykeonaut wrote:
| I would argue that you really did learn the Unix way with
| FreeBSD.
| adrian_b wrote:
| Yeah, this matches exactly my experience from two decades ago.
|
| I have also learned much more by fixing Linux, while my FreeBSD
| servers ran unattended for months or years.
| self_awareness wrote:
| You guys never update your servers?
| ectospheno wrote:
| I am infinitely more likely to setup unattended updates on
| a BSD box.
| dzogchen wrote:
| https://web.archive.org/web/20230731135739/https://aster.clo...
| gigatexal wrote:
| How much if any does Netflix and Sony give to the FreeBSD
| foundation either in fiat currency donations and/or engineering
| time donated?
|
| Netflix uses it at their core for the CDN stuff. I think the core
| of PlayStation OS is FreeBSD. So I'm curious how much these
| companies are supporting the foundation at.
| mikece wrote:
| Both do, as does a large firewall maker (Juniper, I think).
| They keep certain aspects of the secret sauce back but
| upstreaming changes is enlightened self-interest as they don't
| have to apply a long series of in-house changes when an upgrade
| to FreeBSD comes out (Bryan Lunduke had an interview with a
| FreeBSD maintainer where this was discussed -- I'm not finding
| that on YouTube though).
| Tijdreiziger wrote:
| Lunduke pulled his videos from YouTube a while ago. I think
| he moved to Odysee or another platform.
| [deleted]
| rjsw wrote:
| You can see large donations listed by year here [1].
|
| [1] https://freebsdfoundation.org/our-donors/donors/
| siffland wrote:
| It is also not just about the financial donations. These
| companies also do contribute back some source code. I know
| they do not contribute all of it back, however for closed
| source products to give back is a nice touch.
| TyroneBlack wrote:
| I'm wondering if anybody has an explanation for the relatively
| few BSD distros as compared to Linux? Is it just due to the
| smaller community and limited resources or is there something
| different with BSD that leads to less division?
| boomboomsubban wrote:
| Linux is just a kernel, anybody shipping it for use has to
| include a seperate userland.
|
| FreeBSD is an entire operating system, it ships with a kernel
| and userland as one completed piece. So you could build a
| "distro" on top with just things like a desktop environment,
| but there wasn't the same need to.
|
| This also means that most of the BSD's are fundamentally
| different operating systems. There are some "distros," but
| FreeBSD, OpenBSD, NetBSD, and DragonflyBSD are all seperate
| operating systems.
| TyroneBlack wrote:
| I understand when the BSDs are forked they become their own
| thing.
|
| I guess my question was more about something like Debian.
| Ubuntu is based on Debian. PopOS and Mint are built off of
| Ubuntu. They are all separate, but still pull the code from
| their upstream. Why isn't there a situation like that with
| the BSDs? As far as I know the only ones that exist like that
| are GhostBSD and HardenedBSD.
| drewg123 wrote:
| I think a lot of it is because unlike Linux, FreeBSD is a not
| just a kernel, but an entire OS, with a kernel, utilities,
| compilers, and a package manager. There have been different
| distros (PC-BSD, debian kfreebsd, etc), but I think the
| "default" upstream distro has most of what's needed.
|
| And there are likely "distros" that you don't see. Eg, we run
| our own private "distro" on the CDN at Netflix, which is
| basically upstream FreeBSD + some kernel patches queued for
| upstreaming + a limited number of ports + some netflix specific
| stuff. I imagine other companies using FreeBSD (NetApp, Sony,
| etc) also have their own private distros.
| TyroneBlack wrote:
| I guess my question was more about something like Debian
| which would be more comparable to FreeBSD. Ubuntu is based on
| Debian. PopOS and Mint are built off of Ubuntu. They are all
| separate, but still pull the code from their upstream. Why
| isn't there a situation like that with the BSDs? As far as I
| know the only ones that exist like that are GhostBSD and
| HardenedBSD.
|
| Why do the BSDs split for good instead of just pulling from
| upstream and making some changes?
|
| There are also private linux distros. I wasn't really getting
| into them since they aren't available.
___________________________________________________________________
(page generated 2023-07-31 23:01 UTC)