Linux中添加service启动

2018-12-05  本文已影响0人  明月___

主要是以CentOS为例。
在Ubuntu中是没有chkconfig命令的,可以用update-rc.d 来代替。

Nginx 添加启动服务

  1. 进入/etc/init.d/目录 cd /etc/init.d
  2. 新建nginx文件,并编辑。vi nginx
  3. 粘贴以下内容:
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
#              It has a lot of features, but it's not for everyone.
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx        #nginx实际安装的路径
nginx_config=/usr/local/nginx/conf/nginx.conf   #nginx配置文件——nginx.conf的路径
nginx_pid=/var/run/nginx.pid

RETVAL=0
prog="nginx"

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -x $nginxd ] || exit 0

# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ];then
   echo "nginx already running...."
   exit 1
fi
   echo -n $"Starting $prog: "
   daemon $nginxd -c ${nginx_config}
   RETVAL=$?
   echo
   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
   return $RETVAL
}        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}

# reload nginx service functions.
reload() {
    echo -n $"Reloading $prog: "
    #kill -HUP `cat ${nginx_pid}`
    killproc $nginxd -HUP
    RETVAL=$?
    echo
}

# See how we were called.
case "$1" in
start)
        start
        ;;
stop)
        stop
        ;;
reload)
        reload
        ;;
restart)
        stop
        start
        ;;
status)
        status $prog
        RETVAL=$?
        ;;
*)
        echo $"Usage: $prog {start|stop|restart|reload|status|help}"
        exit 1
esac
exit $RETVAL
  1. 执行
chkconfig --add /etc/init.d/nginx
chmod 755 /etc/init.d/nginx
chkconfig --add nginx
  1. 如果想随系统启动就执行
    /sbin/chkconfig --level 345 nginx on

  2. nginx启动、停止、无间断服务重启,可选 start | stop | restart | reload | status | help

service nginx start
service nginx stop
service nginx reload

参考链接“https://www.cnblogs.com/shihaiming/p/6290219.htm

Tomcat添加service启动

  1. 进入/etc/init.d/目录 cd /etc/init.d
  2. 新建nginx文件,并编辑。vi tomcat
  3. 粘贴以下内容:
#!/bin/bash
# description: Tomcat8 Start Stop Restart
# processname: tomcat8
# chkconfig: 234 20 80
#jdk menu
JAVA_HOME=/usr/local/java/jdk1.8.0_191
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
#tomcat menu
CATALINA_HOME=/usr/local/tomcat/
case $1 in

start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}' | wc | awk '{print $2}' > /tmp/tomcat_process_count.txt
read line < /tmp/tomcat_process_count.txt
if [ $line -gt 0 ]; then
    sh $CATALINA_HOME/bin/shutdown.sh
    sh $CATALINA_HOME/bin/startup.sh
else
    sh $CATALINA_HOME/bin/startup.sh
fi
;;
status)
#
# Restart Tomcat
#
ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}' | wc | awk '{print $2}' > /tmp/tomcat_process_count.txt
read line < /tmp/tomcat_process_count.txt
if [ $line -gt 0 ]; then
  echo -n "tomcat ( pid "
  ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}'
  echo ") is running                             "
else
  echo "tomcat is stopped"
fi
;;
esac
exit 0
  1. 将上面这个文件设置成可执行文件
    chmod a+x tomcat

  2. 系统服务(开机自启)

  1. 查看是否添加Tomcat系统服务
    chkconfig --list tomcat
# Stop nginx daemons functions.
stop() {
        echo -n $"Stopping $prog: "
        killproc $nginxd
        RETVAL=$?
  1. 测试
    service tomcat start(stop/restart/status)
上一篇下一篇

猜你喜欢

热点阅读