Fewer and fewer people are using FreeBSD, and it's starting to cause real problems. Bugs in ports can't get enough notice. Right now, `htop', an essential tool for me, has been malfunctioning for months:
At the moment, the built-in GPU in newer CPU (core i3/i5/i7) simply doesn't work in FreeBSD, people have to buy discrete older cards for graphics. Yes, they are paying someone to work on the part in kernel which will make it possible to support these newer CPUs, but who knows when it will come.
This sounds like the standard "BSD is dying" canard from Slashdot and elsewhere, and without substantiation it doesn't merit a top spot in this discussion. BSD has been and remains a server-first OS, with desktop support for the latest and greatest processors trailing Linux by a substantial margin. On widely-deployed hardware, support is generally equivalent, and I'm quite pleased with recent releases for headless servers.
I certainly understand the server-first perspective. From a perspective of a guy who values having the same underlying OS as his desktop and server, its a problem. I tried using "OS X [desktop] and FreeBSD [server]" as a mix for a few years and then switched to "OS X and ubuntu server", now moved on to "mint and ubuntu server".
I don't need a desktop that does everything. Just recent versions of skype, firefox, and thunderbird. Also sometimes a simple GUI file manager is useful.
GEM/KMS has already been ported. The code in the BETAs has worked on my machines. It looks likely to be available in the next release. htop is written for Linux. It only works on FreeBSD due to Linux procfs emulation.
Maybe because it's a pain in the butt to install it? Honestly, I tried FreeBSD 8 two weeks ago, and until there's an easier to way to install it, I can't imagine many people will be interested in it.
If you're looking for a desktop install of FreeBSD, I highly recommend PC-BSD. It's more or less to FreeBSD what Ubuntu is to Debian. It's still a little rough around the edges, but it's a lot more straightforward to get set up than vanilla FreeBSD.
The FreeBSD handbook [1] has an excellent guide on installing FreeBSD from start to finish, as well as explaining all the options of the installer, where to get more help, and how to get the most out of your FreeBSD experience.
Is this problem due to fewer people using it, or fewer people contributing? I know there's a lot of overlap in open source, but the latter could be a real problem.
htop is a tool that was written specifically for Linux, the fact that it works on FreeBSD using linprocfs at all is amazing. Using an older function still works.
As of this year, I'm no longer a FreeBSD user. I've been a hold-out... finally converting over to Linux this year after years of denial. It was a very hard move for me.
The problem is that FreeBSD developers are still fighting wars of the 90's. By and large, with the welcome exception of Colin Percival (of http://www.tarsnap.com/ fame), they have not embraced virtualization. The only saving grace of FreeBSD is that it has adopted Sun's ZFS. This won't hold the fort for long though.
Have you ever used FreeBSD jails? I wish there was something as easy to use and flexible as that on Linux. The fact that each jail has minimal overhead and with dedupe on ZFS I can easily give every user their own "machine" while spending a lot less on hardware then a linux solution would require.
Having said that I also wish I could run FreeBSD on EC2 however I haven't put my money where my mouth is. I'm sure if you and many others wanted it badly enough you could sponsor development to fix any current issues. Also it would probably help if someone made a large business case to Amazon to ensure that things were targeted towards FreeBSD that would help too. (i.e. not needing an ext2 filesystem for the user provided kernel on micro instances, etc)
Absolute goodness of jails and the simplicity of making a small bootable readonly CDROM image made FreeBSD a clear winner for me in the late 1990's & early 2000's. In the 2010's... the world moves forward, now it's about having a standard virtual image.
The idea is very similar: you create a set of jails that behave as independent systems. Then every process started from a jail is tagged with a jail ID corresponding to the jail that the process was started from. All processes run in the same kernel and the jail ID gives the kernel just enough information to tell whether or not a process should have access to a given resource when sys calls are made.
I've never used OpenVZ so I don't know how they compare in practice but I can say that FreeBSD jails worked beautifully when I was using them heavily (about 2 years ago). They are super easy to manage and were as stable as you'd expect in FreeBSD (you'd have to be trying really hard to knock them down).
I'm actually thinking of moving to FreeBSD for the very reasons you're stating.
FreeBSD has:
* ZFS - which is miles ahead of btrfs for production use
* libcapsicum - something that isn't completely braindead like posix 'capabilities'
* racct and jails - cgroups is a mess, containerization isn't wanted from posts on lkml ( as it's 'not needed' - considering vps hosting is a multi-billion dollar industry ) and it needs quiet a bit of work.
> * ZFS - which is miles ahead of btrfs for production use
Can you explain in what way? btrfs is less mature, sure, but "enterprise Linux" vendors are about to start fully supporting in their next minor version update releases, and that is a good indicator of production use readiness, since they wouldn't do that if they weren't pretty sure it's not going to blow up in their face via an endless stream of bug reports.
> * racct and jails - cgroups is a mess
Thank you for sharing your opinion, an explanation of why it is a mess would be nice.
ZFS has l2arc, raid, scrubbing, dedup and it's stable, no enterprise will use btrfs in production for quite awhile due to bugs still being ironed out (read the mailing list).
Regarding cgroups? Accounting is bolted on effectively tracking tracked pages.
There is support for ZFS on Linux at the kernel level [1]. I'm not sure how stable it is (something on my TODO list), but I believe it's actually more current than what's in FreeBSD.
For jails on Linux there's jailkit [2].
I'm not sure if you've seen these, but I figured I'd offer them up as solutions that don't involve changing your platform!
For those who, like me, wonder why FreeBSD should embrace visualization (what's wrong with a 80x24 tty?): from the answers, I think clarkevans meant to write "virtualization". Maybe his spelling checker 'improved' that word?
Everytime I wanted to install FBSD on an old box I would always run into awful issues wioth acpi/acpm. All of the boxes I tried to install it on recently ran linux without a quirk.
I really want to get a fbsd box up and running so I can run phk's ntpns
I have used FreeBSD since 2.2. I used to laugh at the slashdot trolls saying BSD is dying but I really think it is dying. The commercial support is just not there.
"Commercial support" as a selling point is really overrated. You can always get commercial support in any case, from FreeBSD specialists for hire. Apart from that, normal users will always be able to get support from the mailing lists, forums and so on. I'm happy with FreeBSD and there's nothing stopping me from using it both personally and for my businesses. I am not interested in FreeBSD on the desktop, however.
No commercial support makes the software a non-starter in most IT environments, that's the (sad) reality. FreeBSD is a good example of why that is a problem - while technically sound, it is at risk of becoming a fringe OS used only by a couple of enthusiasts and FreeBSD developers themselves. For a project that produces an OS, that is a big issue, since you need users to make sure your OS works on various hardware configurations, or else you will become an "experimental" OS like Plan 9.
With FreeBSD being so mature and old as it is, I think it's a given that the chance that it will continue for many years to come is very high. Sure enough, the risk is higher than going with "mainstream" Linux, but if you have the expertise, especially within the business, then it's a no-brainer if you will clearly benefit from all the great things FreeBSD has to offer. We're running FreeBSD with jails and ZFS etc. on a lot of servers and we're very happy with it. It's not hard for a Linux expert to pick up on. Anyway, that's my opinion.
...but some of those OSs (not necessarily talking about any of the BSDs here) are more like the Northern Hairy Nosed Wombats than a viable genetic pool.
Check out distrowatch.com and see how bad freebsd has it... It is the only none linux os in the top twenty and it been there as long as I can remember. Its the only server in my datacenter that upgrades without a problem and runs and runs and runs.
Everyone making comparisons between OSes involving a BSD always picks Linux as the 'other OS'. How about a good comparison between the various BSD flavors? Why would I pick FreeBSD over OpenBSD, NetBSD, DragonFly BSD, or PC-BSD?
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/159728
At the moment, the built-in GPU in newer CPU (core i3/i5/i7) simply doesn't work in FreeBSD, people have to buy discrete older cards for graphics. Yes, they are paying someone to work on the part in kernel which will make it possible to support these newer CPUs, but who knows when it will come.