Fires may be easy to start, but putting them out is a different matter.
Case in point: the Systemd inferno. What started a few weeks ago as a relatively straightforward controversy over an oft-debated technology has now virtually blown up in Linux fans’ faces.
The latest flareup? None other than the suggestion that Linux be split in two.
“If we’re homogenizing our distributions by saddling them all with Systemd, then there’s very little distinction between them other than the package manager and the various file system layouts,” wrote InfoWorld’s Paul Venezia last week.
“Regardless of the big gamble of pursuing desktop Linux as a line of business, would it not make sense for several Linux distributions to focus solely on the desktop while others focus solely on the server?” he asked.
The suggestion soon ignited yet another conflagration on Slashdot and beyond. Luckily, Linux Girl’s flame-resistant cape was just back from the cleaners.
‘A Solution in Search of a Problem’
“I’d argue that to some degree it has already happened,” began Google+ blogger Kevin O’Brien. “RHEL is very big in data centers, but who runs it as a desktop? And has anyone seriously tried to run Linux Mint as a server OS?
“The point with Linux is that each distro decides where they want to focus, and many of them have made such choices,” O’Brien added.
“If anyone is saying that Linux is not suitable for the server because it isn’t ‘specialized’ enough,” he said, “then where did all of those servers come from, anyway? This is a solution in search of a problem.”
‘Already Been Done’
Linux distros “already do this, though generally they’re not split ‘in two,'” agreed Linux Rants blogger Mike Stone.
“Some distros specialize in server, some in workstation,” Stone explained. “The packages they use vary, and they may even have different kernels compiled for different purposes.”
The fact of the matter, though, is that “the ‘in two’ thing has already been done,” he said.
“Ubuntu used to come in desktop and server variants, and they weren’t the only one,” Stone pointed out. “They’ve stopped doing that because the overhead wasn’t worth the return. I seriously doubt that has changed.
“If you don’t think that the desktop distro you’re trying to use for a server is meeting your needs, maybe it’s time to broaden your horizons,” he suggested.
‘There Is No Advantage’
“I get it — he doesn’t like Systemd,” began consultant and Slashdot blogger Gerhard Mack. “But here’s the thing: If it’s a bad idea, it is a bad idea on both the desktop and server.”
At the same time, “I don’t think this will really matter, since most system admins don’t care about the internals as long as things work,” Mack added. “So, in the end, Systemd either works or it doesn’t, and that will decide its fate.”
As for comparisons with Windows, “the only reason Microsoft has server vs. desktop is so they can charge extra for different feature sets,” he noted. “The Linux world does not license that way, so there is really no advantage to a split.”
Fear of Fragmentation
Any such split also would result in a fragmentation of efforts, Google+ blogger Alessandro Ebersol offered.
Moreover, “the folks that push Systemd did not learn a basic physics lesson: Any force generates a reaction that is going to be as big as the force that started it,” Ebersol told Linux Girl.
“If they would only let sysinit or upstart or whatever be, there would not be so much backlash against them,” he opined. “But, no, Systemd must be the Highlander and cut the heads off everyone else.”
‘Some Wisdom in Pooling Efforts’
There may well be a market for specialized distros, each focusing on a specific niche, mused Chris Travers, a blogger who works on the LedgerSMB project.
“Such distros would build themselves around a single server scenario and provide kernel optimizations, etc., for that, but would include other packages,” Travers explained, “because in smaller deployments, servers rarely handle a single role, and in sufficiently small deployments the server may even double as a workstation.
“The way this is currently handled,” he noted, “is that people with specific needs usually compile their own kernels, but there may be some wisdom in pooling efforts.”
On the other hand, “the Debian distribution already supports a number of very different kernels including FreeBSD, Linux and Hurd,” Travers pointed out. “It would be a very small leap to support multiple optimized Linux kernels.”
‘Jack of All Trades, Master of None’
SoylentNews blogger hairyfeet took it even further.
“Would you try to pull a mobile home with an economy car?” hairyfeet asked. “Of course not — yet you are gonna take a single OS and shoehorn it into a desktop AND a server workload? Talk about jack of all trades and master of none!”
Servers don’t really need graphics beyond the most basic VGA, and the same goes for sound, hairyfeet asserted. “For the server, it’s all about I/O. And with desktops? Exactly the opposite.
“All jamming two completely opposite roles onto Linux gets you is a kernel optimized for server roles, subsystems like X Server that have a useful function in the server role and are pointless on the desktop, and lousy support for power-saving features,” hairyfeet concluded. “So yes, they need to be split — it’s just common sense.”
‘A Silly Concept’
Last but not least, blogger Robert Pogson wasn’t so sure.
“Splitting distros into client/server is a silly concept,” he explained. “The idea of separating clients and servers is just fluffing up the API/protocols. There’s no need for separating them and every advantage to allowing a client to be a server and vice versa.”
Pogson currently is writing “a little Web application for my meal planning,” he told Linux Girl. “It would be silly to require two machines for a job that one can do. I want to use a Web application because I have a fair chunk of data that I don’t need in RAM and I have no wish to write another GUI.
“I will just use a database and a browser with a tiny bit of code in between,” he explained. “It’s an efficient use of my time and resources. If I wish in the future to have a separate server, no problem. I can always start the database Web server somewhere else and point DNS to it.”
In fact, those who seek to separate clients and servers have several motivations, Pogson suggested: security, license, or contracts for service.
“The more small dedicated moving parts, the more work needs to be done in more places by more people,” he pointed out. “That’s OK if it costs less on large-scale projects, but it’s just silly for small projects like this PC here. One of the great benefits of GNU/Linux is that I can create a server or client process in seconds.”