13 ms·
BSDs or Illumos may be good alternatives to Linux (2017)
- earenndil 8y ago> PS: I haven’t mentioned both softwares, FreeBSD and SmartOS do have a Linux translation layer. This means you can run Linux binaries on them and the program won’t cough at all I don't know about SmartOS, but on freebsd, linux compat is at version 2.6.38, and so most programs don't work.
- equalunique 8y agoIs that for ports of linux software, or for "Triton" images?
- pdx6 8y agoSmartOS will run Linux distros in an LX zone, much like Solaris did. There are some limits around what syscalls are available, but generally most software works or a bug can be opened. There is support for Linux containers natively, but the last I checked only Docker v1 repos were supported. v2 is forth coming. Virtualization-wise, Bhyve is supported as is KVM. If you are running open source, there are usually SmartOS packages in pkg src, which makes SmartOS zones a CPU/memory/security bargain. https://pkgsrc.joyent.com/ https://pkgsrc.joyent.com/
- RantyDave 8y agoI haven't run SmartOS for about a year, but I was using it to run Linux binaries. It was fundamentally great. Stable, efficient ... great. Joyent were nailing compatibility bugs in a matter of days. A couple of small things - one is that entire distributions "just as they are" are unlikely to work, in much the same way as trying to boot a docker container doesn't. Lots of things rely on /proc and cgroups and these are big, ugly interfaces that are never going to see parity between the two OS's. /proc is (amusingly) built as a r/o filesystem that has an htop-esque thing writing state onto it constantly. The big one is memory allocation. Linux will let memory allocations fail. It will also just shoot apps in the head if it wants to. Solaris does not do such shit and will return the malloc call when it has allocated some memory - even if it's next week some time. On more than one occasion I have been completely locked out of a SmartOS box because of this and one ends up having to be really, really careful with allocation strategies as a result.
- craftyguy 8y agoSo the main points of this rant are: - BSD has ZFS (but so do some Linux distros) - Linux bad because BTRFS, so it's bad (well, you don't have to use it) - BSD jails > anything on linux (I was hoping to see a clear outline of pros/cons, but the author's reasoning is very hard to follow, and the tone is very combative instead of constructive)
- hacknat 8y agoAt this point there really isn’t any security difference between zones, jails, and hardened containers. That word “hardened” is the key. Zones are a primitive in Illumos, containers are not a primitive in Linux, they are a collection of security features. If you use them all then you can achieve parity with Zones, but surprisingly few projects make use of all of them by default (Docker certainly doesn’t). The main difference then is usability, which is almost always the biggest security flaw in any piece of software (that the security isn’t “on” by default or has a prohibitive learning curve for the user).
- posix_me_less 8y ago> Docker certainly doesn’t Do you think LXD gets closer to Zones in terms of security?
- hacknat 8y agoHonestly, I don’t know, but my guess is that it had some things turned off by default. Actually K8s is the most encouraging project in this regard in that it has opinions about how containers should work so they are slowly adding all the secure options by default when containers are orchestrated to the various runtimes. There are only a few features left that remain to be turned on (user namespacing being the most notable).
- technofiend 8y agoI paraphrased you by cutting down your comment, hope that's OK. >Actually K8s [...] are slowly adding all the secure options by default [...] (user namespacing being the most notable). K8's RBAC is nice, and in particular auth-delegator really helps with odd duck integration for the enterprise. But k8s is reliant on OS features to make user namespaces happen and Redhat customers are still waiting for Redhat to backport a newer version of shadow-utils [1] [2] to RHEL 7 so that user namespacing works there. Given enterprise certification and release cycles "Wait for RHEL 8" isn't really a good answer for those kind of customers. I'm not disagreeing with you, just saying some features of kubernetes aren't available everywhere. Personally I'd really like to see user namespaces come to RHEL 7 as it helps with removing or mitigating privileged access. [1] https://bugzilla.redhat.com/show_bug.cgi?id=1498628 https://bugzilla.redhat.com/show_bug.cgi?id=1498628 [2] https://access.redhat.com/solutions/3657531 https://access.redhat.com/solutions/3657531
- setr 8y agoI'm naturally inclined towards BSD simply because of its extensive history (though I've spent little effort towards it thus far), but even still this article is wholly unconvincing... of anything. It really doesn't say anything about ZFS, jails, or even the current state of affairs beyond a respectable number of packages (and more importantly, linux compatibility); it just assumes you already accept that they're better, and for some reason haven't already switched? It also badly requires editing Hopefully someone has a better argument for FreeBSD than this... mess
- AHTERIX5000 8y agoYeah TFA reminds a bit of passionate blog posts and articles about switching from Windows to Linux something like a decade or two ago. Something that would fit better in BSD community such as Lobste.rs than HN ;-)
- writepub 8y agoThe selection of software that simply works on Linux (especially Debian & derivatives like Ubuntu) eclipses that on FreeBsd. I've seen attempts at bringing the Linux ABI to FreeBsd, including the familiar and popular apt package manager. If and when it's as easy to "sudo apt-get install package" on FreeBsd as it is on Ubuntu, it will see an increase in adoption in both the sever-production setting, and as a development environment.
- compsciphd 8y agowhat about debian/kfreebsd (never used it, just wondering)
- hackeraccount 8y agoI don't think that's being released anymore.
- ComputerGuru 8y ago> I've seen attempts at bringing the Linux ABI to FreeBsd, including the familiar and popular apt package manager. That's ridiculous. `pkg` on FreeBSD is a thousand times more consistent and user friendly. Perhaps you are talking about the days before pkg-ng (next generation) became the default, but now installing anything is as easy as `pkg install foo` and it just works. It even updates automatically so URLs aren't out of date.
- bayindirh 8y agoI have a deep respect for BSD family, and their way of doing things, but regardless of OS and distro, apt is probably the most advanced package manager currently. When used with aptitude, it's very easy to use, extremely powerful and flexible. Also, it has the most extensive knowledge on details of packages in terms of dependency graphs and modification of files which belongs to packages. At least, that's what I saw in 14 years.
- rleigh 8y ago
- equalunique 8y agoProject-Fifo uses bhyve, zones, and jails to blend FreeBSD & SmartOS into your own self-hosed IaaS. Worth checking out.
- 2bitencryption 8y agoCurious, what's Darwin like? Is it much use outside of the Apple/macOS ecosystem?
- etaioinshrdlu 8y agoThere used to be some projects using Darwin outside of macOS etc, but they are long dead. People have apparently had a harder time even getting the kernel to boot nowadays for various reasons.
- pmoriarty 8y agoBSD doesn't have systemd. That's a huge win right there.
- bayindirh 8y agoI also despised having systemd for some time, but it's not giving big headaches in our installations. So I adapted and got used to it. Besides being a multi-role-somewhat-messy-blob, what are the grief points of systemd in 2018? Edit: carified the question.
- jimpudar 8y agoI'm also wondering this. I've seen plenty of hate for systemd, but I've never personally run into any issues with it.
- Nursie 8y agoThe hate largely stems from the way it was rolled out - the linux community at large was left feeling like it had been told it would adopt this, and there was no choice, and that rubbed a lot of people up the wrong way. It's also not 'the unix way' to have tightly bound, large blobs, and the team behind it seemed to take pains to say that lots of other things would rely on it, like udev, so there really was no choice. So the hate comes from the idealogical side, largely. Personally, having worked with it, I've rather liked writing service files and timers to get stuff done, it's much quicker to get something up and running than the old system.
- dvfjsdhgfv 8y ago> The hate largely stems from the way it was rolled out - the linux community at large was left feeling like it had been told it wold adopt this, and there was no choice, and that rubbed a lot of people up the wrong way. It wasn't just a feeling, it really was just like that. Had the architecture of Systemd been different, it would have been possible to decouple it from other components and be able too choose an init system just like in the not so distant past. As it is now, practically speaking there is no choice.
- SpaceInvader 8y agoI have the longest beard (not yet white) in my company (1000+ plus employess), I am primarily the AIX guy (800+ virtual machines) and I do use FreeBSD since 2002 iirc. I also do plenty Linux but AIX and FreeBSD, despite being totally different, seems to be the rock solid option. Given AIX runs only on freakishly expensive power platform FreeBSD can be a good alternative. ZFS is great too.
- pjmlp 8y agoI don't do Aix since 2003, does it still follow Windows model in how .so are created with export definition files?
- SpaceInvader 8y agoWhat you mean by that? I stay away from Windows ;-)
- pjmlp 8y agoBack in those days, Aix did not use the ELF binary model, rather IBM went their own path and imported the Windows concept of definition files and import libraries to generate shared objects. Aix shared objects had more in common with Windows world than with other UNIX variants.
- kev009 8y agohttp://ps-2.kev009.com/rs6000/aix_ps_pdf/programming/using_shared_libraries.pdf http://ps-2.kev009.com/rs6000/aix_ps_pdf/programming/using_s...
- SpaceInvader 8y agoI've started with 5.1 therefore I can't relate to that.
- pjmlp 8y ago
- pjmlp 8y agoZero reasons why they would make a better 3D, UI/UX stack though.
- pierreprinetti 8y agoI'd love to switch to BSD, but > Docker on FreeBSD is experimental. https://wiki.freebsd.org/Docker https://wiki.freebsd.org/Docker I don't want to run yet another operating system just to have to run VMs on top of it...
- deathtrader666 8y agoWhy not use FreeBSD jails?
- bauerd 8y ago* Because my company runs OCI images (aka uses Docker), not jails. * Because you can't orchestrate jails with Kubernetes, and that's what my company uses. Docker won over the industry, jails and friends did not.
- kev009 8y agoIt really didn't. I can tell you with first hand knowledge the majority of the internet by any measure, but especially high scale systems where I've worked and know much of the small community, use neither Docker nor Kubernetes. That's not any indictment on either technology it's just simple fact. Fad tech appears a much bigger tiger in echo chambers like this website but the majority of the companies aren't even using languages that are popular to this crowd let alone tooling. Whether or not these tools have staying power or contribute meaningfully to the industry the jury is still out on, and will have to wait about 5 years to tell. In the past you "were an idiot" if you weren't using C++ or CORBA or RPC or Java or SOAP or message queues or Ruby on Rails or AWS or or Hadoop or OpenStack or blockchain or machine learning or.. all of these are fads and all that mattered then and now for consumers of the tech is solving business problems cost effectively. Software developers are an incredibly easy demographic to influence with marketing. There is an industry of startups that have been minting money on this for a long time. But it's important to know that a lot of software development tools we use are just fashion statements.
- 8y ago
- INTPenis 8y agoI came into IT on FreeBSD back in 2004. Was a real fanboy and couldn't stop ranting about it. My first IT boss at the time got me into FreeBSD and PostgreSQL without actually knowing why. I had no real experience to back my opinion. FreeBSD was my primary OS, both at work and at home. To fast forward a bit I handed over my last BSD environment around 2012, last Solaris environment around the same time. After that I only had Linux responsibilities. Around 2014 I was running Debian as my primary OS and sent on a RHEL course in Stockholm. The course leader sold RedHat to me so well that the very first night at the hotel I reinstalled my laptop from Debian to Fedora. Haven't looked back yet. Been professionally building systems on Linux since before that. So I'd like to say my perspective spans over both sides of this argument. I've tried to summarize why I'd rather use Linux and why you might consider using BSD. The only reason I can justify to use BSD is that the open source world needs competition. It would be dangerous if we only had one OS. But all my professional sense of getting things done and keeping them stable tells me not to use it. Correction, I use OpenBSD on my router at home but that's it. OpenBSD has a reputation of being very secure (perhaps earned in part by having a relatively small user base) and I rarely need to login to make changes. Because the user space tools are horrible compared to Linux. And I believe most of that stems from the community being much larger and therefore the software better tested and more mature. I'm talking mainly about operational security and stability. I believe Linux does this much better than any BSD. Less critical bugs, less issues with package management, better maintained packages and more binary packages available that don't require source building. Pretty much all things very reliant on a strong community. More programmers available to fine tune user space tools and make them hum. A lot more docs available from hobbyists and officials. Some of my friends today are hardcore BSD geeks and they often have to deal with system breaking bugs, kernel panics even. I can't remember the last time I saw a kernel panic in Linux. Almost every day I can see at least one issue in our chats dealing with package management or kernel and system bugs. Bugs in jails for example, or network management related to jails. They're often following the latest releases to remedy these but that's even worse than using Fedora on servers imo. Bleeding edge software just to avoid the bugs and be able to use the latest so called virtualization technology available.
- SpaceInvader 8y agoAre you sure about the security thing? Less critical bugs? Do you have any data to back that up?
- tmbsundar 8y agoI love BSD. But, last time I checked NVIDIA didn't have the right CUDA drivers for BSD. Is there any improvement on the status quo yet?
- wartakode 8y agoRecently i'm switchback to linux from openindiana, can't use eclipse (old) JEE on illumos, as update site are not working well. - https://wiki.openindiana.org/oi/Eclipse https://wiki.openindiana.org/oi/Eclipse
- type0 8y agoAbout FreeBSD, I've heard that its' software is lagging behind many fast updating Linux distros but is extremely reliable, how does Debian Testing compare to something like TrueOS i.e FreeBSD-Current stuff? P.S when I say lagging behind I don't mean the server things but rather on the developer side.
- hs86 8y agoThe base OS and the installed 3rd party software (ports/packages) are on different release models. The base is either stable/LTS (~5 years support) or rolling if you track -CURRENT. For the 3rd party software it is either rolling or stable in short lived quarterly branches. Most server side software is usually pretty up to date but some desktop-related tools can be outdated for a while. You might want to take a look at [0] and especially at the commit history of some fairly popular desktops like Gnome3 [1] or KDE5 [2]. They got updated recently but it took quite a while. [0] https://www.freshports.org/ https://www.freshports.org/ [1] https://www.freshports.org/x11/gnome3/ https://www.freshports.org/x11/gnome3/ [2] https://www.freshports.org/x11/kde5/ https://www.freshports.org/x11/kde5/