Selam,
Benim kullandığım basit ama etkili bir bash scripti var. Sizde kullanabilirsiniz
SSH dan,
CentOS Sunucu İçin
yum install mail -y
Debian & Ubuntu Sunucu İçin
apt-get install mail -y
nano /usr/bin/check_service
İçerisine aşağıda ki kodu ekleyin.
#!/bin/sh
SERVICE='httpd'
if ps ax | grep -v grep | grep $SERVICE > /dev/null
then
echo "$SERVICE service running, everything is fine"
else
echo "$SERVICE is not running"
# HTTPD durunca mail gelsin istiyorsanız. Gelmesin diyorsanız echo ile başlayan yere # koyabilirsiniz.
echo "$SERVICE is not running!" | mail -s "$SERVICE down" mailadresiniz@domain.com < /dev/null
# Service Starting
service httpd restart > /dev/null
fiCTRL + X yapıp Y ye basın ardından ENTER ,
sonra izinlerini ayarlayın.
chmod 755 /usr/bin/check_service
ardından crona tanımlayalım her 5 dakikada bir kontrol etsin servisleri
crontab -e
açılan ekrana aşağıda ki veriyi ekleyin
*/5 * * * * sh /usr/bin/check_service
ardından
service crond restart
veya
/etc/init.d/crond restart
veya
/etc/init.d/cron restart
Yinede mail gönderim konusunda sıkıntı olabilir sunucuya göre
mail servisinin tam yüklendiğinden emin olun.