CentOS7下利用init.d啓動腳本實現tomcat開機自啓動

1.在/etc/init.d/目錄下建立tomcat服務腳本文件 內容以下java

#!/bin/bash
#
# tomcat startup script for the Tomcat server
#
#
# chkconfig: 345 80 20
# description: start the tomcat deamon
#
# Source function library
. /etc/rc.d/init.d/functions

prog=tomcat
 JAVA_HOME=/usr/java/jdk1.8.0_91/  # 根據本身的路徑改寫JAVA_HOME
export JAVA_HOME
CATALANA_HOME=/home/work/tomcat/   # 根據本身的路徑改寫CATALANA_HOME
export CATALINA_HOME

case "$1" in
start)
    echo "Starting Tomcat..."
    $CATALANA_HOME/bin/startup.sh
    ;;

stop)
    echo "Stopping Tomcat..."
    $CATALANA_HOME/bin/shutdown.sh
    ;;

restart)
    echo "Stopping Tomcat..."
    $CATALANA_HOME/bin/shutdown.sh
    sleep 2
    echo
    echo "Starting Tomcat..."
    $CATALANA_HOME/bin/startup.sh
    ;;

*)
    echo "Usage: $prog {start|stop|restart}"
    ;;
esac
exit 0

2.賦權tomcat

[root@localhost /]# cd /etc/init.d/
[root@localhost init.d]# chmod 755 tomcat    #賦予權限
[root@localhost init.d]# service tomcat start  #啓動服務
Starting tomcat (via systemctl):                          [  肯定  ]
[root@localhost init.d]# service tomcat stop   #中止服務
Stopping tomcat (via systemctl):                          [  肯定  ]
[root@localhost init.d]# service tomcat restart  #重啓服務
Restarting tomcat (via systemctl):                        [  肯定  ]

3.加入系統自啓bash

[root@localhost zm]# chkconfig tomcat on  #服務腳本加入到系統啓動隊列
[root@localhost zm]# chkconfig --list  tomcat  #檢查tomcat服務是否已經生效
注意:該輸出結果只顯示 SysV 服務,並不包含原生 systemd 服務。SysV 配置數據可能被原生 systemd 配置覆蓋。
      若是您想列出 systemd 服務,請執行 'systemctl list-unit-files'。
      欲查看對特定 target 啓用的服務請執行
      'systemctl list-dependencies [target]'
tomcat8         0:關    1:關    2:開    3:開    4:開    5:開    6:關

4.reboot,驗證spa

通常狀況下,啓動是沒有問題的。rest

這裏多說點兒,由於CentOS7的自啓動服務開始由systemctl逐漸替代了早期版本中的chkconfig和service形式。 
這裏我嘗試了一下用指令:systemctl start tomcat8啓動服務,系統提示systemctl daemon-reload命令加載服務,執行後,發現能夠經過systemctl命令進行簡單的控制,如查詢狀態,啓動服務,終止服務,重啓服務等操做。可是關於開機啓動的設置是不能夠的,還須要經過老命令chkconfig實現。code

4.server

相關文章
相關標籤/搜索