Linux

將停止 tomcat、歸檔日誌文件並重新啟動伺服器的 Linux 腳本

  • March 11, 2011

我只是在這裡偷懶,但是是否有人已經編寫了用於停止 tomcat 服務、歸檔它的日誌文件(zip 會很好)並重新啟動伺服器的 bash 腳本?(使用 logrotate 或任何其他工具)

我想使用以下腳本創建 cron 作業:

#!/bin/bash
service tomcat stop
# now I don't know what to do with logrotate or something else
init 6

請幫忙。

您可以為 logrotate 創建一個配置文件來處理日誌輪換。您可以將它放在 logrotate.d 之外,然後在手動呼叫 logrotate 時使用它。

樣本:

/path/to/logs/*.log {
       missingok
       rotate 30
       compress
       delaycompress
       notifempty
       create 640 tomcat tomcat
       sharedscripts
}

然後製作你的腳本

#!/bin/bash
service tomcat stop
logrotate -f /path/to/your/newly/created/conf/for/logrotate.conf
init 6

與其希望有人編寫一個能完成所有工作的超級腳本,不如先編寫一個腳本,在執行時歸檔日誌文件。如果速度很快,請在重啟期間停止 tomcat 或停止執行級別後將其添加到 K* 腳本中。如果它很慢,如果它們的停止腳本花費“太長時間”,一些發行版會在幾秒鐘後殺死所有東西。在啟動 tomcat 之前將其添加到啟動中。

然後,只要shutdown -r now它會得到照顧。

引用自:https://serverfault.com/questions/245923