- 论坛徽章:
- 0
|
写了支脚本起程序并确认程序是否异常予以重启, 并且把错误讯息写到一个log文件, 是一个非常简易用来检查程序异常时会自动重新启动的脚本, 平时跑的好好的, 但偶尔log会有下面的讯息:
/home/kove/sartcheckdb.sh[109]: ps: cannot execute
/home/kove/sartcheckdb.sh [109]: grep: cannot execute
/home/kove/sartcheckdb.sh [109]: grep: cannot execute
/home/kove/sartcheckdb.sh [109]: awk: cannot execute
…
/home/kove/sartcheckdb.sh [109]: sleep: cannot execute
该脚本内容大致如下:
#! /bin/ksh
… (略)
…(略)
SELFPID=`echo $$`
while true
do
pgcount=0;
for parentpid in $(ps -ef | grep "/home/kove/checkdb 30" | grep -v grep| awk '{print $3}')
do
if ([ "$parentpid" = "$SELFPID " ]);
then
pgcount =`expr ${pgcount } + 1`
fi
done
.... (略, 若pgcount支数不对就重启checkdb程序)
sleep 10
done
exit 0
因为曾开k shell下debug模式跑一阵子
都不会有问题
所以确认脚本语法没有问题
实在是找不出什么是什么问题导致的, 开topas看, 有时脚本会有50% cpu异常使用率:
这么简易的脚本怎么会cpu用到50%这么离谱的现象? 是资源设定上有异常吗? |
|