使用 Logrotate(推薦)
Logrotate?是 Linux 系統自帶的日志管理工具,支持自動切割、壓縮和刪除舊日志。
步驟:
創建 Logrotate 配置文件
在?/etc/logrotate.d/
?下新建配置文件(如?java-app
):sudo nano /etc/logrotate.d/java-app
添加配置內容(示例):
注意:需要刪除#號及后面備注
/path/to/your/nohup.out { # 替換為你的 nohup.out 實際路徑daily # 按天切割missingok # 文件不存在時不報錯rotate 30 # 保留30天的日志compress # 壓縮舊日志delaycompress # 下次切割時再壓縮notifempty # 空文件不切割copytruncate # 復制內容后清空原文件(避免重啟應用)dateext # 使用日期作為后綴dateformat -%Y%m%d # 日期格式(如 nohup.out-20231001) }
測試配置是否生效:
# 模擬測試 sudo logrotate -d /etc/logrotate.d/java-app # 立即執行切割 sudo logrotate -f /etc/logrotate.d/java-app
驗證結果:
日志將被切割為?nohup.out-20231001.gz
?等格式,并保留在原目錄。