Linux下把进程注册成服务,用service 调用

有的服务,需要加入到service中,可以注册成Linux系统下的服务,来实现开机启动的过程。

我启动agent的脚本:

#!/bin/bash

cd /home/monitor/agentJava

nohup java -jar agentJava.jar >/dev/null &

还有调用这个脚本的:/etc/init.d/下

在脚本中加入start |stop|status|restart功能模块

#!/bin/bash

# chkconfig: - 85 15

#description: agent is the itsm base thing

export AGENT_HOME=/home/monitor/agentJava

export AGENT_LOG=/home/monitor/agentJava/start.log

export AGENT_OWNER="monitor"

case "$1" in

start)

echo -n "starting agent"

su - $AGENT_OWNER -c "$AGENT_HOME/startup.sh >$AGENT_LOG & "

echo " OK "

;;

stop)

echo -n "shutdown agent:"

pid=`ps -ef|grep agentJava.jar |grep -v grep |awk '{print $2}'`

kill -9 $pid

echo "OK"

;;

restart)

$0 stop

$0 start

;;

*)

echo "Usage: `basename $0` start|stop|restart"

exit 1

esac

exit 0

然后把这个agent注册成服务,加入到开机启动

chkconfig --add agent

chkconfig --level  23456 agent  on

这样agent就能注册成为开机启动了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/18926.html