• inode占满导致No space left on device inode快速解决方法


    暂未发现其他比我这个更快的方法。
    因为其他方法会展示那个非常卡的目录,导致效率极低。而我这个方法不会去展示那个目录。

    查找占用的目录

    find / -type d -size +1M -maxdepth 3 -exec ls -lhd {} ;
    
    解析:
    -type d:只查找目录
    -size +1M:对于目录来讲,ls -lh显示的是该目录下inode数据表的大小。(目录本质上就是一个存储本目录中所有文件和文件夹的inode表单)
        据朋友反馈,腾讯面试Linux会问到这个问题,ls -lh目录大小是指的什么?
    -maxdepth 3:查找目录深度,如果2层找不到,就找第三层,第四层,直到找到为止。
    -exec ls -lhd {}:找到后用ls -lhd显示出来,不要忘记加-d,不然光光显示所有文件都会被卡死掉。
    

    删除文件

    方式1:rm -rf 目录
    方式2:find 目录 | xargs rm -rf
    

    警告、警告、警告

    千万别试着去ls或者TAB键补全,以及其他操作该目录的命令。
    因为文件太多展示会直接卡死你的终端,此时还是断开重连吧。

    更新(20210302)

    此方式仅适用于一个目录超多的文件(或目录,不涉及多级)
    -size +20k,一般目录都是4k,基本大于20k的基本都是文件很多(文件越多,目录就越大)

  • 相关阅读:
    mp4v2 基本知识
    iperf3.0 hisi uclib 交叉编译
    几个性能测试工具
    单元测试和测试驱动开发的一些常见问题总结
    线程上下文切换的性能损耗测试
    TDD中的单元测试写多少才够?
    AOP学习总结
    ATDD和TDD的区别是什么?
    [转帖]双剑合璧:CPU+GPU异构计算完全解析
    推荐《程序员的四种类型》
  • 原文地址:https://www.cnblogs.com/cishi/p/14325206.html
Copyright © 2020-2023  润新知