[CentOS] Issue with "ExecStartPost" attribute in systemd daemon faile

Leon Fauster

leonfauster at googlemail.com
Thu Nov 21 13:41:25 UTC 2019


Am 21.11.19 um 14:28 schrieb Gestió Servidors:
> Hello,
> 
> I'm trying to configure a daemon (I'm doing tests with "crond" daemon) to send me an email after daemon restart. My "crond.service" file is:
> # /etc/systemd/system/crond.service
> [Unit]
> Description=Command Scheduler
> After=auditd.service systemd-user-sessions.service time-sync.target
> #OnFailure=crond-notify-email@%i.service
> 
> [Service]
> EnvironmentFile=/etc/sysconfig/crond
> ExecStart=/usr/sbin/crond -n $CRONDARGS
> ExecReload=/bin/kill -HUP $MAINPID
> KillMode=process
> Restart=on-failure
> RestartSec=10s
> ExecStartPost=/bin/sh -c "/etc/systemd/system/test.sh"
> 
> [Install]
> WantedBy=multi-user.target
> My "test.sh" is very simple:
> #!/bin/sh
> echo "CROND is restarting" | /usr/bin/mailx -s "crond failure notification" myemailaddress at mydomain
> 
> As you can see, I have added lines "Restart=on-failure", "RestartSec=10s" and " ExecStartPost=/bin/sh -c "/etc/systemd/system/test.sh"" to the original crond.service daemon file. Then, I run "systemctl daemon-reconfigure" and, from one console, I run "kill -9 `pidof cron`" for restarting crond daemon. After it, I receive an email... But now, if I run again ""kill -9 `pidof cron`", I don't receive any mail... I have notice that if I run "systemctl daemon-reload" and then kill crond process, mail is sent perfectly... but if I don't run "systemctl daemon-reload", mail is sent ONLY first time...
> 
> Why?

What is "status" showing (systemctl status crond)? For both cases 
(first/second kill)? Any  differences?

--
Leon






More information about the CentOS mailing list