How to create a Systemd service in Linux

At times you create a script and then you want to have the scripts controlled by systemd or in some cases you wish to have the scripts getting restarted by itself when it is killed due to some reason. In such cases systemd in Linux helps to configure services which can be managed. To do so follow the following steps.

  1. cd /etc/systemd/system
  2. Create a file named your-service.service and include the following:

    [Unit]
    Description=<description about this service>
    
    [Service]
    User=<user e.g. root>
    WorkingDirectory=<directory_of_script e.g. /root>
    ExecStart=<script which needs to be executed>
    Restart=always
    
    [Install]
    WantedBy=multi-user.target

     

  3. Reload the service files to include the new service.
    sudo systemctl daemon-reload


  4. Start your service
    sudo systemctl start your-service.service

  5. To check the status of your service
    sudo systemctl status example.service

  6. To enable your service on every reboot
    sudo systemctl enable example.service

  7. To disable your service on every reboot
    sudo systemctl disable example.service

0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
A tcpdump Tutorial and Primer with Examples
Viewed 7124 times since Sun, Jun 17, 2018
Linux Audit The Linux security blog about Auditing, Hardening, and Compliance lynis
Viewed 3007 times since Thu, Jan 16, 2020
10 Linux nslookup Command Examples for DNS Lookup
Viewed 11258 times since Sun, Sep 30, 2018
RHEL: XFS basic operations
Viewed 18043 times since Sat, Jun 2, 2018
awk printf
Viewed 17304 times since Wed, Aug 19, 2020
stunnel How To Set Up an SSL Tunnel Using Stunnel on Ubuntu
Viewed 2777 times since Sun, Dec 6, 2020
stunnel bacula
Viewed 2961 times since Fri, Sep 28, 2018
OpenSSL: Check SSL Certificate Expiration Date and More
Viewed 8367 times since Mon, Feb 18, 2019
haproxy linux
Viewed 3315 times since Sun, Dec 6, 2020
RHEL: Extending the maximum inode count on a ext2/ext3/ext4 filesystem
Viewed 4572 times since Sun, May 27, 2018