systemctl管理Tomcat啟動、停止、重啟、開機啟動


systemctl管理Tomcat啟動、停止、重啟、開機啟動

1. 創建服務

用service來管理服務的時候,是在/etc/init.d/目錄中創建一個腳本文件,來管理服務的啟動和停止,在systemctl中,也類似,文件目錄有所不同,在/lib/systemd/system目錄下創建一個腳本文件tomcat.service,里面的內容如下:(注意tomcat的路徑改成你自己的

[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/tomcat/pid
ExecStart=/usr/local/tomcat/bin/catalina.sh start
ExecReload=/usr/local/tomcat/bin/catalina.sh restart
ExecStop=/usr/local/tomcat/bin/catalina.sh stop

[Install]
WantedBy=multi-user.target
  • [Unit] 表示這是基礎信息
    • Description 是描述
    • After 是在那個服務后面啟動,一般是網絡服務啟動后啟動
  • [Service] 表示這里是服務信息
    • Type 是服務類型
    • PIDFile 是服務的pid文件路徑, 開啟后,必須在tomcat的bin/catalina.sh中加入CATALINA_PID參數
    • ExecStart 是啟動服務的命令
    • ExecReload 是重啟服務的命令
    • ExecStop 是停止服務的指令
  • [Install] 表示這是是安裝相關信息
    • WantedBy 是以哪種方式啟動:multi-user.target表明當系統以多用戶方式(默認的運行級別)啟動時,這個服務需要被自動運行。

 

tomcat的bin/catalina.sh中加入CATALINA_PID參數時,需要在# OS specific support.上加入

CATALINA_PID=/usr/local/tomcat/pid

# OS specific support.  $var _must_ be set to either true or false.

cygwin=false
....略..

2. 創建軟鏈接

創建軟鏈接是為了下一步系統初始化時自動啟動服務

ln -s /lib/systemd/system/tomcat.service /etc/systemd/system/multi-user.target.wants/tomcat.service

創建軟鏈接就好比Windows下的快捷方式
ln -s 是創建軟鏈接
ln -s 原文件 目標文件(快捷方式的決定地址)

如果創建軟連接的時候出現異常,不要擔心,看看/etc/systemd/system/multi-user.target.wants/ 目錄是否正常創建軟鏈接為准,有時候報錯只是提示一下,其實成功了。

$ ll /etc/systemd/system/multi-user.target.wants/
total 8
drwxr-xr-x  2 root root 4096 Mar 30 15:46 ./
drwxr-xr-x 13 root root 4096 Mar 13 14:18 ../
lrwxrwxrwx  1 root root   31 Nov 23 14:43 tomcat.service -> /lib/systemd/system/tomcat.service
...略...

3. 刷新配置

剛剛配置的服務需要讓systemctl能識別,就必須刷新配置

$ systemctl daemon-reload

如果沒有權限可以使用sudo

$ sudo systemctl daemon-reload

4. 啟動、重啟、停止

啟動tomcat

$ systemctl start tomcat

重啟tomcat

$ systemctl restart tomcat

停止tomcat

$ systemctl stop tomcat

5. 開機自啟動

tomcat服務加入開機啟動

$ systemctl enable tomcat

禁止開機啟動

$ systemctl disable tomcat

6. 查看狀態

查看狀態

$ systemctl status tomcat
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM