Is It Time To Split Linux Distros In Two?
snydeq writes Desktop workloads and server workloads have different needs, and it's high time Linux consider a split to more adequately address them, writes Deep End's Paul Venezia. You can take a Linux installation of nearly any distribution and turn it into a server, then back into a workstation by installing and uninstalling various packages. The OS core remains the same, and the stability and performance will be roughly the same, assuming you tune they system along the way. Those two workloads are very different, however, and as computing power continues to increase, the workloads are diverging even more. Maybe it's time Linux is split in two. I suggested this possibility last week when discussing systemd (or that FreeBSD could see higher server adoption), but it's more than systemd coming into play here. It's from the bootloader all the way up. The more we see Linux distributions trying to offer chimera-like operating systems that can be a server or a desktop at a whim, the more we tend to see the dilution of both. You can run stock Debian Jessie on your laptop or on a 64-way server. Does it not make sense to concentrate all efforts on one or the other?"
The issues that brought systemd into existence (coordinated handling of a frequently reconfigured hardware as things are plugged in and out and connections go up and down) is not different to hardware that reconfigures frequently due to power saving, with things turning on and off. This just isn't a big issue in server chips right now, but it will be in the future as advanced power saving techniques move from mobile to desktop to server. Then the split will look silly.
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
I am a linux sysadmin, and many of the packages required for desktop use not only don't apply to me, but are pretty well useless. I would love to see a distribution where any dependency on X11 was not only stripped out - but *compiled* out. I would love to see a distribution where systemd was not getting its mitts into everything.
But it's not only that, it's tuning. I discovered that Ubuntu's default scheduler settings on a Dell R620 with 384G of RAM and a nice beefy RAID 10 array are actually the *worst* settings for this kind of system. Everything else I tried - other schedulers, tuning CFQ, etc., they all led to better write throughput. Which leads me to wonder how many processor and other cycles are wasted because sysadmins just install with the default settings and hope for the best?
There needs to be a distro where the adults are in charge. I'd even build it if I had time, and I most certainly would be willing to put some time into working on one.
For linux tips: http://www.linuxtipsblog.com
... a `Professional' and `Home' edition as well?
Seriously... is this what some people believe is holding back wider Linux adoption? There's already more than enough FUD in the press and on the web in articles about Linux providing too many choices now without adding a server and desktop edition for the naysayers to complain about.
CUR ALLOC 20195.....5804M
Linux has already split into two different versions a few years ago.
The "server" version is called GNU/Linux, and encompasses the hundreds of distributions designed to look and act like a class Unix workstation.
The "end user" versions are Android and Chrome OS.
Install Ubuntu Server 14.04.1 and you have a fairly minimal server OS. Do 'sudo apt-get install kubuntu-desktop' and suddenly it's a desktop OS. Going back isn't quite so simple, but you can 'sudo apt-get remove kubuntu-desktop' to get most of the way there.
Paul Venezia is just another sore systemd hater who can't accept that all major Linux distros are changing to systemd.
That he think systemd is mostly for desktops just show how much he has lost contact with Linux. There simply isn't any commercial interest in keeping SysVinit or even Upstart alive. The market would have reacted long ago if any companies where queuing up to pay for new Linux SysVinit releases. They are not.
Several companies have even switched to using systemd even though it wasn't officially supported on their distro yet, simply because systemd offers so many advantages over legacy script based init-systems.
There is no coordinated non-systemd development taking place in the Linux community at the moment. The few non-systemd distros left haven't even begun to cooperate. So it looks unlikely right now that any non-systemd distros of note will survive into the next decade.
There is a reason why commercial Linux vendors like Ubuntu and Red Hat are supporting desktop editions, even though they don't generate any money; without the desktop you will start to lose developers. It is that simple. That is also the main reason why BSD's are using GPL'ed DE's even though their sponsors can't resell them as close source software like the rest of the core BSD components; without a DE, the BSD variants would have even fewer developers.
So it is pretty much distro suicide to split a distro up in two different and incompatible versions, one for the desktop and one for the server.
One of my favorite distros is OpenSUSE. In its repos, it has several different kernels -- there is a default one, but also ones for virtualization and a desktop specific one. I always figured they had the different kernels that were tuned/tweaked for the different needs. If you wanted to switch from a desktop to a server or vice versa, simply install/uninstall the packages you need, including switch the kernel, then reboot and you're done.
I don't know enough about their tweaks to know if the desktop vs server kernel makes a difference, but I imagine it does or at least could in the right circumstances. I think the power of being able to change around some packages and get the effect you want is better than fragmenting the distro. I appreciate having access to all the features and being able to mix and match.
I'm friggin tired of installing Linux as either server or workstation and finding a bunch of stuff that's oriented to making a laptop work well. I want to be able to do a clean install that by default has no support for Bluetooth or wifi or dhcp client, let alone a propensity to rewrite /etc/hosts or handle any aspect of networking in anything but a hand-configured way. Also, even if systemd's part of the distro, standard text logs should be there by default, as well as cron and a working /etc/rc.local file.
"with their freedom lost all virtue lose" - Milton
Improvements made to the system to increase server performance usually also wind up being good for desktop users.
Not really, and this is widely known and has been discussed repeatedly in many different forums including the kernel dev list.
Servers and desktops have largely different requirements and require different tunings. A task scheduler thats awesome for a server will generally suck for workstations and the same is true in the opposite direction. Some things are specific to the types of work loads involved. Desktops run a few threads and need them to respond in a specific way. Servers run tons of threads (as a general rule) and need them to respond in a different way.
The only way its 'good for the desktop' is because your desktop requirements are non-existent and aren't putting any stress on the system. In these cases, you're not going to notice any improvements anyway most likely.
Linux is and always had been tuned for the server side. You don't use Linux as an audio editing workstation for instance. Theres a reason.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager