Frequently Asked Question

What are the alternatives to systemd (sysvinit, OpenRC, runit, s6)?

A handful of init systems remain in active use. sysvinit is the classical 1980s System V init: tiny, shell-script based, sequential, and the basis on which Devuan and a few minimal images still run. OpenRC, the default on Gentoo and Alpine, keeps sysvinit-style shell scripts but adds proper dependency handling and parallel startup; a pragmatic middle ground. runit (used by Void Linux) and s6 (used by some Artix and Alpine images) are minimalist process supervision suites: very small, deterministic restart logic, but no built-in equivalents of timers, sockets, networkd, or journald.

The trade-offs are predictable. systemd gives you a single, well-documented framework that covers most of what a modern server or desktop needs, at the cost of size and coupling. The alternatives are smaller and more Unix-philosophical but you assemble the other pieces (cron, syslog, NetworkManager, a logging daemon, a DNS resolver) yourself. For 99% of users on mainstream distributions, the choice has already been made and systemd is what you will be using; the alternatives matter most for embedded work and for people who care strongly about minimalism.

Video

Further reading and video