I like systemd

systemd, people hate and cheer it in each way. Strong opinions arise around the over mighty system/boot/network/everything manager. Personally I like this piece of software, especially because it replaces old and rotten things like the system V init system, NetworkManager, ifupdown, and a variety of distribution specific things, depending through whom’s glasses you are currently looking (Debian-ish vs. RedHat-ish vs. the others™). One could argue, that e.g. upstart was a good approach to do so, but in one of the most important parts (the boot order) it failed miserably to get it right. Instead of expressing the boot order as a graph, it went for a declarative ordering way to express the order. And once again, one must maintain it by hand.Arch Linux adopted systemd a few years ago (in 2012) and I must say, that, even though the migration was quite painful if one did not read the instructions carefully (guess what …), it took only a short time, at least for me, to adopt it. I think they were the first, who went through the shit-storm of systemd adopters. Apparently they survived and did not die due to massive user loss or anything similar. In fact, the mental jump between the initscripts and systemd was gigantic, compared to Upstart and systemd.

The longer one waits, the more distributions move over to systemd. RHEL, CentOS (as a conclusion from RHEL’s move), Debian and even Canonical’s Ubuntu, where Upstart originally was created. For some haters this seems to be like the world goes totally nuts and some people even want to take Lennart Poettering, the author of systemd, to the court.

For a developer like me, the idea of systemd is a wonderful one. One standard environment to develop for, easy to write configurations for running processes on the system. A query-able journal, which seems to be a big (might be also ‘the biggest’) problem for many people out there. Yep, it is stored in binary format and some people argue, that this is total crap and unusable for a post-morten analysis. To be honest, if you do not have your logs streamed or replicated on a central logging system, you are screwed anyway. Stop complaining about things you loose and see the things you gain. You can put a monkey in front of the log user interface, without the need to use grep, sed, awk and things to get at least a reasonable result.

I guess, the haters hate the change, not the thing.

So far, most of the distributions do not even leverage the full power of systemd. Ubuntu, for example, does not use networkd and resolved from the start, but uses ifupdown. I’ll write another article how to change that.