apache servisini otomatik başlatma – Vahap Öç – Exevolium https://exevolium.com #windows, #linux, #hosting, #cloud, #database, #vmware Wed, 01 Feb 2017 13:35:44 +0000 tr hourly 1 https://wordpress.org/?v=7.0.1 https://exevolium.com/wp-content/uploads/2017/03/favicon1.png apache servisini otomatik başlatma – Vahap Öç – Exevolium https://exevolium.com 32 32 Linux’ta Duran Servisin Kontrolü ve Otomatik Başlatma Scripti https://exevolium.com/linuxda-duran-servisin-kontrolu-ve-otomatik-baslatma-scripti/ Wed, 02 Nov 2016 09:43:36 +0000 http://exevolium.com/?p=531 Merhaba,

Yakın bir zamanda karşılaştığım bir sorundur. Gerek saldırı yapılması ya da spesifik bir durum sebebiyle servisler durabiliyor. Bunun için yazdığım shell scripti paylaşacağım. Pgrep ile pid aratıyor eğer bulamazsa servisi yeniden başlatıyor. Basit bir yapı. Örnek için hem Apache hem Nginx için bu tanımı gerçekleştirdim.

Apache için:

#!/bin/bash
RESTART="/sbin/service httpd restart"
#Pgrep komut yolu
PGREP="/usr/bin/pgrep"
HTTPD="httpd"
# Apache pid bulma
$PGREP ${HTTPD}
if [ $? -ne 0 ] # Apache calismiyorsa
then
 # Apache restartla
 $RESTART
fi

Nginx için:

#!/bin/bash
RESTART="/sbin/service nginx restart"
#Pgrep komut yolu
PGREP="/usr/bin/pgrep"
HTTPD="nginx"
# Nginx pid bulma
$PGREP ${NGINX}
if [ $? -ne 0 ] # Nginx calismiyorsa
then
 # Nginx restartla
 $RESTART
fi

Aslında her şey için kullanabilirsiniz. MySQL olur, Postfix olur..
Eğer crontab’a aşağıdaki satırı eklerseniz 5 dakikada bir çalışacaktır.

*/5 * * * * /usr/bin/servis.sh >/dev/null 2>&1

 

]]>