لفترة طويلة قمت بإعداد خادم في المنزل، مع عدة خدمات، ومركز إعلامي، وغيرها…
الأمر المهم في الخادم هو أن تعمل خدماته بشكل صحيح لأطول فترة ممكنة، لذا من الضروري التحقق مما إذا كانت جميعها نشطة. ومع ذلك، بسبب الأخطاء، في بعض الأحيان تتوقف هذه الخوادم عن العمل، لذا من الضروري التحقق من بقائها نشطة من وقت لآخر وإذا لم تكن كذلك، إعادة تفعيلها.
لهذا السبب أترك لك هنا الرمز لفحص وإعادة تشغيل الخدمات.
“fichero.sh” الخاص بك ابحث عن “PATH” وأدخل موقع الملفات المطلوبة:
#!/bin/bash
services=(zoneminder webmin tomcat6 subsonic apache2)
for name in ${services[@]}
do
SERVICEEXIST=`sudo service $name status|grep -n "is running"|cut -d: -f1`
if [ "$SERVICEEXIST" != "1" ] ; then
service $name start
fi
done
procesos=(amuled utserver lircd)
for name in ${procesos[@]}
do
PROCESSNAME=`ps -A|grep $name|cut -d: -f3|cut -d" " -f2|tail -1`
if [ "$PROCESSNAME" != "$name" ]; then
case $name in
"amuled") sudo service amule-daemon restart; break;;
"utserver") RUTA/utserver -daemon; break;;
"lircd") sudo service lirc start; break;;
esac
fi
done
pyload=`pyLoadCore --status`
if [ $pyload == "false" ];then
pyLoadCore --daemon
fi
nxserver=`sudo /usr/NX/bin/nxserver --status|grep -n "is running"|cut -d: -f1`
if [ $pyload == "false" ];then
sudo /usr/NX/bin/nxserver --daemon
fi
SERVICEEXIST=`sudo service proftpd status|grep -n "currently running"|cut -d: -f1`
if [ $SERVICEEXIST == "false" ];then
sudo service proftpd start
fi
SERVICEEXIST=`sudo service ssh status|grep -n "running"|cut -d: -f1`
if [ $SERVICEEXIST == "false" ];then
sudo service ssh start
fi
SERVICEEXIST=`sudo service mysql status|grep -n "running"|cut -d: -f1`
if [ $SERVICEEXIST == "false" ];then
sudo service ssh start
fi
SERVICEEXIST=`sudo service cups status|grep -n "running"|cut -d: -f1`
if [ $SERVICEEXIST == "false" ];then
sudo service ssh start
fiبمجرد الحفظ، نقوم بتنفيذ ما يلي:
sudo crontab -eوفي الملف الذي يفتح ندخل:
*/1 * * * * bash RUTA/fichero.shحيث “1” هو عدد الدقائق التي يجب أن تمر بين الفحوصات.






