您的位置:首页 > 其它

磁盘给占满的奇怪现象

2011-02-14 14:09 204 查看
有时我们会看到df和du的结果有比较大的差异,这个现象可能由以下两个原因造成:

对正在被某进程打开的文件执行了删除操作,在这个进程关闭文件或者退出之前,df的结果还会包括这个被删除的文件,而du不会包括,如果被删除的文件很大,那么这个差异就很明显。

由于分区A上的某个目录dir上挂载了其他文件系统,而隐藏了原来分区A中dir这棵子树中的文件,造成的结果是,df会统计分区A上的磁盘使用情况,包
括被隐藏的部分,而du不会包括被隐藏的部分,却会包括这个目录上挂载的文件系统的空间(du命令的-x选项可以让它只统计一个文件系统内各文件的磁盘使
用情况)。这样就会造成不一致。





发生此现象在于我在定时任务中增添删除tomcat产生的日志,由于日志都比较大,当运行删除日志文件的时候,该文件还在运行增加,写的操作,所以就会像上面所提的现象 。我的tomcat是放在/home目录下的,使用df命令,/home目录显示已使用100%,但我的/home目录有9G,而我使用du -sh ./*查看/home目录下所有文件的占用空间情况,发现所有加起来都不过1G的空间,到底为什么,一直没有发现。后来我重启了tomcat之后,就发现/home目录空间已占用马上降到4%。所以对这诡异情况很不解,今天上班问了运维组的同事,才明白。所以马上撤消有造成此情况的根原。

find /home/tomcat/logs -type f -mtime 0 -exec rm -f {} /; 改为



find /home/tomcat/logs -type f -mtime 1 -exec rm -f {} /;





以后要删除文件得小心点,可以先使用命令清除,类似:>/home/tomcat/logs/catalina.out
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: