linuxservicesystemdrestart

How can I configure a systemd service to restart periodically?


I have a simple systemd service that needs to be periodically restarted to keep its process from bugging out. Is there a configuration option for systemd services to periodically restart them? All of the Restart* options seem to pertain to restarting the service when it exits.


Solution

  • Yes, you can make your service to restart it periodically by making your service of Type=notify. Add this option in [Service] section of your service file along with Restart=always and give WatchdogSec=xx, where xx is the time period in second you want to restart your service. Here your process will be killed by systemd after xx time period and will be restarted by systemd again. for eg.

    [Unit]
    .
    .
    
    [Service]
    Type=notify
    .
    .
    WatchdogSec=10
    Restart=always
    .
    .
    
    [Install]
    WantedBy= ....