2012-03-26 94 views
0

我使用Ubuntu的我想清理我的系統日誌文件,這些文件存儲在/ var /日誌,每3每月自動我怎麼能寫一個腳本這樣做清理系統在Linux

謝謝你

+0

手動?嘗試一個實用程序http://bleachbit.sourceforge.net/ – Coffee 2012-03-26 23:18:45

+1

是的,我想寫一個bash shell來做到這一點 – 2012-03-26 23:26:37

回答

4

標準logrotate(8)工具可能是你最好的出發點。

配置文件/etc/logrotate.conf定義了一些默認設置,包括每日,每週,每月輪換,創建新的日誌文件時使用的保持,權限旋轉數(我的系統上wtmpbtmp;或許在其他系統也utmp) 。它還可以定義一個目錄來讀取配置文件 - 這使得發行版可以更輕鬆地將包文件與循環文件打包在一起。

只需將rotate 4更改爲rotate 2即可將所需文件數減半。編輯/etc/logrotate.d/中的文件,如果其中任何一個指定了它們自己的rotate限制。

1

你不必自己編寫一個bash腳本來做到這一點。所有的Linux環境都與一個叫克朗工具,它允許你做安排命令,腳本等

大家都該頁面http://www.adminschoice.com/crontab-quick-reference

刪除所有日誌在此說明文件每3個月會爲例子可能

sudo crontab -e 

,然後加入線

* * * 1,4,7,10 * rm /var/log/*.{1,2,3,4} 

希望它:通過打開用戶的Cron文件來實現幫助。

+1

刪除所有的日誌,而不僅僅是舊的日誌是有點嚴厲。 – sarnold 2012-03-26 23:43:03

+0

謝謝你指出。不過,你的答案可能會更好。如果有用於管理日誌的專用工具,則應該使用它。 – nilewapp 2012-03-26 23:55:55

+0

這沒有工作,它給了我一個錯誤,說認證失敗,當我寫ayoya @ ubuntu:〜$ crontab -e ayoya沒有crontab爲什麼會這樣? – 2012-03-26 23:57:59