在Linux下如何清除系統(tǒng)日志
舉個(gè)例子,有59個(gè)日志,從aa20110101到za20110228,如果想刪除1月份的日志,命令可以寫成 rm *201101*。
其實(shí)沒(méi)有必要寫shell腳本,簡(jiǎn)單一句話放在系統(tǒng)定時(shí)任務(wù)里就行了。比如你的日志文件名叫a.log。
積累了很多日志。你這樣一刪除,的,你幫他省事了,他也省事,一眼就看出有人進(jìn)來(lái)了。先不說(shuō)其他,用rm刪除就不可取,正確的刪除文件做法是用shred shred -n 31337 -z -u file_to_delete 這樣多次擦除才夠安全。
bdump目錄下有許多trace文件,如果不用的話,可以清理。oracle的log文件也在那個(gè)目錄下,如果大于1g也可以備份后清除。其它的如果有備份,archive日志,可用用rman定期清除過(guò)期的備份。這個(gè)最好不用手工。其它的就沒(méi)有了。
Linux定時(shí)刪除日志文件/文件夾
1、使用crontab命令生成定時(shí)任務(wù),每天shell腳本可以自動(dòng)進(jìn)行日志清理。為了避免手工刪除日志,考慮通過(guò)寫shell腳本來(lái)刪除30天以前的日志文件,然后使用crontab命令生成定時(shí)任務(wù),在每天早上0點(diǎn)1分調(diào)用上面的shell腳本進(jìn)行日志清理。
2、(1)、先查看歸檔日志路徑,確認(rèn)歸檔日志文件信息情況。
3、第一步:寫shell腳本find /home/logs/ -mtime +30 -name *.log -exec rm -rf {} \;腳本其實(shí)很簡(jiǎn)單,一行代碼就夠了,把這個(gè)代碼放在一個(gè)shell文件中,然后放在服務(wù)器的指定目錄下,等待java程序調(diào)用。
4、用cat刪除文件:但是我發(fā)現(xiàn)對(duì)于nohup的程序的日志,這樣是無(wú)效的。因?yàn)閚ohup的程序持續(xù)不斷地在讀寫日志文件,此時(shí)無(wú)法重定向,我試了幾次,日志文件都?jí)焊鶝](méi)動(dòng)。
5、其實(shí)沒(méi)有必要寫shell腳本,簡(jiǎn)單一句話放在系統(tǒng)定時(shí)任務(wù)里就行了。比如你的日志文件名叫a.log。
linux定時(shí)清理nohup命令下產(chǎn)生的日志
1、nohup命令的缺點(diǎn):日志文件文件越來(lái)越大,占內(nèi)存且查看麻煩。因?yàn)檫@個(gè)日志文件和程序是共生死的,因?yàn)橹灰绦蜻\(yùn)行起來(lái),就一直對(duì)log文件進(jìn)行讀寫,直接刪除XXX.log會(huì)導(dǎo)致程序也被結(jié)束了。
2、nohup(no hang up):可以讓程序不掛斷執(zhí)行。& :可以讓程序在后臺(tái)執(zhí)行?!?nohup.log”: 表示將日志輸出到nohup.log文件上。2&1:表示將正確日志、錯(cuò)誤日志都輸出到正確日志指定的文件(nohup.log文件)上。
3、(1)、先查看歸檔日志路徑,確認(rèn)歸檔日志文件信息情況。
4、linux是一個(gè)很能自動(dòng)產(chǎn)生文件的系統(tǒng),日志、郵件、備份等。雖然現(xiàn)在硬盤廉價(jià),我們可以有很多硬盤空間供這些文件浪費(fèi),讓系統(tǒng)定時(shí)清理一些不需要的文件很有一種爽快的事情。
linux日志清理腳本清理不掉
將/opt/soft/log/目錄下所有7天前帶.log的文件刪除。
第一步:寫shell腳本find /home/logs/ -mtime +30 -name *.log -exec rm -rf {} \;腳本其實(shí)很簡(jiǎn)單,一行代碼就夠了,把這個(gè)代碼放在一個(gè)shell文件中,然后放在服務(wù)器的指定目錄下,等待java程序調(diào)用。
打開(kāi)終端:在Linux系統(tǒng)中,可以通過(guò)打開(kāi)終端來(lái)執(zhí)行命令。切換到root用戶:清除kern.log文件需要root權(quán)限,因此需要切換到root用戶。進(jìn)入日志文件目錄:kern.log文件通常位于/var/log目錄下,因此需要進(jìn)入該目錄。