1. 程式人生 > 其它 >/var/log/maillog日誌太大佔滿/var空間如何清理

/var/log/maillog日誌太大佔滿/var空間如何清理

一、情景描述

節點磁碟空間告警,使用df -h檢視發現是/var盤滿了,cd進入/var目錄下,du -sch log/ 發現是log目錄佔用空間大,cd切換到log目錄下,du -dh *檢視是因為maillog日誌太大導致的,故需要清理maillog日誌。

二、處理過程

我是想將maillog分割成幾個小檔案,再刪除很久之前的資料,但是/var空間滿了,我就將maillog移動到/tmp目錄下進行分割。

①mv /var/log/maillog /tmp

②split -b 500M /tmp/maillog

分割完成後我就將/var/log/maillog檔案和/tmp/maillog刪除了,想要將分割好的小檔案移動到/var/log下,但是還是提示沒有空間,使用df -h檢視發現/var使用率100%了,但是在/var下的各個目錄都很小,然後檢視delete程序。

③lsof | grep delete 找到了刪除/var/log/maillog的程序。

④kill -9 PID 刪除對應的程序。

至此空間告警恢復,再將之前分割好的小檔案移動到/var/log下即可。

三、補充清空日誌方法

查詢開啟/var/log/messages檔案的程序的程序ID(PID):

lsof | grep messages

得到輸出:

COMMAND    PID USER   FD   TYPE DEVICE   SIZE/OFF NODE NAME

rsyslogd  1455 root    4w   REG    8,6 1299113404 2686 messages

abrt-dump 1932 root    4r   REG    8,6 1299113404 2686 messages

結束生成messages的程序:

kill -9 1455

kill -9 1932

清空日誌並重啟:

cat /dev/null > /var/log/messages

reboot