美文网首页
【Linux-运维】已删除文件占用磁盘

【Linux-运维】已删除文件占用磁盘

作者: blue_smile | 来源:发表于2017-09-18 19:34 被阅读0次

    今天遇到一个已删除文件占用磁盘的情况,这里记录简单的分析和处理流程

    背景:
    1、接收到磁盘告警后,用df -h
    查看,磁盘的使用率是93%。 2、使用du -h --max-depth=1
    查看高负载磁盘时,各文件占用都不是很高。
    问题:
    df和du的执行结果不一致,无法定位到大文件路径并清理文件
    问题分析:
    初步怀疑有进程占用已经被删除的大文件,导致文件无法被释放
    具体原因:
    Linux下的文件,只有在引用数为0的情况下才会真正被删除掉,之前所占用的空间是不会被释放的。 如果存在文件引用,系统会将该文件标记为已删除,在引用此文件的进程都关闭时(文件引用数为0时),最终删除文件,释放空间资源。
    解决方案:
    1、【找出被删除的占用文件】lsof -n | grep grep deleted
    2、【释放被占用空间】使用kill pid
    或kill -9 pid
    杀掉进程后,再重启服务
    总结:
    这里可以看出,df和du的执行结果是有区别的,那这两个命令的执行流程如何?是什么导致输出结果不同,【Linux-运维】df和du的命令区分

    相关文章

      网友评论

          本文标题:【Linux-运维】已删除文件占用磁盘

          本文链接:https://www.haomeiwen.com/subject/zcgbsxtx.html