No Systemd

standeven2 pts0 comments

No systemd - Resources against systemd and alternatives

What is systemd?

systemd claims to be a good and modern replacement for SysVinit — a so called init daemon. Usually the init daemon is the first process spawned by the kernel and thus has the PID #1 and is responsible for spawning other daemons which are necessary for the OS to operate, e.g. networking, cron, syslog etc.

List of init daemons*:

systemd

SysVinit (home)

OpenRC (home)

runit (home)

s6 (home)

Shepherd (home)

finit (home)

Hummingbird (repo)

superd (repo)

31init (repo)

Dinit (repo)

procd (repo)

uselessd (repo; inactive)

Upstart (home; inactive)

InitNG (repo; inactive)

cinit (home; inactive)

minit (home; inactive)

Epoch (home; inactive)

dmaster (repo)

*inactive: No development activity has occurred for several years.

What is so bad about systemd?

Notable bugs and security issues:

Datadog outage costing 5 million dollars caused by systemd upgrade

Widespread outage was caused on Azure, when systemd 237-3ubuntu10.54 was published to the bionic-security pocket (instances could no longer resolve DNS queries, breaking networking)

#437: timeX.google.com provide non standard time

#1143: PID1 getting stuck printing "systemd[1]: Time has been changed" continuously

#1312: restarting systemd service on dependency failure

#1596: journalctl -r -n flags incorrectly processed

#2402: Mount efivarfs read-only

#2460: Showing status of service via systemctl is slow (>10s) if disk journal is used

#4863: systemd-journald drops all bytes after '\0'

#5644: tmpfiles: R! /dir/.* destroys root

#6237: systemd can't handle the process privilege that belongs to user name starts with number, such as 0day

#6369: hostnamed does not like fqdns with trailing dots

#6381: systemd-cryptsetup: Booting with encrypted root partition fails instantly

#6478: `systemctl` should not consider active->failed as a successful operation

#6620: services writing to stdout become silent after journal restart

#7184: resolved: fix loop on packets with pseudo dns types (CVE-2017-15908)

#8579: systemd breaks my mouse

Out-of-Bounds write in systemd-networkd dhcpv6 option handling (CVE-2018-15688)

#6078: Applying systemd-networkd configuration disconnects all other interfaces

System Down: A systemd-journald exploit (CVE-2018-16864, CVE-2018-16865, and CVE-2018-16866)

#11810: Can't suspend again after suspending one time (explanation why this is bad)

Systemd user manager interferes with ecryptfs - private directory not being unmounted (also umount of ecryptfs does not automatically clear the keyring and ecryptfs-utils: Private directory not automatically unmounted anymore on logout)

#2913: journald is unable to attribute messages incoming from processes that exited to their cgroup, due to /proc vs SCM_CREDS race

Other issues arising around systemd:

systemd will be able to kill a process if he needs/wants more RAM

We need to enforce the use of systemd to everyone, by the creator of systemd itself.

systemd kills background processes after user logs out (see also: [RFE] add a way to run in a new systemd scope automatically)

Don't panic, but Linux's Systemd can be pwned via an evil DNS query

Systemd Could Fallback to Google DNS?

DNS search domain not removed from resolv.conf on disconnect

systemd does not respect system wide resource limits

How do I get rid of systemd?

Replace systemd with an alternative init system:

Ubuntu Wiki: Permanent switch back to upstart

Debian Wiki: Changing the init system

Linux distributions without systemd:

Alternatively you can use Linux distributions which do not use systemd by default:

A good summary about most of the beforementioned distributions can be found here.

BSD alternatives:

You can also consider changing to BSD derivatives:

Useful links

The world after systemd

I Hate Systemd

Search for distributions without systemd on DistroWatch.com

suckless.org on systemd

Broken by design: systemd

systemd-free linux community

Twitter Account @systemdsucks

systemd home repo inactive init after

Related Articles