Linux
刪除虛擬主機上的日誌文件
我的機器上設置了一些虛擬主機,由於磁碟空間太滿,伺服器不斷崩潰。我已經檢查過了,似乎我的虛擬主機日誌文件夾之一是 2Gb。其中有數百個日誌文件,無論是否壓縮。
我的問題是,有沒有一種簡單的方法可以在不刪除目前正在使用的日誌的情況下刪除所有這些內容?此外,在此過程中,有沒有辦法告訴伺服器始終保留 5 個日誌文件並刪除其他日誌文件?
伺服器是 Debian。
感謝您的幫助
看看 logrotate ,你在網際網路上有很多可用的教程,在Google上快速搜尋,我找到了這個教程。
每天使用 cron.daily 執行 Logrotate,腳本讀取 /etc/logrotate.conf ,該文件包含所有預設配置。Logrotate 讀取目錄 /etc/logrotate.d 中的其他文件。
因此,您可以每天執行日誌輪換並僅保留 5 天,要設置此配置,您必須在文件 /etc/logrotate.conf 中定義:
# see "man logrotate" for details # rotate log files weekly daily # keep 5 days worth of backlogs rotate 5
您可以添加選項compress來壓縮旋轉文件。查看 /etc/logrotate.d 下的文件以確保您的配置沒有被覆蓋。
你可以用 logrotate 做很多事情花一些時間閱讀文件。