- A Cloud Guru
Creating Your Own Service File with Network Requirements in CentOS
At some point in your career as a system administrator, you'll be given a piece of software that doesn't have its own service file. If that ever happens, the skills gained here will let you write up a service file so `systemd` can manage the service with no issues.
Table of Contents
Identify the Target to Use to Determine if the Network Is Online
/usr/lib/systemd/system, there are a number of targets you might be able to use.
network-online.targetseems like the best bet.
If you look at
man 7 systemd.specialthere's an entry about the
network-online.targetas well, and that looks like the right thing.
Write the Custom Service File
First, navigate to
/etc/systemd/systemto place our custom service file.
custom.serviceand fill it out so it looks like this:
[Unit] Description=Custom Service Wants=network-online.target After=network-online.target [Service] Type=forking ExecStart=/usr/bin/emacs --daemon ExecStop=/usr/bin/emacsclient --eval "(kill-emacs)" [Install] WantedBy=default.target
Once complete, test it with:
systemctl start custom.service
Once it's running, leave it that way and you've completed the task.
What's a lab?
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.