我们的 Ubuntu 服务器上的根分区刚刚被填满,Web 门户不再工作。
我尝试找到大文件并发现:
/var/log$ du -h --max-depth=1
3.6M ./apache2
12K ./fsck
1.2M ./mysql
4.0K ./news
51G ./rgc
etc.
经过仔细检查,我发现:
/var/log/rgc$ ls -l
total 52601768
-rw-rw-rw- 1 root root 53811597822 2016-01-07 10:01 main.log
有谁知道 main.log 会变得这么大以及为什么它被写入文件夹 rgc 的原因吗?
根据 ljazKhan 的建议,我尝试了 lsof
ubuntu@x:/var/log/rgc$ ls -l
total 75884
-rw-rw-rw- 1 root root 77620032 2016-01-07 11:46 main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ lsof | grep main.log
ubuntu@x:/var/log/rgc$ ls -l
total 76360
-rw-rw-rw- 1 root root 78107085 2016-01-07 11:47 main.log
如您所见,文件已更新,但我从未看到它打开。
我不明白为什么 lsof 没有显示任何内容,但它是记录的异常错误。
我将遵循 ljazKhan 的建议,直到问题得到根本原因为止。
答案1
可能您没有此文件的任何日志轮换。您应该根据您的要求清除此文件,可能是每天、每周、每月。
cat /dev/null > /var/log/.rgc/main.log
还 ,
执行lsof | grep main.log
查看哪个进程正在生成它。