美文网首页
磁盘 100 %

磁盘 100 %

作者: beer5214 | 来源:发表于2019-08-16 22:28 被阅读0次

    记一次磁盘 100 % 的问题解决。(ps: 可以直接参考:https://scoutapm.com/blog/understanding-disk-inodes

    发现

    • tab 自动补全不好用

    使用 tab 去自动补全的时候,出现下面的提示:

    cannot create temp file for here-document: No space left on device
    

    重点是: No space left on device

    • 上传 jar 包失败

    解决

    • df -h 查看磁盘信息(-h 人性化输出)
    输入图片说明

    /dev/sda2 磁盘使用率 100%

    • find / -size +100M -printf (查找大文件)
    输入图片说明
    • ll -h (cd 到,刚刚的大文件目录)
    输入图片说明

    可以看到 一个日志文件达到了 80G

    • tail -n 50 log.log(查看最后50行)
    输入图片说明

    发现日期都是历史的(两月前的)

    • ps -ef | grep financial(financial 为 此日志文件的输入来源)
    输入图片说明

    没找到(这个项目已经早停掉了)

    • rm log.log (确定当前日志文件没有用后,在执行删除,否则先备份)
    输入图片说明
    • df -h (再次查看磁盘使用情况,恢复正常)
    输入图片说明
    • end

    模拟一个实际问题

    如果这个文件没有被占用,则使用上述步骤,完美解决。但是,如果一个文件被占用的情况下,会发现 执行 rm 之后,ll 查看文件是消失了,但是 df 查看磁盘并么有恢复正常。
    下面来模拟一下。

    • 写一个死循环(python while)
    输入图片说明
    • 执行
    输入图片说明
    • 多次查看文件大小 (111.log 文件,是在不断增加的)
    输入图片说明
    • rm 并 ls 查看,文件消失
    输入图片说明 输入图片说明
    • 使用 df 查看磁盘使用率(删除前后对比,发现并没有变化)
    删除之前的 log 文件 删除之后的 log 文件
    • lsof | grep deleted
    输入图片说明 输入图片说明

    当前文件的状态是 deleted ,并没有从磁盘删除,被占用状态。

    • kill 之后,恢复正常 (之前是 25%,删除之后是23%,日志文件大小 2G 多 )
    输入图片说明

    相关文章

      网友评论

          本文标题:磁盘 100 %

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