Systemd – Pros and Cons
Systemd is a complex software stuff for starting up UNIX-like system. Actually it’s not just for starting up the system, it’s a whole layer for managing the entire system. It’s an init system and a logging system, and a hot-plugging system, all incredibly tightly integrated. Design wise systemd appears to be a full-blown everything-including-the-kitchen-sink solution to the relatively simple problem of starting up a Unix-like system.
-It makes booting process faster, which is nice, but in a server environment it’s not that big of a deal.
-It provides configuration of device dependencies, built-in mount, fsck, automount, and swap handling.
-It has SELinux integration, PAM integration, and LUKS integration.
-It can handle locales seamlessly.
-It has the ability to respawn crashed services and detailed service analysis (such as listing all processes of a service).
-It has container support and stateful init scripts, so although you will lose complex init script chaining it should no longer be required.
– It utilizes binary logging (journald), replacing syslog, which, if used, means no more log grepping, log rotating, and so on.
– Cron disappears in favor of a proprietary cron called calendar timers with similar functionality.
-What was previously the responsibility of getty to log in now becomes the responsibility of logind.
-It doesn’t work with other init managers and will not ever run on BSD (in the words of systemd founder BSD is no longer relevant).
– It is LGPL. So there is no need to redistribute fixes. This is a RedHat sponsored project. The systemd developers do not at the moment seem to publish backport fixes, just update fixes. So if RedHat (the company) for RedHat (the product) decide to backport fixes to a particular release, as they normally do, they are not under any obligation to publish source code of these fixes giving them a clear advantage and making other Linux distribution do all that rework.
– All the daemons are bundled and tightly integrated which makes it difficult to use alternatives or replace it piecemeal. And the way it was rammed into place was getting some GUI desktop environments to require it. Systemd developers do not seem to be interested in building a system that contains independent and replaceable modules.
– No “advanced mode”. Everything must go through systemd. For example, if there is some novel thing you want to try with cgroups it must be done via systemd. Systemd will go as far as hiding cgroups from users (in this case sysadmins) and presenting slices. No ability to create your own cgroup policy engine, you have to use an api/dbus to instruct systemd to act on your cgroups.
– Stifling independent innovation. Developers must work in the systemd ecosystem or face not being adopted. Even if new “hyper init system X” gets invented and has unheard of, unimaginable functionality it will have to be integrated into the systemd packages or not be used. People won’t be able to try it, they won’t be able to install it without installing huge core components of their OS. And once a project is part of the systemd project the independent philosophy that may have driven the innovation will be subsumed.
Linux Distros not Using Systemd
As of this writing, Ubuntu and most of the Ubuntu community projects have not adopted systemd, though they plan to migrate to systemd in the future. PCLinuxOS has not adopted systemd and has no plans to migrate to the new init software. Slackware , CRUX and Gentoo are are unlikely to adopt systemd as their default init system for philosophical reasons. (Gentoo does offer systemd as an alternative init system for those who want it.)
–Boycott Systemd | boycottsystemd.org
–Can You Say Something Nice About Systemd? | Ask Slashdot
–Distributions not adopting systemd | DistroWatch
–Getting Ready for systemd (in RHEL7) (Video) | via MontanaLinux
–How to Avoid Systemd | SoylentNews
–Practical Alternatives To Systemd? | Slashdot
–Systemd the Core OS (Video) | MontanaLinux
–systemd discussion document | Debian Wiki
–Ubuntu Concedes Defeat in Upstart vs Systemd| SoylentNews
–What’s wrong with systemd? | SoylentNews
–Why I’m Afraid of Systemd| DZone
–Why pro-systemd and anti-systemd people will never get along | DarkNedgy.Net