Skip to main content

Mastering Systemd

Course

Intro Video

Photo of Kenny Armstrong

Kenny Armstrong

Linux Training Architect II in Content

Kenny first encountered Solaris UNIX while I was in the military, and found out about Linux through the grapevine. He has worked with Linux in local government, fortune 500 companies, educational institutions, and by providing training. I have received Linux certifications from LPI, CompTIA, and Red Hat. Kenny has been working with Linux for nearly two decades and is passionate about sharing his knowledge with others about the system, and strives to learn more about the operating system every day.

Length

07:01:20

Difficulty

Intermediate

Videos

21

Hands-on Labs

4

Quizzes/Exams

4

Course Details

So you have heard that systemd is the new way that services and daemons are managed on a Linux system.  Most of the popular distributions have already adopted it, and now you need to learn how to use it.  Follow along with us as we explore the history of this Linux subsystem and why we have it now.  You will even learn how to use systemd to create your own service files, and see how much simpler it is to use compared to the older init system.

Syllabus

Course Introduction

Getting Started

Course Introduction

00:01:59

Lesson Description:

The introduction to our course on systemd.

About the Course Author

00:00:49

Lesson Description:

A little bit about me, your course author.

Linux Daemon History

Previous Service Management Tools

The Linux Boot Process

00:01:51

Lesson Description:

Learn about what happens on a Linux system after you press the power button. This lesson will show you the Linux boot process and how it pertains to an init system. Understanding this process is key to understanding why UNIX based operating systems have an init system.

init

00:09:23

Lesson Description:

An overview of the venerable init system. This lesson will walk you through the basic setup of the init system, and how it gets your services and daemons running for you.

Red Hat Service Tools

00:05:43

Lesson Description:

Didn't Red Hat come up with some tools to work with init?  Yep, and here is how they worked. Learn about the chkconfig, service, and ntsysv commands that Red Hat built to make service management with init easier.

upstart

00:06:10

Lesson Description:

The 'upstart' daemon tool was developed by Ubuntu as a replacement for init. Learn about some of the shortcomings that it attempted to correct, and how other distributions adopted it.

systemd Introduction

The Purpose of systemd

00:09:07

Lesson Description:

If we already had these other init systems, what is systemd for?  Find out here. We learn about what systemd aimed to correct from previous iterations of the Linux init systems, and how it is structured differently.

systemd Architecture

00:09:37

Lesson Description:

When beginning to explore systemd, a good understanding of the architecture is key. Within this lesson, we will talk about the architecture of systemd, its components, key terms, and some of the utilities used to manage it. By the end of the video, you will have the knowledge to start learning the tools for managing systemd services.

Alternatives to systemd

00:08:08

Lesson Description:

It wouldn't be Linux if there wasn't a different way to start the system.  Here are some of the alternatives to systemd. Learn about other daemon systems such as openrc and runit, and where they came from.

QUIZ: Linux Daemon History

00:30:00

systemd Components

systemd Tools

systemctl

00:10:18

Lesson Description:

Learn how to use the systemctl command to manage your system's services. The systemctl command is the main interface between an administrator and the world of systemd. Learn about how it differs from previous management tools such as chkconfig.

Introduction to the systemd Journal

00:04:29

Lesson Description:

This is a look at the basics of the systemd journal and its configuration. Find out how to configure the journal file's location and its log retention.

journalctl

00:07:14

Lesson Description:

Learn how to use the journalctl utility to view your system's log files. We will find out how to view the latest entries, kernel entries, and how to view journal entries with more detailed information from the service catalog. These commands are imperative to understanding what is going on with a system running systemd.

More systemd Tools

00:05:11

Lesson Description:

Learn about some of the other systemd tools that can aid you in configuring a system or for basic troubleshooting. Learn about some system configuration tools such as timedatectl, hostnamectl, localectl, and troubleshooting tools such as systemd-resolve.

QUIZ: Systemd Components

00:30:00

Unit Files

Basics of a Unit File

00:09:47

Lesson Description:

Learn about the basics of a systemd unit file. We will discuss a unit files various stanzas and how they correlate to a system's operations. You can use commands such as systemctl cat to view the contents of a systemd file to better understand a unit's workings.

Target Unit Files

00:05:55

Lesson Description:

Learn about the .target unit files. The target unit files dictate the environment that a system will run in. We will discuss targets such as multi-user, rescue, graphical and the various system shutdown targets as well. We will demonstrate the usage of systemctl get-default and systemctl set-default to change a target on a systemd computer.

Service Unit Files

00:08:44

Lesson Description:

Learn about the .service unit files. Here we discuss how to use the systemctl command to enable and disable a system service from starting up at boot time, and how to use systemctl start and stop to manage a service at runtime.

Timer Unit Files

00:09:03

Lesson Description:

Learn about the .timer unit files. As a potential alternative to cron, we discuss how to schedule jobs and services to run at specific times and see what timers are already set up using the systemctl list-timers command.

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

QUIZ: Systemd Unit Files

00:30:00

Containers with systemd

systemd and Containers

systemd and Containers

00:06:29

Lesson Description:

With the introduction of systemd, Linux has a new way of managing containers. Find out how this works with the use of the systemd-nspawn utility, and the machinectl suite of tools that can be used to build out small, lightweight containers in systemd.

systemd Container Demo

00:06:00

Lesson Description:

A visual walkthrough of the construction of a container using systemd. We will display the usage of the systemd-nspwn command and machinectl command to build out a container in systemd.

Networking in systemd Containers

00:09:19

Lesson Description:

Learn how to set up a network interface for a container in systemd. This is useful if you need to try out web services from within a systemd container. We also introduce the systemd-networkd utility for managing systemd-nspawn network interfaces.

QUIZ: Systemd and Containers

00:15:00

Course Conclusion

Final Steps

Final Steps

00:00:54

Lesson Description:

You completed the course!