在嵌入式Linux系统中交叉编译一个socket服务器、socket服务存在意外进程结束的现象,下面通过shell脚本完成对socket服务程序的监控。
一、PS命令查看Linux程序进程
二、shell脚本
利用PS命令查看server进程的状态,如死亡、就重新启动。做一个死循环轮训。
-
######################################################################### -
# File Name: restart.sh -
# Author: fluency -
# mail: [email protected] -
# Created Time: Mon 13 Nov 2017 03:22:06 PM CST -
######################################################################### -
#!/bin/bash -
while true -
do -
procnum=` ps |grep "server"|grep -v grep|wc -l` -
if [ $procnum -eq 0 ]; then -
/home/server/server& -
fi -
sleep 30 -
done
30秒去轮询这个这个进程。死亡就继续重启。
三、效果
PS查看进程号,此时procnum = 3 然后用kill 命令杀死进程之后
然后脚本检测到后,进而重启。这时server的进程号已经变化。这样server服务器的进程就完成的死亡重启的监控。