For those who dislike bloat, OpenRC is an init system that offers a greatly simplified solution compared to systemd or sysvinit (specifically, sysv-rc) with a much smaller codebase and consequently increased security, stability and reliability.
From the package page:
It is already possible to use OpenRC in BunsenLabs in conjunction with sysvinit by installing the systemd-shim and sysvinit-core packages along with the stock jessie (or stretch) openrc package.OpenRC is a dependency based service manager. It provides support for System V init, for booting, changing runlevels, starting and stopping services, and shutting down.
Originally written as a Gentoo project, OpenRC aims at being platform-agnostic. It works equally well on Linux, BSD and Hurd. It supports the traditional init system in Debian in addition to many alternatives. OpenRC is implemented in C in a small, simple and efficient way, making it easy to understand, extend and reuse.
However, the latest versions of OpenRC now include the openrc-init binary that can be used as a drop-in replacement for /sbin/init
The advantages of this are that it allows systemd to remain in place so it can be used as a backup PID1 in case anything goes wrong [1] and also that it does not require the un-maintained systemd-shim package.
To take advantage of this method, first install sysvinit (we need some of the installed scripts for OpenRC):
Code: Select all
sudo aptitude install sysvinit-core
Code: Select all
sudo aptitude install systemd-sysv
https://download.opensuse.org/repositor ... ebian_8.0/
https://download.opensuse.org/repositor ... ebian_9.0/
Navigate to the amd64 (for 64-bit systems) or i386 (32-bit) folder, download the openrc .deb file and install the package with gdebi.
To use openrc-init instead of sysvinit, add this kernel commandline parameter:
Code: Select all
init=/sbin/openrc-init
Code: Select all
# update-grub
Upon a reboot, test with:
Code: Select all
empty@testbed:~ $ cat /proc/1/comm
openrc-init
empty@testbed:~ $
The Gentoo Wiki also has some tips:
https://wiki.gentoo.org/wiki/OpenRC
To reboot under pure OpenRC, use:
Code: Select all
sudo openrc reboot
Code: Select all
sudo /sbin/openrc-shutdown --poweroff
[1] boot with systemd again by pressing "e" with the Debian GRUB menu entry highlighted and simply delete the extra init=/sbin/openrc-init parameter and press <Ctrl>+x (at the same time) to boot the modified entry; remeber to modify grub.cfg to make this permanent if needed.