Managing systemd Targets in CentOS

45 minutes
  • 2 Learning Objectives

About this Hands-on Lab

Changing `systemd` targets isn’t something that will come up too often, but knowing how to manipulate and understand a target unit file can be a useful skill. In this lab, we practice with `systemd` targets without risking a production failure.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Verify the Default Target

First we need to see what the current default target is. We can do that by running:

systemctl get-default

Since graphical.target isn’t what we need, let’s set it to what it should be and then make sure we’re in that target.

systemctl set-default multi-user.target
systemctl isolate multi-user.target
Create `custom.target`

Since this is a new server in your environment, you need to make sure custom.target is set up.

Navigate to /etc/systemd/system and create a file that looks like this:

[Unit]
Description=Custom Target
Documentation=man:systemd.special(7)
Requires=basic.target
Wants=httpd.service
Conflicts=rescue.service rescue.target
After=basic.target rescue.service rescue.target
AllowIsolate=yes

Once that is done, you should be able to run systemctl isolate custom.target. Check to see if httpd is running after the isolate — if it’s not, you might need to install it and run the isolate again to verify your configuration is correct.

Additional Resources

Note: Please give this lab a few minutes before attempting to connect via ssh.

You’ve been handed a server that needs to be configured according to your group’s standards. The first thing on your list to check are the systemd default targets and to ensure your group’s custom.target exists and works.

Your custom.target should be identical to multi-user.target except it should want httpd.service. Make sure the httpd service is started only after isolating the custom target.

What are Hands-on Labs

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!

Get Started
Who’s going to be learning?