首页 > 编程知识 正文

Linux循环重启脚本,linux读进程杀进程重启脚本

时间:2023-05-05 03:57:23 阅读:135207 作者:517

脚本名称

dnsnamed

脚本功能:

负责DNS服务器Named进程的启动、停止、状态信息收集等。

参数:开始

执行环境

OS:Linux

壳: bash壳

开发背景

某些以源代码格式安装的程序在编译并安装后,无法加入系统的自动启动列表,因为运行过程不附带启动参数,例如start|stop|status,无法同时进行编辑在这种情况下,必须编写脚本,并使脚本具有诸如开始等参数

启动脚本的内容

#! /kqdsn/bash

# chkconfig: 2345 20 80

#说明: startdnsnamedprocess。

RETVAL=0

prog=named

lockfile='/var/run/named.pid '

msg stoped=' namedprocesshasbeenstopped!'

msg started=' namedhasbeenstarted!'

开始()。

# determineifthenamedprocessisrunning,ifrunningexit.orstartednamedprocess

#检查状态文件是否存在,如果文件存在,则会启动进程,并显示一条消息,指示进程已开始。 如果不存在,则启动进程

[-f ' $ lockfile ' ] echo ' onenamedhasbeenstarted ' exit 0

# startnamedprocessinthebackground

/usr/local/skqdsn/named-G1/var/DNS.log 21

RETVAL=$?

[ ' $ retval '==0] echo ' $ msg started ' touch/var/run/named.PID exit 0

}

stop ()。

#如果状态文件存在,则运行杀死进程的命令。 如果不存在,则表示进程未在运行。

if [ -f '$lockfile' ]

then

{

#系统进程检查指定程序名称的进程ID,并将其放入列表变量PID中。 如果同名的进程有多个PID,则只放入第一行的PID

PID=` PS-ef|grep-v ' grep '|awk ' {打印$2} `

for id in $PID

do

rm -rf /var/run/named.pid

kill -9 $id

echo ' named process $ idhasbeenended!'

exit 0

}

else

echo 'Named Process is not running!'

exit 1

fi

exit 0

}

状态() )。

#查询状态文件named.pid是否存在,如果存在,则进程是否正在运行; 如果文件不存在,则进程不运行

if [ -f '$lockfile' ]

then

echo 'Named process is running!'

else

echo 'Named Process is not running!'

fi

exit 0

}

case '$1' in

start )

开始

stop )

停止

斯塔茨)

状态

* )

echo $ ' usage : $0{开始} '

RETVAL=1

欧洲航空

可以从命令行执行

注意:

dnsNamed stop只能停止一个处于运行状态的Named进程。 不能停止具有相同named进程名称的多个运行状态不同的PID进程。

将名称脚本添加到/etc/init.d目录中

[ root @ Linux a s42 skqdsn ] # cpdnsnamed/etc/init.d /

添加到系统的自启动服务列表

[ root @ Linux a s42 skqdsn ] # chkconfig-- adddnsnamed

[root@linuxas42 skqdsn]#

查看列表[ root @ dnscache1DNS cap ] # chkconfig-- list|grepdnsnamed

DNS named 0: off 1: off 2: on : on 4: on 5: on 6: on : off

[root@linuxas42 skqdsn]#

验证启动目录脚本

#chkconfig: 2345 20 80

245是init等级20,进程启动等级80是进程停止等级

在/etc/rc2.d/、/etc/rc3.d/、/etc/rc4.d/、/etc/rc5.d/四个目录下

S20dnsnamed启动脚本指向./init.d/dnsnamed脚本

/etc/rc0.d目录中有关闭Named脚本

k80DNSnamed--./init.d/DNSnamed脚本

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。