diff --git a/ncac/package/check61850.sh b/ncac/package/check61850.sh new file mode 100644 index 0000000..d80fcbd --- /dev/null +++ b/ncac/package/check61850.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +pid=`ps -ef | grep 61850Gui_Release_zhenan | grep -v 'grep' | awk '{print $2}'` +rid=`ps -ef | grep sreadd | grep -v "grep" | awk '{print $2}'` + +err=0 + +if [ ! $pid ]; then + echo "61850Gui_Release_zhenan is down" + err=1 +else + echo "61850Gui_Release_zhenan is running" +fi + +if [ ! $rid ]; then + echo "sreadd is down" + err=1 +else + echo "sreadd is running" +fi + +if [ $err == 0 ]; then + touch /home/xydl/61850_GUI/RUNNING.lock +else + echo `date +%F_%T`" restart61850" >> /home/xydl/61850_GUI/restart.log + /home/xydl/bin/restart61850.sh +fi diff --git a/ncac/package/stop61850.sh b/ncac/package/stop61850.sh new file mode 100644 index 0000000..720990f --- /dev/null +++ b/ncac/package/stop61850.sh @@ -0,0 +1,20 @@ +#!/bin/bash +rm -f /home/xydl/61850_GUI/RUNNING.lock +app='61850Gui_Release_zhenan' +pid=`ps -ef | grep $app | grep -v 'grep' | awk '{print $2}'` +rid=`ps -ef | grep sreadd | grep -v "grep" | awk '{print $2}'` +if [ -n "rid" ]; then + for id in $rid + do + kill -9 $id + sleep 1 + done +fi +if [ -n "$pid" ]; then + echo "Stopping 61850..." + for id in $pid + do + kill -9 $id + sleep 2 + done +fi diff --git a/ncac/setup.sh b/ncac/setup.sh index 1b25c0b..9839cc8 100644 --- a/ncac/setup.sh +++ b/ncac/setup.sh @@ -195,6 +195,8 @@ install61850(){ GUI_DIR=${BASE_DIR}/61850_GUI rm -rf ${GUI_DIR} tar -zxf package/61850_GUI.tar.gz -C ${BASE_DIR} + cp package/stop61850.sh ${BIN_DIR}/ + cp package/check61850.sh ${BIN_DIR}/ echo ${GUI_DIR}" installed." echo "" sleep 1 @@ -211,8 +213,8 @@ install61850(){ sed -i 's/dbname=cacdb/dbname='${DB_INS}'/' ${GUI_DIR}/syscfg.ini sed -i 's/usrname=root/usrname='${DB_USER}'/' ${GUI_DIR}/syscfg.ini sed -i 's/psw=123456/psw='${DB_PASS}'/' ${GUI_DIR}/syscfg.ini - sed -i 's#/home/xydl#'${BASE_DIR}'#g' ${GUI_DIR}/check61850.sh - sed -i 's#/home/xydl#'${BASE_DIR}'#g' ${GUI_DIR}/stop61850.sh + sed -i 's#/home/xydl#'${BASE_DIR}'#g' ${BIN_DIR}/check61850.sh + sed -i 's#/home/xydl#'${BASE_DIR}'#g' ${BIN_DIR}/stop61850.sh APP_NAME=61850Gui_Release_zhenan echo '#!/bin/bash' > ${BIN_DIR}/start61850.sh @@ -230,9 +232,6 @@ install61850(){ echo " rm -f ${GUI_DIR}/RUNNING.lock" >> ${BIN_DIR}/start61850.sh echo 'fi' >> ${BIN_DIR}/start61850.sh - mv ${GUI_DIR}/stop61850.sh ${BIN_DIR}/ - mv ${GUI_DIR}/check61850.sh ${BIN_DIR}/ - echo '#!/bin/bash' > ${BIN_DIR}/restart61850.sh echo 'cd '${BIN_DIR} >> ${BIN_DIR}/restart61850.sh echo "./stop61850.sh" >> ${BIN_DIR}/restart61850.sh