I am using a systemd service which calls a process when it\'s been \"started\" (e.g.$systemctl start test.service). As per the design, the process stays for ever in a loop,
Does a systemctl stop test.service command send SIGKILL or SIGTERM signal to kill the process? How can i detect a systemctl stop operation from within a process?
Systemd sends SIGTERM signal to process. In process you have to register signals, which are "catched".
In process, eg. SIGTERM signal can be registered like this:
void signal_callback()
{
printf("Process is going down\n");
}
signal(SIGTERM, signal_callback)
When SIGTERM is sent to process signal_callback() function is executed.