iT邦幫忙

0

刪除三個月前產生的log檔之script?

Centos 7的/var/log/中,會產生很多log檔。
我想每三個月自動刪除超過三個月前產生的log。
請問這個script的內容是什麼?

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0

一般建議你最好不要幹這件蠢事會比較好。

如果真的要幹的話。
從檔案列表來判斷。
大多數的log檔命名規範都是
「系統名」.「功能名(如有)」.log-日期

你可以先將列表名輸出到文件上,再去分析文件來達到刪除的處理。

但沒日期的干萬不要刪除。也千萬不要用建檔時間判斷。
做測試前,最好先備份一份。

不過還是強烈建議不要幹這事。
大多數的系統、套裝,log本身都會有日期或是容量的限制。
找找設定檔改一下就好。

ps:過來人的慘痛經驗真心提醒你。

ckp6250 iT邦好手 1 級 ‧ 2020-06-01 17:28:00 檢舉

我之前曾亂刪 log 檔,最後開不了機,只好重灌系統。
我後來的經驗是,『自己的屁股自己擦;別人的屁股不要擦』

我只有openvpn要撈每月登入記錄,才用script搬走重新產生,也不敢亂刪系統LOG

1
一級屠豬士
iT邦大師 1 級 ‧ 2020-06-01 15:27:50

CentOS 有 logrotate , 你可以安裝啟用, 可以先看鳥哥的說明

http://linux.vbird.org/linux_basic/0570syslog.php#rotate

然後網路上也有很多參考資料.先做這個,會壓縮,log是文字型態,壓縮效率很好的.
後續再學備份到異地.

echochio iT邦高手 1 級 ‧ 2020-06-02 09:59:23 檢舉

logrotate + 1

我要發表回答

立即登入回答