Debian系統中Tomcat更新步驟
備份現有Tomcat:為防止升級過程中數據丟失,需備份Tomcat的配置文件、應用程序及數據目錄。常用命令如下:
sudo cp -r /opt/tomcat /opt/tomcat_backup # 備份整個Tomcat目錄
若通過APT安裝,也可備份配置文件(如/etc/tomcat9/)和webapps目錄。
下載新版本Tomcat:訪問Apache Tomcat官方網站(https://tomcat.apache.org/download-90.cgi),選擇所需版本(如9.0.76)的壓縮包(.tar.gz格式),使用wget下載至服務器:
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.76/bin/apache-tomcat-9.0.76.tar.gz
通過systemd停止正在運行的Tomcat服務,避免文件沖突:
sudo systemctl stop tomcat # 若通過APT安裝,服務名可能為tomcat9
刪除舊版本目錄以釋放空間(若保留舊版本,可將其移至備份目錄,如/opt/tomcat_old):
sudo rm -rf /opt/tomcat/apache-tomcat-* # 刪除舊版本目錄
# 或歸檔至備份目錄
sudo mv /opt/tomcat/apache-tomcat-* /opt/tomcat_backup/
將下載的新版本壓縮包解壓至目標目錄(如/opt/tomcat),并使用--strip-components 1去除壓縮包內的頂層目錄:
sudo tar -xzf apache-tomcat-9.0.76.tar.gz -C /opt/tomcat --strip-components 1
說明:--strip-components 1會將壓縮包內的apache-tomcat-9.0.76目錄內容直接解壓至/opt/tomcat,避免多層目錄嵌套。
將Tomcat目錄的所有權更改為tomcat用戶(Debian系統默認的Tomcat運行用戶),確保服務運行時的權限正確:
sudo chown -R tomcat:tomcat /opt/tomcat
若環境變量(如CATALINA_HOME)未全局配置,需編輯/etc/profile或/etc/environment文件,添加以下內容:
export CATALINA_HOME=/opt/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
保存后執行source /etc/profile使更改生效。
編輯/etc/systemd/system/tomcat.service文件,確保指向新版本的安裝目錄,并配置正確的環境變量:
sudo nano /etc/systemd/system/tomcat.service
文件內容示例:
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/default-java # 根據實際JDK路徑調整
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
保存后執行以下命令重新加載systemd配置:
sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat
sudo systemctl status tomcat # 查看服務是否運行正常
http://your_server_ip:8080,若顯示Tomcat歡迎頁面(包含版本號),則說明更新成功。若確認新版本運行正常,可刪除備份的舊版本目錄以釋放磁盤空間:
sudo rm -rf /opt/tomcat_backup
java -version檢查JDK版本。server.xml、web.xml等配置文件有自定義修改,需對比新版本的默認配置文件,合并必要更改(如端口、虛擬主機配置)。