Manage systemd with graphical tools

Command Center

Article from Issue 214/2018

Graphical frontends make it easier to take full advantage of the Systemd process manager. We examine some leading tools for the KDE environment.

For administrators as well as power users, the Systemd init daemon [1] requires training due to its many options and innovations. However, if you are in a hurry – or if you are accustomed working within a GUI interface – you can speed up the learning curve by using one of Systemd's graphical frontends. Systemd has several GUI options, each with its own range of functions. Most of the Systemd GUIs are based on established desktop environments such as KDE Plasma or Gnome, but cross-desktop solutions are also available.

Kcmsystemd [2], Systemd-kcm [3], and SystemdGenie [4] are three powerful tools for managing Systemd in KDE and other Qt-based desktop environments. In addition to displaying current system status, these frontend tools serve as a convenient interface for viewing and modifying information stored in Systemd configuration files (see the box entitled "Background.")


As you will learn in the other articles in this issue, the Systemd universe is organized into entities called units. Systemd units initialize individual processes, mount drives, manage swap memory, and create new devices. Systemd is capable of parallelizing the individual units. Simultaneous execution of several tasks significantly speeds up system startup, especially on hardware with modern multi-core processors.

The file extension tells you which unit fulfills which task: The .service extension describes service units that manage processes – similar to the init scripts of SysVinit. Units with the .mount extension manage drives and filesystems. Units ending in .device create device files, and units ending in .timer handle recurring tasks. There are also .socket and .target units: .target combine individual units and can therefore be compared with the runlevels under SysVinit, while the .socket units open individual network sockets.

Since the configuration information of each unit resides in text files, each unit can be modified using the systemctl edit --full Unit_name command. To view the central log file of the system, you do not open the /var/log/messages file – which was the case on SysVinit systems. Instead, Systemd provides the journalctl command, which you can use to open the log file created in binary format. Parameters of the command can be used to view individual subareas.

Trilateral Test

Kcmsystemd and Systemd-kcm were originally developed for the KDE desktop. Kcmsystemd was designed for KDE SC 4.x interfaces, and Systemd-kcm was created for Plasma 5 environments. SystemdGenie is similar to Systemd-kcm in its scope of features, but it works as an individual application.

Functionally and visually, the two tools integrated in KDE differ only slightly, whereas SystemdGenie differs from both of the others. All three tools are also available for other desktop environments based on the Qt libraries, such as LXQt.


After launching, Kcmsystemd comes up with a simple and clear program window: In the main segment, all processes of the system appear in a multi-column tabular view in the Units tab, which is active by default. Use this tab to view the status of the individual processes (Figure 1).

Figure 1: Kcmsystemd summarizes process information in a well organized list.

To display only certain unit types, limit the display to the desired option by selecting an entry in the All unit types checkbox top-left in the program window. If you also want inactive units to appear in the list, check Show inactive. Inactive units now appear in red; all other processes are in green.

Info Center

Kcmsystemd shows detailed information about each unit as soon as you click on the process in the list view. The processes appear in the form of a table in the lower window segment. Below them are four switches, not all of which can be activated, depending on the selected process. The switches allow you to stop or start the relevant unit, initiate a restart of the process, or reload the configuration.

If you hover over a unit line for a while with your mouse pointer, a window opens, displaying information about the dependencies of the current process. The dialog lists dependencies for the current unit, as well as for units that require the selected process.

You can also edit the text files used for configuring the individual units. Right-click the unit, and a context menu appears. Select the first option Edit unit file. After entering the root password, KWrite, the default text editor under KDE, opens and lets you edit the configuration file (Figure 2). (BTW: This function failed under OpenSuse Leap 42.3 due to an incorrect path entry for the text editor, which cannot be changed manually.)

Figure 2: The Kcmsystemd editor lets you adapt individual configuration files.

Since incorrectly configured units can have considerable consequences for the system, it is a good idea to read the documentation [5] before editing a configuration. To enable the changes, restart the unit after editing.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Systemd Graphical Tools

    Systemd has won the race, as indicated by the several tools that already offer a service just a mouse click away. We look at six of these tools.

  • Command Line: Systemd

    Wondering what all the fuss is about systemd? We explain the basic concepts and capabilities of the new system management suite – coming soon to a distro near you.

  • Systemd Timers

    Systemd can start timers that automatically perform tasks at specified times. The configuration files are known as timer units.

  • Professor Knopper's Lab – Removing systemd

    The systemd service manager has been widely adopted by many Linux distros, so why would you want to remove it? The professor reveals why and how.

  • Packages in systemd

    You might need to tweak your Debian or Ubuntu packages to get them to work with systemd.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More