/dev/null then ech。linux启动脚本怎么写( 三 )。" />

linux启动脚本怎么写( 三 )


5.linux判断某服务是否启动脚本怎么写用ps命令结合grep命令查找该服务名是否存在即可达到效果:
svc="sendmail"
if ps -ef | grep $svc | egrep -v grep >/dev/null
then
echo "$svc is started!"
else
echo "$svc not found!"
fi说明:
ps -ef : 显示当前所有在运行的进程
|:管道 , 即其前面命令的的输出 , 作为后面命令的输入
grep service_name : 在输出信息中 , 查找service_name数据行
egrep -v grep: 不显示grep查找命令本身
6.linux开机启动脚本需要自己写一个脚本脚本内容是一个死循环 , 里面包含查询进程的命令ps , 让后grep出你的进程如果发现你的进程就认为启动成功 , 没发现就一直等待 。
脚本例子 , 监控mysqls_port=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`if [ "$s_port" == "3306" ]; then echo " mysql is running [`date '+%F %T'`]" echo $s_logfieelse echo " mysql is down try start [`date '+%F %T'`]" > $s_logfie_err $s_mysqldir/share/mysql/mysql.server restart --user=root sleep 10 s_port=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'` if [ "$s_port" == "3306" ];then echo " mysql start ok [`date '+%F %T'`]" else echo " mysql start fail [`date '+%F %T'`]" fifi把这个脚本用crontab间隔一定时间调用一次 , 比如5分钟 , 就ok了 。
7.linux开机启动脚本需要自己写一个脚本
脚本内容是
一个死循环 , 里面包含查询进程的命令ps , 让后grep出你的进程
如果发现你的进程就认为启动成功 , 没发现就一直等待 。
脚本例子 , 监控mysql
s_port=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`
if [ "$s_port" == "3306" ]; then
echo " mysql is running [`date '+%F %T'`]"
echo $s_logfie
else
echo " mysql is down try start [`date '+%F %T'`]" > $s_logfie_err
$s_mysqldir/share/mysql/mysql.server restart --user=root
sleep 10
s_port=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`
if [ "$s_port" == "3306" ];then
echo " mysql start ok [`date '+%F %T'`]"
else
echo " mysql start fail [`date '+%F %T'`]"
fi
fi
把这个脚本用crontab间隔一定时间调用一次 , 比如5分钟 , 就ok了
【linux启动脚本怎么写】

linux启动脚本怎么写

文章插图