Aşağıdaki betik crontab ile çalışmıyor. lütfen bu sorunu çözmek için hangi adıma ihtiyacım olduğunu bildirin. Bu komut dosyası manuel olarak tetiklediğimde iyi çalışıyor.Kabuk betiği çalışmayan bir işlemdir sadece üç işlemi bir arada olmak üzere yalnızca 2 işlemi öldürmek
Crontab: -
### Repack Restart
33 01 * * 1,2,3,4,5 /home/repackpr/scripts/repack_restart_script.sh > /tmp/repack_log16234.log 2>&1
repack_restart_script.sh:
#!/usr/bin/bash
cd /home/repackpr
today_date=`date '+%Y%m%d'`
DATE_STAMP=`TZ=CST+24 date +%Y%m%d`
tomcat_pid=$(pgrep -U $USER java)
rmireg_pid=$(pgrep -U $USER rmiregistry)
nagios_pid=$(pgrep -U $USER nrpe)
export tomcat_pid
export rmireg_pid
export nagios_pid
#Removing old logs
rm /home/repackpr/scripts/Repack_$DATE_STAMP.log
rm /home/repackpr/scripts/Repack_feed_mgt_$DATE_STAMP.log
rm /home/repackpr/scripts/Repack_Stop_$DATE_STAMP.log
# Stopping Services
/home/repackpr/server stop
kill -9 `ps -fu repackpr -o pid,comm | egrep 'java|repackpr' | awk '{print $1}'`
/home/repackpr/server status > /home/repackpr/scripts/Repack_Stop_$today_date.log
#Starting Services
export CATALINA_OPTS="-Dcom.sun.management.jmxremote.port=8071 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
/home/repackpr/server start
/home/repackpr/server status > /home/repackpr/scripts/Repack_$today_date.log
VALUE=`grep up /home/repackpr/scripts/Repack_$today_date.log|wc -l`
if [ $VALUE -eq 3 ]
then
/apps/repack/jetty/start.sh > /home/repackpr/scripts/Repack_feed_mgt_$today_date.log & #####Starting Repack Feed Management######
echo "Repack services has been started successfully"|mailx -s "Repack Service Restart--SUCCESS" [email protected] else
echo "Please perform the Repack service restart check" |mailx -s "Repack Service Restart--FAIL" [email protected]
fi
sunucu komut dosyası: - Bu komut repack_restart_script.sh gelen başlatıyordur -> yani/home/repackpr/sunucu durdurma
/tmp/repack_log16234.log
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
/home/repackpr/scripts/Repack_20160322.log: No such file or directory
/home/repackpr/scripts/Repack_feed_mgt_20160322.log: No such file or directory
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
Repack is down
rmiregistry is down
/home/repackpr/server: line 54: [: =: unary operator expected
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
/home/repackpr/server: line 54: [: =: unary operator expected
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
Repack is not running. Creating rpdb.log.20160323-0133 backup...
Starting Repack... This should start rmiregistry as well.
/home/repackpr/server: line 28: /startup.sh: No such file or directory
Starting Nagios agent
Nagios agent has been started
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
Repack is down
rmiregistry is down
/home/repackpr/server: line 54: [: =: unary operator expected
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
pgrep: invalid user name -- java
pgrep: invalid user name -- rmiregistry
pgrep: invalid user name -- nrpe
/home/repackpr/server: line 54: [: =: unary operator expected
Bu makul görünüyor (ish). "Çalışmıyor" derken, ">/tmp/repack_log ..." bile yaratılmıyor mu demek istiyorsun? Lütfen daha spesifik ol. 33 01 * * */home/... 'ile denediniz mi? İyi şanslar. – shellter
Bu soru, muhtemelen Süper Kullanıcı veya Sunucu Hatası –
için en uygunudur. Komut dosyası için yürütme izniniz var mı ve bir "shebang karakteri eklediğinizden emin olun" #! –