Managing systemd Targets in CentOS

Managing systemd Targets in CentOS
Written by Abhishek JalanApril 18, 2020
1 min read
Server Administration
4 VIEWS 1 LIKES 0 DISLIKES SHARE
1 LIKES 0 DISLIKES 4 VIEWS SHARE
Abhishek Jalan

Founder of Wikiance, DevOps Engineer

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.

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.

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.

Centos
systemd
4 VIEWS 1 LIKES 0 DISLIKES SHARE
1 LIKES 0 DISLIKES 4 VIEWS SHARE
Was this blog helpful?
You must be Logged in to comment
Code Block
Abhishek Jalan
Founder of Wikiance, DevOps Engineer
14 Blog Posts
4 Discussion Threads
Trending Categories
37
Software1
DevOps15
Frontend Development4
Backend Development2
Server Administration1
Linux Administration5
Data Center0
Sentry0
Terraform2
Ansible0
Docker3
Penetration Testing0
Kubernetes0
NGINX0
JenkinsX0
Jenkins2
SSL0
Ethical-Hacking1
Python0
NodeJs1
RedHat0
Github0
AngularJs0
Google Cloud Platform (GCP)0
SonarQube0
Amazon Web Service (AWS)0
VMware0
Blockchain0
Snipe-IT1
MongoDB0