centos7自启动服务的配置文件

[Unit]
Description=cdb
After=network.target
[Service]
Type=forking
ExecStart=/opt/cdb/cdb-admin start
ExecStop=/opt/cdb/cdb-admin stop
ExecReload=/opt/cdb/cdb-admin restart
User=cdb
Group=cdb

[Install]
WantedBy=multi-user


对于以上配置文件的参数还需要深究.待续


#!/bin/bash
# chkconfig: 2345 90 10
# description: message-center-service service control script

##################Need change##################

SERVICE_NAME=cdb-admin
JAR_PATH="/opt/cdb/"
JAR_FILENAME=`ls -lt $JAR_PATH | grep "cdb-admin*.*jar" | head -n 1 | awk -F ' ' '{print $9}'`
JAR_LOGFILE="/var/log/$SERVICE_NAME.log"
###############################################

echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
echo ">>>>>> JAR_PATH            :${JAR_PATH} "
echo ">>>>>> JAR_FILENAME        :${JAR_FILENAME} "
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"

function getServiceStatus {
  JAR_STATUS=$(ps aux|grep $JAR_FILENAME |grep -v grep)
  JAR_PID=$(ps -ef |grep $JAR_FILENAME |grep -v grep |awk '{print $2}')
}

function startServiceProcess {
#  cmd2="cd /opt/cdb"
#  cmd="nohup /usr/java/jre1.8.0_144/bin/java -jar /opt/cdb/cdb-admin.jar > /dev/null &"
#  su - cdb  -c  "${cmd2};${cmd}" || return 1
  cd /opt/cdb
  `nohup /usr/java/jre1.8.0_144/bin/java -jar /opt/cdb/cdb-admin.jar > /dev/null &` || return 1
  getServiceStatus
  if [ "$JAR_STATUS" == "" ]; then
    echo -ne "\n$SERVICE_NAME started failed, see logfile $JAR_LOGFILE ."
    return 1
  fi
  return 0;
}

function stopServiceProcess {
  getServiceStatus
  kill -9 $JAR_PID
  sleep 10 ; getServiceStatus
  if [ "$JAR_STATUS" == "" ]; then
    RETVAL=0; return 0;
  fi
  return 1;
}

function startService {
  getServiceStatus
  if [ "$JAR_STATUS" != "" ]; then
    echo -ne "$SERVICE_NAME is already running\n";
    RETVAL=0; return 0;
  else
    startServiceProcess
    echo -n "Starting $SERVICE_NAME ( PID: $JAR_PID )  "
    if [ $? -ne 0 ]; then RETVAL=1; echo "Failed"; return 1; fi
    echo " [ OK ]"
    RETVAL=0
    return 0;
  fi
  return 0;
}

function stopService {
  getServiceStatus
  if [ "$JAR_STATUS" == "" ]; then
    echo -n "$SERVICE_NAME is not running";
    RETVAL=0; echo ""; return 0;
  else
   echo -n "Stopping $SERVICE_NAME   "
   stopServiceProcess
   if [ $? -ne 0 ]; then RETVAL=1; echo "Failed"; return 1; fi
   echo " [ OK ]"
   RETVAL=0
   return 0;
  fi
  return 0;
}

function checkServiceStatus {
  getServiceStatus
  if [ "$JAR_STATUS" != "" ]; then
    echo "$SERVICE_NAME ( PID: $JAR_PID ) is running"
    RETVAL=0
  else
    echo "$SERVICE_NAME is stopped"
    RETVAL=3
  fi
  return 0;
}

function main {
  RETVAL=0
  case "$1" in
    start)                                               # starts the Java program as a Linux service
       startService
       ;;
    stop)                                                # stops the Java program service
       stopService
       ;;
    restart)                                             # stops and restarts the service
       stopService && startService
       ;;
    status)                                              # displays the service status
       checkServiceStatus
       ;;
    *)
       echo "Usage: $0 {start|stop|restart|status}"
       exit 1
       ;;
    esac
  exit $RETVAL
}

main $1












本文转自chenzudao51CTO博客,原文链接: http://blog.51cto.com/victor2016/1982207,如需转载请自行联系原作者


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值