Wiki Table of Contents

Systemd

NOTE: this page treats the treatment of systemd in MX Linux. For an overview of systemd itself, see Systemd overview

On this page:

MX Linux ships with systemd present but sysVinit is still the default init system by default. Thanks to the systemd-shim system, users can choose to boot installed systems whichever way they choose.

Background

Systemd is an init & service manager, largely written by the developers of pulseaudio & udev.
It is more integrated than prior init systems, and can better do parallel operations during startup.
Its service manager and dbus implementation are integrated in the init system, so they all run under PID1 (the first program ID)

Obviously there are strong disagreements whether this is a good idea or not. Traditionally the init program running under PID1 was as small as possible so there was less that could go wrong which made your system unbootable. Also configuration files & log files from these processes were fairly simple text files for ease of troubleshooting. Systemd violates these traditions. Logs are binary files by default. Boot dependencies are taken care automatically instead of manually in config files.
Arguably it adds functionality e.g. in better control of the state of services, and faster boot times because of the dependency optimization.

The systemd argument is largely an argument about the Unix philosophy:

Write programs that do one thing and do it well.
Write programs to work together.
Write programs to handle text streams, because that is a universal interface.

Some people feel that Systemd doesn’t follow that philosophy very well.

Finally, which init system to use is by no means an open and shut case for many people. For now, MX Linux still gives users the choice.

Enabling systemd

When the GRUB screen is displayed at the very beginning of the boot process, click on Advanced options… and select to use systemd. Use MX Boot Options to make this the default.

You can remove the sysVinit option entirely by installing systemd-sysv. That will replace /sbin/init with a symlink to systemd. Remove the package to revert to the stock behavior. The only disadvantage to a systemd-only setup is that the MX live system doesn’t work 100% with it (snapshot and the live usb persistence features).

——————–

v. 20220417

13 thoughts on “Systemd”

  1. @azad, the easiest way to set systemd as default is adding the option
    GRUB_DEFAULT=1
    to /etc/default/grub. That way, the option selected on GRUB startup menu will always be the second one: the “systemd” option for the latest kernel installed.

    You could also add these two:
    GRUB_DEFAULT=saved
    GRUB_SAVEDEFAULT=true
    . If you use more than one kernel and hibernation, it’s better, because the risk of selecting a different kernel when resuming is reduced.

    Reply
    • update eerst het installatieprogramma.

      als het nog steeds mislukt, plaats dan het bestand /var/log/minstall.log op ons forum

      **google translate**

      update the installer first.

      if it still fails, then post the /var/log/minstall.log file in our forum

      Reply
  2. How can I make ly login/desktop manager work with sysVinit? It is made to work with any init system without recompile. But out of the box it’s working just with systemd…

    Reply
  3. i’m in emergency mode:what every i type jouralctl-xb,systemctl reboot, systemctl default ………,still cannot log in to mx,what can i do in root:`# ?

    Reply

Leave a Comment

MX Linux