log文件过大

使用vesta管理vps时,有时候会出现服务器无响应,网页打不开的情况,此时重启apache或许可以短时间恢复正常,但原因可能在于log文件过大占用系统空间导致无法访问。
那么问题来了,如何在SSH查看文件大小?
显示当前目录所有文件大小的命令

ls -lht

df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。du可以查看文件及文件夹的大小。两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。


cd /
df -h
du -h --max-depth=1 /var/logs/
du -h --max-depth=1 /var/logs/*
du -s * | sort -nr | head

du 统计文件大小相加
df 统计数据块使用情况

如果有一个进程在打开一个大文件的时候,这个大文件直接被rm 或者mv掉,则du会更新统计数值,df不会更新统计数值,还是认为空间没有释放。直到这个打开大文件的进程被Kill掉。

如此一来在定期删除 /var/spool/clientmqueue下面的文件时,如果没有杀掉其进程,那么空间一直没有释放。

使用下面的命令杀掉进程之后,系统恢复。

fuser -u /var/spool/clientmqueue

关于ubuntu清理系统垃圾可以看这里

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据