Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.
  • Labs icon Lab
  • A Cloud Guru
Google Cloud Platform icon
Labs

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.

Google Cloud Platform icon
Labs

Path Info

Level
Clock icon Intermediate
Duration
Clock icon 30m
Published
Clock icon Apr 03, 2020

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    Identify the Target to Use to Determine if the Network Is Online

    In /usr/lib/systemd/system, there are a number of targets you might be able to use.

    Among them, network-online.target seems like the best bet.

    If you look at man 7 systemd.special there's an entry about the network-online.target as well, and that looks like the right thing.

  2. Challenge

    Write the Custom Service File

    First, navigate to /etc/systemd/system to place our custom service file.

    There, open custom.service and 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.

The Cloud Content team comprises subject matter experts hyper focused on services offered by the leading cloud vendors (AWS, GCP, and Azure), as well as cloud-related technologies such as Linux and DevOps. The team is thrilled to share their knowledge to help you build modern tech solutions from the ground up, secure and optimize your environments, and so much more!

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.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.

Start learning by doing today

View Plans