ubuntu的init.d管理service

来源:互联网 发布:新加坡航空 知乎 编辑:程序博客网 时间:2024/06/03 05:27

1、在/etc/init.d/ 下以管理员权限新建kubestack启动文件脚本

#!/bin/bash  ### BEGIN INIT INFO  #  # Provides:  kubestack  # Required-Start:   $openvswitch-switch $neutron-openvswitch-agent# Required-Stop:    # Default-Start:    2 3 4 5  # Default-Stop:     0 1 6  # Short-Description:    start kubestack service# Description:  This file should be used to construct scripts to be placed in /etc/init.d.  #  ### END INIT INFO    ## Fill in name of program here.  PROG="kubestack"  PROG_PATH="/usr/local/bin" ## Not need, but sometimes helpful (if $PROG resides in /opt for example).  PROG_ARGS="-log_dir=/var/log/kubestack -logtostderr=true -v=4 -port=:4237"   PID_PATH="/var/run/"    start() {      if [ -e "$PID_PATH/$PROG.pid" ]; then          ## Program is running, exit with error.          echo "Error! $PROG is currently running!" 1>&2          exit 1      else          ## Change from /dev/null to something like /var/log/$PROG if you want to save output.          $PROG_PATH/$PROG $PROG_ARGS 2>&1 >/var/log/$PROG &          pid=`ps -A |grep "kubelet"| awk '{print $1}'`        echo "$PROG started"          echo $pid > "$PID_PATH/$PROG.pid"      fi  }    stop() {      echo "begin stop"      if [ -e "$PID_PATH/$PROG.pid" ]; then          ## Program is running, so stop it      pid=`ps -A |grep "kubelet"| awk '{print $1}'`    kill $pid                  rm -f  "$PID_PATH/$PROG.pid"          echo "$PROG stopped"      else          ## Program is not running, exit with error.          echo "Error! $PROG not started!" 1>&2          exit 1      fi  }    ## Check to see if we are running as root first.  ## Found at http://www.cyberciti.biz/tips/shell-root-user-check-script.html  if [ "$(id -u)" != "0" ]; then      echo "This script must be run as root" 1>&2      exit 1  fi    case "$1" in      start)          start          exit 0      ;;      stop)          stop          exit 0      ;;      reload|restart|force-reload)          stop          start          exit 0      ;;      **)          echo "Usage: $0 {start|stop|reload}" 1>&2          exit 1      ;;  esac  


2、添加删除服务

添加: sudo update-rc.d 服务名 defaults

删除:sudo update-rc.d -f 服务名 remove


update-rc.d kubestack defaults


3、结果:


1 0
原创粉丝点击