Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Operating Systems

Outlining Thin Linux 221

snydeq writes: Deep End's Paul Venezia follows up his call for splitting Linux distros in two by arguing that the new shape of the Linux server is thin, light, and fine-tuned to a single purpose. "Those of us who build and maintain large-scale Linux infrastructures would be happy to see a highly specific, highly stable mainstream distro that had no desktop package or dependency support whatsoever, so was not beholden to architectural changes made due to desktop package requirements. When you're rolling out a few hundred Linux VMs locally, in the cloud, or both, you won't manually log into them, much less need any type of graphical support. Frankly, you could lose the framebuffer too; it wouldn't matter unless you were running certain tests," Venezia writes. "It's only a matter of time before a Linux distribution that caters solely to these considerations becomes mainstream and is offered alongside more traditional distributions."

Comment Re:What a fitting name! (Score 1) 469

1. Many people do not like gnome; plus, how do you prove "soon any other desktop environment" is going to jump through the hoops thrown by systemd developers?

KWin (the KDE window manager) will depend on logind at the very least for wayland. ConsoleKit is dead, so anything currently using that will need to look for an replacement soon. That includes basically every DE out there.

Some might come up with a different solution, some may function without logind, some will just require logind like gnome does now. Let's wait and see how that will work out.

2. Not all people, who happen to like some of systemd's features, need to agree with everything provided with systemd. Systemd-style process supervision -- okay perhaps; logind/journald/networkd -- why the hell?

You are aware that logind, journald and networkd are all stand-alone daemons that just happen to integrate well with systemd-PID1 and that live in the same source code repository? You do not want them? Just disable them.

Journald is a bit of an exception here: It basically provides the logging infrastructure for the other parts of the project. So all you can do there is to have it forward the logs to syslog.

3. Removal of journald removes some nic(h?)e features, but also brings about merits, for example reduction of log corruption, which might happen to be one reason people fond of some systemd features feel unsatisfied with systemd. Yes, you have counterarguments, but I have as well; you'd better get a degree in hypnosis before assuming all people will agree with you. And btw, systemd developers seem to like saying something like "don't like it? then make your own", which does not seem suitable now ;)

I entirely fail to see why binary logs are such a big argument, considering that syslog is fully supported. Push your stuff there, RHEL7 apparently even does that by default. You still get more information into your logs that way than you used to. So you win, independent of whether you use journalctl or cat on the files syslog creates to read them.

4. OpenBSD develops system-bsd to mimic systemd interface because of increased hooking of FOSS into systemd (and not necessarily because systemd is good ;). BTW, why do FreeBSD's choice need to be exclusive? Does porting launchd affects the plausiblity of contributing to uselessd? Yes, manpower maybe, and it seems really nice of you to care about FreeBSD's human resources instead of themselves ;D

No, but then FreeBSD is of course free to have several init systems if they care. Traditionally they do seem to prefer a more consistent user-space developed by one team.

5. So now it's about the portability vs. exclusive feature issue? I'm not sure, either, but maybe in a different sense 8)

I do not get what you are going at with this point.

6. So glibc is also the dominant libc on routers and a lot of other "niche" platforms?

Yeap, it is getting more and more common, even on embedded hardware. There is so much software out there that is basically untested on anything but glibc that it makes sense to use that libc if you do not write everything in-house.

7. Again, please earn your degree in hypnosis before you use "we" instead of "I", really ^_^

I used "we" exactly once and I am pretty sure there will be very few people indeed that defend the crontab syntax.

Comment Re:Funny inability to see alternatives (Score 1) 469

I wonder if you realize that your post boils down to a longer version of this:

  • for all features X removed from Systemd, to achieve X in a replacement init, you must add Systemd back again.

In other words, it appears that you've been so indoctrinated by Systemd that you can't even conceive that there are structural alternatives possible for each feature X.

Well there are, unlimited numbers of them. :P

I am in no way talking about features of any replacement init. I am talking about interfaces other applications are depending on.

This may be udev, or the hostname/data/time configuration or logind or whatever else. Fact is that gnome is depending on some of these interfaces. KDE announced that they will do the same -- at the very least for wayland. I doubt that the other DEs will be far behind, especially now that ubuntu wants to move to systemd, too. These interfaces are apparently not all bad, so developers want to use them.

So if you want to run any of these applications, then you need to provide these interfaces in one way or another. This can be by either using systemd, or systemd-shim or systembsd or whatever implementation. There are quite a few to choose from at this point:-) For a new project to remove all that code and claim it is not needed is naive at best.

The features provided by the init system itself or how those are implemented is irrelevant to my point.

Comment Re:What a fitting name! (Score 1) 469

So this does *not* ship the things that are needed to run Gnome

I think that's a feature

It is a feature to some, a misfeature for others. It definitely does not make this uselessd a viable alternative to systemd for mainstream distros.

especially since much of the journald code still needs to stick around:

Well that right there shows that systemD is not modular and flexible

Not at all. It is just sound development: Come up with a interface you use in your code for the functionality you are using from others. That way you can have different implementations. In this case: Push logs to /dev/null, use journald or push it to syslog. Actually it is exactly what makes this flexible and modular.

Comment What a fitting name! (Score 2, Informative) 469

This project is indeed useless:-)

First it implements the PID1 part of systemd, cutting out things like hostname, date and time management and logind. So this does *not* ship the things that are needed to run Gnome (or soon any other desktop environment). So you need systemd anyway... or a systemd shim or systembsd or whatever to provide the functionality that is missing.

It removes journald... and with it really nice features like systemctl status whatever showing the last bit of output from that unit. That is a huge step back, especially since much of the journald code still needs to stick around: It is the "internal" logging interface used in systemd. It just feeds it on to syslog now instead of writing it to disk, something you could do with one line of configuration.

Removal of udev? You need that functionality, so again you will need to install "real" systemd or some other piece of code replacing that. Again you could just reconfigure the "real" systemd to use any alternative implementation in place of its own.

Then it advertises that it is portable. The developer apparently spend time to make this run on FreeBSD, which is nice, but has anybody in that came ever asked for that? AFAIK they are working on something like Apples launchd. Any other of the BSDs that want systemd? Not that I am aware of.

Then it is portable to other compilers but gcc. Systemd uses gcc extensions that make for more robust code (e.g. destructors for variables). Ripping that out will just lead to more bugs, especially in the error-paths. Not sure that is worth the trouble.

Finally it is portable to other libcs. That is actually somewhat nice... even though glibc is the dominant libc implementation on linux systems (that are not android:-).

Then it removes some really convenient functionality like the timer units. Do we really want to go back to the cryptic crontab syntax? If the job there is somewhat complex it will most likely start a systemd unit anyway (for the security features, resource management, the way better logging or just the better job control). PID1-systemd needs to know the time anyway, and it needs to start jobs, so why not have it start jobs based on the current time? That is definitely less code -- and probably better tested, too -- than running an extra daemon for that rather trivial job.

It also removes the support for the security frameworks... "to stick to a more clearly defined purpose, one that is agnostic of such elements". Wow, that is just plain stupid. If you want to use these frameworks, then you want to have them in use *everywhere*. That is the whole purpose of those frameworks.

Comment Good riddance to bad rubbish (Score 0) 156

I should say that Tesla's offerrings are nowhere near what my pocketbook could accomodate. Having said that, I wish nothing but good luck to them.

Dealerships are useless, blood-sucking parasites, and I won't shed a tear for them, if those massive wasters of useful oxygen will disappear from the face of the earth. Even though I've gotten the art of buying a car down pat, keeping my actual interaction with those vermin to an absolute minimum, and even if, by my own estimates, I reasonably avoid having to deal with maybe 90% of the bottom feeders a typical car buyer would be subject to, I'd still wish them to burn in flaming pits of hell.

I have to laugh at their PR spin, when they claim how dealerships are the best way to buy cars. Blah, blah, blah. I can safely safe that, having bought 3 cars in the last ten years, dealerships are always just a waste of my nerves, they add absolutely nothing of value, and only inflate the price of a car through their markups. I wouldn't actually even mind if all that having these dealerships around do would add a modest markup to the price of a car, in exchange for a little bit of service. If that was all to it, then I don't think I'd mind it at all. But that's just a small part of the problem, and I'm sure it's quite clear what I'm talking about, so enough said...

Let's just say that I'm rooting for Tesla, even though if they win it would do absolutely nothing for me directly. Indirectly, yes: not having to deal with those parasites, the next time around, would be a big plus.

Comment Look for summer internships (Score 1) 309

$Dayjob$ hires talented interns from local scrools of higher learning, every summer. Many of them come back for a few years, as they finish up their bachelors.

Your university most likely has a few beaureaucrats in some kind of a career placement office, of sorts, that are likely have leads to local companies who have open summer internships.

A few of the best $dayjob$'s interns get a job offer, after they graduate. And all of them earn some beer money during the summer, and have something to go on their resume.

Comment Re:No... (Score 1) 533

I cant be completely sure here, but there is a funny pattern I have noticed over the years that may explain your experience. Over and over again, I hear about problems that require these over-engineered solutions from people running over-engineered distros that I just cannot reproduce using my (cleaner) system. So I suspect somewhere in your excessively complex system you have managed to break apache in a way that I cannot reproduce using a simpler system.

Considering that reparenting processes that double fork is tried and true unix philosophy: It would be somewhat surprising to see apachectl properly clean up after itself in your so called cleaner system. Maybe you just fail to properly recreate the problems in your trimmed down universe?

And yet this is an argument for introducing yet more excessive complexity to remedy? Doesnt make sense to me.

None of the init systems currently in use is conceptually very complex. In the end sysv init is actually one of the more complex ones. The others are of course different, but I would not actually call them conceptually more complex.

In fact setting up a service and then starting it is significantly simpler with systemd (and upstart and openrc) than it is with sysv init. Give it a try before complaining about it.

Why would I care? I dont use that system and am not affected by their bugs.

Hmmm... why would you? Maybe because these are fundamental issues with how sysv init works?

Comment Re:No... (Score 1) 533

I think you've lost sight of the purpose of an OS and the purpose of logs. An OS is not running for the sake of running an OS, and logs are not persistent structured application data, but ad-hoc information about the behaviour of the system for human consumption.

I am not talking about structured application data, I am talking about facts that go with the actual log message like the timestamp, the PID that the message originated from, the capabilities the process has that originated the message, the full filename of the process running, which cgroup the message originated from, which boot id this message belongs to (really nice if you want to see one boot/run/shutdown cycle only), that kind of data.

Having that information in the journal is really nice. Not having to parse it out of some textfile where some application put it in a more or less randomly selected format is even nicer. Correlating data from different log files written by different applications is a huge pain that is completely gone with journald.

They need to be filtered, sliced, and flattened as needed *post-facto* to be of any use. Given that you don't even know what I want to log, from where, how is that going to be normalised in a centralized journal? Will it let me query by anything more than straight filter on app or PID etc - like I can already do?

Yeap, it does. It makes full use of all the extra data it adds to the log entries and thus allows for way more reliable and powerful filtering, slicing and dicing:-)

Comment Re:Accept, don't fight, systemd (Score 1) 533

I'll tell you when: when GNOME developpers took the path of making it all but impossible to have GNOME properly working with other init systems. And that's just the "I've had enough" point in time, not the one and only example.

So the GNOME project making a technical decision that makes their live easier is forcing something down your throat. You are being a bit egocentric, aren't you?

Some decision taken over the past years in various linux distributions have been taken not out of technical merit or discussion, but out of personal interests, or for political reasons. Sometimes it comes discreetly through some clever marketing that everyone swallows and when you notice it, it's already too late (systemd), sometimes through hostile takeovers (yes, Debian, I'm looking at you *cough* libav *cough*) where there is nothing you can do as a user because a few guys in power decide what is good for you.

Do you have prove for any of those claims? Where are the army of developers that do something about the decisions and flock to projects that are not falling for the propaganda? Or are you the only one that understands what is being played here?

Linux used to be about choice, but the list of these non-technically-based decisions that reduce our options is getting longer and longer recently.

This statement does not become true by repeating it.

FLOSS always had a strong "who does the work is right" approach. What the users say has always been secondary.

Whatever will happen, don't tell me that the many voices around objecting to systemd have been listened to or their objections to core-design problems addressed.

There are loud voices speaking out against systemd. Do not mistake that for many voices. In Debian the systemd oponents failed to find five people required to call for a vote to overturn the decision made by the technical committee! And that after all the fuss taht was raised during the discussion process.

systemd may very well be the best init software ever written, but then there is the manner. The way it's currently spreading its arms out of its role as an init system in a non UNIX way for political reasons, acting like a kernel above the kernel, is what most people are complaining about.

Why bother to write something that is as good as what was there before? Systemd tries to do more than init ever did, right. But much of that actually makes sense if you take the time to read up and think about it.

Just read this whole thread, yes there are trolls, but there are sensible people making reasonnable arguments. And what is the answer they're given: "you're holding it wrong".

I have seen very few reasonable argument levered against systemd in this thread. But then what can you expect from a thread that has an april fools joke listed as a fact?

I mostly see misinformed or uninformed posts. What can you tell people that form a strong opinion on something without bothering to learn about it first? "You're holding it wrong" is actually a rather polite way to put it IMHO:-)

Slashdot Top Deals

This file will self-destruct in five minutes.

Working...